Cleats really hold and push their pockets (t42 feedback)
Nothing carries the load on a slope but the ribs: each belt step every rib moves one face cell and pushes the grains in its way, the layer on the belt is only dragged by friction that gravity beats on 45 degrees, and heaped grains roll back. Ribs never pass through grains or into machines; a run that can't push stalls. The foot of an uphill run scoops the feed into pockets. Ribs drawn as rubber bars in both looks. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
+8
-6
@@ -292,9 +292,11 @@ function drawWorld() {
|
||||
const slopeDetail = slopeDetailAt(i, x, y, sm);
|
||||
if (slopeDetail) {
|
||||
const wave = slopeDetail === 2 && ((x + beltGrade(blockP[slopeWallOwner]) * y - slopePhase[slopeWallOwner]) & 3) < 2;
|
||||
r = slopeDetail === 1 ? 100 : wave ? 51 : 43;
|
||||
g = slopeDetail === 1 ? 104 : wave ? 55 : 47;
|
||||
b = slopeDetail === 1 ? 112 : wave ? 63 : 55;
|
||||
// ribs: light rubber with a pale cap; the far wall behind them: muted, corrugated rubber
|
||||
const cap = slopeDetail === 1 && slopeWallOwner >= 0 && !cleatMask[i - W + beltGrade(blockP[slopeWallOwner])];
|
||||
r = slopeDetail === 1 ? (cap ? 178 : 146) : wave ? 64 : 56;
|
||||
g = slopeDetail === 1 ? (cap ? 182 : 150) : wave ? 68 : 60;
|
||||
b = slopeDetail === 1 ? (cap ? 190 : 158) : wave ? 76 : 68;
|
||||
}
|
||||
// incandescence
|
||||
if (T > 450 && m !== EMPTY && incand) {
|
||||
@@ -346,11 +348,11 @@ function drawWorld() {
|
||||
((y - ((sb / BW) | 0) * BS + 8) << 16) | ((x - (sb % BW) * BS + 8) << 8);
|
||||
if (slopeArt) { r = fm ? COLR[fm] : 0; g = fm ? COLG[fm] : 0; b = fm ? COLB[fm] : 0; }
|
||||
}
|
||||
if (slopeDetail === 1) cl = 4;
|
||||
else if (slopeDetail === 2) {
|
||||
if (slopeDetail && slopeWallOwner >= 0) {
|
||||
// ribs and the far wall are both drawn by the wall shader, ribs from the same phase as the simulation
|
||||
const wb = slopeWallOwner;
|
||||
cl = beltGrade(blockP[wb]) < 0 ? 31 : 32;
|
||||
tpx[row + bx] = ((128 | slopePhase[wb] | ((slopeBeltJoins[wb] & 12) << 1)) << 24) | cl |
|
||||
tpx[row + bx] = ((128 | slopePhase[wb] | ((slopeBeltJoins[wb] & 12) << 1) | (blockV[wb] & 1 ? 32 : 0)) << 24) | cl |
|
||||
((y - ((wb / BW) | 0) * BS + 8) << 16) | ((x - wb % BW * BS + 8) << 8);
|
||||
}
|
||||
top = cl << 24;
|
||||
|
||||
Reference in New Issue
Block a user