engine-c: dense scrap oil-field + latticed derrick BT_REFINERY near clash

Forward HQ REFINERY + harvesters; denser clash scrap flecks; derrick/gantry/hopper silhouette in snapshot+sprites.
This commit is contained in:
local-model/engine-L2-grok-4.5 2026-09-19 16:53:12 +02:00
parent 4c5e34510c
commit 57f95fe3a0
No known key found for this signature in database
3 changed files with 83 additions and 29 deletions

View file

@ -604,19 +604,34 @@ static void draw_bld(Building *b, int sx, int sy) {
fill_rect(sx + 8, sy + H - 10, W - 16, 4, 50, 48, 42); /* ramp lip */
break;
case BT_REFINERY:
/* twin silos + pipe/conveyor slab + hopper */
disc(sx + 18, sy + H/2 - 2, 14, ok, og, ob);
disc(sx + 18, sy + H/2 - 2, 12, 200, 165, 85);
ring(sx + 18, sy + H/2 - 2, 9, 2, 90, 70, 45);
disc(sx + W - 18, sy + H/2 - 2, 14, ok, og, ob);
disc(sx + W - 18, sy + H/2 - 2, 12, 190, 155, 75);
ring(sx + W - 18, sy + H/2 - 2, 9, 2, 90, 70, 45);
fill_rect(sx + 14, sy + H - 16, W - 28, 10, ok, og, ob);
fill_rect(sx + 16, sy + H - 14, W - 32, 6, 140, 110, 55); /* conveyor */
line(sx + 18, sy + H/2 + 8, sx + W - 18, sy + H - 12, 110, 90, 50);
line(sx + 18, sy + H/2 + 10, sx + W - 18, sy + H - 10, 110, 90, 50);
fill_rect(sx + W/2 - 6, sy + 8, 12, 14, ok, og, ob);
fill_rect(sx + W/2 - 4, sy + 10, 8, 10, br, bg, bb); /* hopper */
/* latticed derrick tower + gantry + hopper + scrap tank (KKND oil-field read) */
fill_rect(sx + 6, sy + H - 14, W - 12, 10, ok, og, ob); /* slab */
fill_rect(sx + 8, sy + H - 12, W - 16, 6, 70, 62, 48);
/* derrick mast + lattice */
fill_rect(sx + W/2 - 3, sy + 4, 6, H - 18, ok, og, ob);
fill_rect(sx + W/2 - 2, sy + 5, 4, H - 20, 95, 85, 65);
line(sx + W/2 - 6, sy + 10, sx + W/2 + 6, sy + 22, 55, 48, 38);
line(sx + W/2 + 6, sy + 10, sx + W/2 - 6, sy + 22, 55, 48, 38);
line(sx + W/2 - 6, sy + 24, sx + W/2 + 6, sy + 36, 55, 48, 38);
line(sx + W/2 + 6, sy + 24, sx + W/2 - 6, sy + 36, 55, 48, 38);
line(sx + W/2 - 5, sy + 8, sx + W/2 - 5, sy + H - 16, 40, 36, 30);
line(sx + W/2 + 5, sy + 8, sx + W/2 + 5, sy + H - 16, 40, 36, 30);
fill_rect(sx + W/2 - 7, sy + 2, 14, 5, ok, og, ob); /* crown */
fill_rect(sx + W/2 - 5, sy + 3, 10, 3, 200, 170, 80); /* beacon */
/* gantry arm toward hopper */
fill_rect(sx + W/2 + 2, sy + 14, W/2 - 10, 4, ok, og, ob);
fill_rect(sx + W/2 + 3, sy + 15, W/2 - 12, 2, 120, 100, 60);
line(sx + W/2 + 4, sy + 18, sx + W - 12, sy + H - 22, 90, 75, 50);
/* hopper / processing shed */
fill_rect(sx + W - 22, sy + H - 30, 16, 16, ok, og, ob);
fill_rect(sx + W - 20, sy + H - 28, 12, 12, br, bg, bb);
fill_rect(sx + W - 18, sy + H - 26, 8, 6, 140, 110, 55);
fill_rect(sx + W - 16, sy + H - 18, 4, 4, 40, 36, 30); /* chute */
/* scrap tank (left) */
disc(sx + 14, sy + H - 20, 10, ok, og, ob);
disc(sx + 14, sy + H - 20, 8, 200, 165, 85);
ring(sx + 14, sy + H - 20, 5, 2, 90, 70, 45);
line(sx + 20, sy + H - 18, sx + W/2 - 4, sy + H - 14, 110, 90, 50);
break;
case BT_POWER:
/* cooling towers + reactor core + steam cross */