engine-c: denser POWER plant + MISSILE MLRS silhouettes
This commit is contained in:
parent
0271b297fc
commit
b50cc94c3e
2 changed files with 64 additions and 4 deletions
|
|
@ -520,9 +520,14 @@ static void draw_unit(Unit *u, int sx, int sy) {
|
|||
disc(LX(28,20), LY(28,20), SI(1), 255, 240, 160);
|
||||
break;
|
||||
case UT_MISSILE:
|
||||
/* MLRS box launcher + rails + warning stripes + hubbed chassis */
|
||||
/* MLRS box + rails + stripes + cab + pods + hydrau + hubs (KKND rocket truck) */
|
||||
fill_rect(sx-SI(12), sy-SI(3), SI(24), SI(12), ok, og, ob);
|
||||
fill_rect(sx-SI(10), sy-SI(1), SI(20), SI(8), br, bg, bb);
|
||||
fill_rect(LX(4,15)-SI(1), LY(4,15)-SI(1), SI(3), SI(5), 40, 38, 32); /* chassis rail L */
|
||||
fill_rect(LX(23,15)-SI(1), LY(23,15)-SI(1), SI(3), SI(5), 40, 38, 32); /* chassis rail R */
|
||||
fill_rect(LX(2,11)-SI(1), LY(2,11)-SI(1), SI(6), SI(7), ok, og, ob); /* cab outline */
|
||||
fill_rect(LX(3,12)-SI(1), LY(3,12)-SI(1), SI(4), SI(5), 55, 52, 45);
|
||||
fill_rect(LX(3,12)-SI(1), LY(3,12)-SI(1), SI(4), SI(2), 140, 180, 210); /* cab glass */
|
||||
fill_rect(LX(8,4)-SI(1), LY(8,4)-SI(2), SI(16), SI(10), ok, og, ob);
|
||||
fill_rect(LX(9,5)-SI(1), LY(9,5)-SI(1), SI(14), SI(8), 50, 48, 42);
|
||||
line(LX(10,6), LY(10,6), LX(22,6), LY(22,6), 90, 85, 70);
|
||||
|
|
@ -532,8 +537,16 @@ static void draw_unit(Unit *u, int sx, int sy) {
|
|||
fill_rect(LX(9,5)-SI(1), LY(9,5)-SI(1), SI(3), SI(8), 255, 200, 40);
|
||||
fill_rect(LX(12,5)-SI(1), LY(12,5)-SI(1), SI(2), SI(8), 30, 28, 24);
|
||||
fill_rect(LX(14,5)-SI(1), LY(14,5)-SI(1), SI(3), SI(8), 255, 200, 40);
|
||||
fill_rect(LX(17,5)-SI(1), LY(17,5)-SI(1), SI(2), SI(8), 30, 28, 24);
|
||||
fill_rect(LX(19,5)-SI(1), LY(19,5)-SI(1), SI(3), SI(8), 255, 200, 40);
|
||||
disc(LX(23,7), LY(23,7), SI(2), 255, 120, 80);
|
||||
disc(LX(23,10), LY(23,10), SI(2), 255, 140, 90);
|
||||
disc(LX(23,12), LY(23,12), SI(1), 255, 160, 100);
|
||||
fill_rect(LX(7,14)-SI(1), LY(7,14)-SI(1), SI(2), SI(4), 70, 65, 55); /* hydraulic L */
|
||||
fill_rect(LX(21,14)-SI(1), LY(21,14)-SI(1), SI(2), SI(4), 70, 65, 55); /* hydraulic R */
|
||||
line(LX(8,13), LY(8,13), LX(8,5), LY(8,5), 60, 55, 45); /* elevate strut */
|
||||
disc(LX(4,10), LY(4,10), SI(1), 200, 200, 80); /* antenna tip */
|
||||
line(LX(4,10), LY(4,10), LX(4,8), LY(4,8), 90, 90, 70);
|
||||
disc(LX(9,23), LY(9,23), SI(5), ok, og, ob);
|
||||
disc(LX(21,23), LY(21,23), SI(5), ok, og, ob);
|
||||
disc(LX(9,23), LY(9,23), SI(4), mr, mg, mb);
|
||||
|
|
@ -545,6 +558,7 @@ static void draw_unit(Unit *u, int sx, int sy) {
|
|||
line(LX(22,8), LY(22,8), LX(29,4), LY(29,4), 255, 80, 60);
|
||||
line(LX(22,10), LY(22,10), LX(29,6), LY(29,6), 255, 100, 70);
|
||||
disc(LX(29,5), LY(29,5), SI(2), 255, 140, 90);
|
||||
disc(LX(28,7), LY(28,7), SI(1), 255, 180, 100); /* exhaust spark */
|
||||
break;
|
||||
case UT_MEDIC:
|
||||
/* bumper + grille + lights + door/side + mirrors + exhaust + light-bar + stretcher/cross + hubs */
|
||||
|
|
@ -879,30 +893,46 @@ static void draw_bld(Building *b, int sx, int sy) {
|
|||
disc(sx + W/2 + 6, sy + H - 5, 3, 35, 28, 18);
|
||||
break;
|
||||
case BT_POWER:
|
||||
/* tall cooling towers + reactor block + steam plumes (KKND plant read) */
|
||||
/* cooling towers + reactor + steam + yard/cables/fins (KKND plant) */
|
||||
fill_rect(sx + 3, sy + H - 10, W - 6, 8, ok, og, ob);
|
||||
fill_rect(sx + 4, sy + H - 8, W - 8, 5, 55, 50, 42); /* pad */
|
||||
fill_rect(sx + 5, sy + H - 7, 2, 2, 35, 32, 28); /* pad bolt L */
|
||||
fill_rect(sx + W - 7, sy + H - 7, 2, 2, 35, 32, 28); /* pad bolt R */
|
||||
/* left cooling tower (taller cone) */
|
||||
fill_rect(sx + 4, sy + 8, 10, H - 18, ok, og, ob);
|
||||
fill_rect(sx + 5, sy + 9, 8, H - 20, 95, 145, 195);
|
||||
fill_rect(sx + 6, sy + 6, 6, 5, ok, og, ob);
|
||||
fill_rect(sx + 7, sy + 5, 4, 4, 70, 120, 170); /* rim */
|
||||
fill_rect(sx + 6, sy + 12, 1, H - 26, 70, 110, 150); /* cooling fin */
|
||||
fill_rect(sx + 11, sy + 12, 1, H - 26, 70, 110, 150);
|
||||
disc(sx + 9, sy + 4, 3, 240, 248, 255); /* steam puff */
|
||||
disc(sx + 7, sy + 2, 2, 220, 235, 250);
|
||||
disc(sx + 11, sy + 3, 2, 230, 240, 252);
|
||||
/* right cooling tower */
|
||||
fill_rect(sx + W - 14, sy + 10, 10, H - 20, ok, og, ob);
|
||||
fill_rect(sx + W - 13, sy + 11, 8, H - 22, 85, 135, 185);
|
||||
fill_rect(sx + W - 12, sy + 8, 6, 4, ok, og, ob);
|
||||
fill_rect(sx + W - 11, sy + 7, 4, 3, 65, 115, 165);
|
||||
fill_rect(sx + W - 12, sy + 14, 1, H - 28, 65, 105, 145);
|
||||
fill_rect(sx + W - 7, sy + 14, 1, H - 28, 65, 105, 145);
|
||||
disc(sx + W - 9, sy + 5, 3, 235, 245, 255);
|
||||
disc(sx + W - 7, sy + 3, 2, 210, 230, 250);
|
||||
disc(sx + W - 11, sy + 4, 2, 225, 238, 250);
|
||||
/* central reactor block + glow */
|
||||
fill_rect(sx + W/2 - 5, sy + H/2 - 4, 10, H/2 - 2, ok, og, ob);
|
||||
fill_rect(sx + W/2 - 4, sy + H/2 - 2, 8, H/2 - 6, 55, 95, 150);
|
||||
fill_rect(sx + W/2 - 3, sy + H/2, 2, 3, 255, 200, 40); /* warn stripe */
|
||||
disc(sx + W/2, sy + H/2 + 2, 4, 120, 200, 255);
|
||||
disc(sx + W/2, sy + H/2 + 2, 2, 250, 252, 255);
|
||||
line(sx + W/2, sy + 8, sx + W/2, sy + H - 10, 200, 230, 250);
|
||||
line(sx + 8, sy + H/2 + 2, sx + W - 8, sy + H/2 + 2, 180, 220, 245);
|
||||
/* switchyard box + cable runs */
|
||||
fill_rect(sx + W/2 - 8, sy + H - 14, 6, 5, ok, og, ob);
|
||||
fill_rect(sx + W/2 - 7, sy + H - 13, 4, 3, 45, 42, 36);
|
||||
line(sx + W/2 - 5, sy + H - 14, sx + W/2 - 5, sy + H/2 + 6, 90, 85, 70);
|
||||
line(sx + W/2 + 4, sy + H - 12, sx + W - 10, sy + H/2 + 4, 80, 75, 60);
|
||||
fill_rect(sx + 2, sy + H - 12, 2, 4, 50, 48, 40); /* fence post L */
|
||||
fill_rect(sx + W - 4, sy + H - 12, 2, 4, 50, 48, 40); /* fence post R */
|
||||
break;
|
||||
case BT_TURRET:
|
||||
/* armored bunker + ringed cupola + thick barrel (KKND turret read) */
|
||||
|
|
|
|||
|
|
@ -429,9 +429,14 @@ SDL_Texture *sprites_make_unit(SDL_Renderer *r, UnitType t, Faction f) {
|
|||
disc(s, 28, 20, 1, 255, 240, 160, 255);
|
||||
break;
|
||||
case UT_MISSILE:
|
||||
/* MLRS box launcher + rails + warning stripes + hubbed chassis */
|
||||
/* MLRS box + rails + stripes + cab + pods + hydrau + hubs (KKND rocket truck) */
|
||||
fill_rect(s, 3, 12, 24, 12, ok, og, ob, 255);
|
||||
fill_rect(s, 5, 14, 20, 8, base.r, base.g, base.b, 255);
|
||||
fill_rect(s, 4, 15, 3, 5, 40, 38, 32, 255); /* chassis rail L */
|
||||
fill_rect(s, 23, 15, 3, 5, 40, 38, 32, 255); /* chassis rail R */
|
||||
fill_rect(s, 2, 11, 6, 7, ok, og, ob, 255); /* cab outline */
|
||||
fill_rect(s, 3, 12, 4, 5, 55, 52, 45, 255);
|
||||
fill_rect(s, 3, 12, 4, 2, 140, 180, 210, 255); /* cab glass */
|
||||
fill_rect(s, 8, 4, 16, 10, ok, og, ob, 255); /* box launcher */
|
||||
fill_rect(s, 9, 5, 14, 8, 50, 48, 42, 255);
|
||||
line(s, 10, 6, 22, 6, 90, 85, 70, 255); /* rails */
|
||||
|
|
@ -441,8 +446,16 @@ SDL_Texture *sprites_make_unit(SDL_Renderer *r, UnitType t, Faction f) {
|
|||
fill_rect(s, 9, 5, 3, 8, 255, 200, 40, 255); /* warning stripes */
|
||||
fill_rect(s, 12, 5, 2, 8, 30, 28, 24, 255);
|
||||
fill_rect(s, 14, 5, 3, 8, 255, 200, 40, 255);
|
||||
fill_rect(s, 17, 5, 2, 8, 30, 28, 24, 255);
|
||||
fill_rect(s, 19, 5, 3, 8, 255, 200, 40, 255);
|
||||
disc(s, 23, 7, 2, 255, 120, 80, 255); /* nose tips */
|
||||
disc(s, 23, 10, 2, 255, 140, 90, 255);
|
||||
disc(s, 23, 12, 1, 255, 160, 100, 255);
|
||||
fill_rect(s, 7, 14, 2, 4, 70, 65, 55, 255); /* hydraulic L */
|
||||
fill_rect(s, 21, 14, 2, 4, 70, 65, 55, 255); /* hydraulic R */
|
||||
line(s, 8, 13, 8, 5, 60, 55, 45, 255); /* elevate strut */
|
||||
disc(s, 4, 10, 1, 200, 200, 80, 255); /* antenna tip */
|
||||
line(s, 4, 10, 4, 8, 90, 90, 70, 255);
|
||||
disc(s, 9, 23, 5, ok, og, ob, 255);
|
||||
disc(s, 21, 23, 5, ok, og, ob, 255);
|
||||
disc(s, 9, 23, 4, tr, tg, tb, 255);
|
||||
|
|
@ -452,6 +465,7 @@ SDL_Texture *sprites_make_unit(SDL_Renderer *r, UnitType t, Faction f) {
|
|||
line(s, 22, 8, 29, 4, 255, 80, 60, 255);
|
||||
line(s, 22, 10, 29, 6, 255, 100, 70, 255);
|
||||
disc(s, 29, 5, 2, 255, 140, 90, 255);
|
||||
disc(s, 28, 7, 1, 255, 180, 100, 255); /* exhaust spark */
|
||||
break;
|
||||
case UT_MEDIC:
|
||||
/* bumper + grille + lights + door/side + mirrors + exhaust + light-bar + stretcher/cross + hubs */
|
||||
|
|
@ -685,30 +699,46 @@ SDL_Texture *sprites_make_bld(SDL_Renderer *r, BuildingType t, Faction f) {
|
|||
disc(s, W/2 + 6, H - 5, 3, 35, 28, 18, 255);
|
||||
break;
|
||||
case BT_POWER:
|
||||
/* tall cooling towers + reactor block + steam plumes (KKND plant read) */
|
||||
/* cooling towers + reactor + steam + yard/cables/fins (KKND plant) */
|
||||
fill_rect(s, 3, H - 10, W - 6, 8, ok, og, ob, 255);
|
||||
fill_rect(s, 4, H - 8, W - 8, 5, 55, 50, 42, 255); /* pad */
|
||||
fill_rect(s, 5, H - 7, 2, 2, 35, 32, 28, 255); /* pad bolt L */
|
||||
fill_rect(s, W - 7, H - 7, 2, 2, 35, 32, 28, 255); /* pad bolt R */
|
||||
/* left cooling tower (taller cone) */
|
||||
fill_rect(s, 4, 8, 10, H - 18, ok, og, ob, 255);
|
||||
fill_rect(s, 5, 9, 8, H - 20, 95, 145, 195, 255);
|
||||
fill_rect(s, 6, 6, 6, 5, ok, og, ob, 255);
|
||||
fill_rect(s, 7, 5, 4, 4, 70, 120, 170, 255); /* rim */
|
||||
fill_rect(s, 6, 12, 1, H - 26, 70, 110, 150, 255); /* cooling fin */
|
||||
fill_rect(s, 11, 12, 1, H - 26, 70, 110, 150, 255);
|
||||
disc(s, 9, 4, 3, 240, 248, 255, 255); /* steam puff */
|
||||
disc(s, 7, 2, 2, 220, 235, 250, 255);
|
||||
disc(s, 11, 3, 2, 230, 240, 252, 255);
|
||||
/* right cooling tower */
|
||||
fill_rect(s, W - 14, 10, 10, H - 20, ok, og, ob, 255);
|
||||
fill_rect(s, W - 13, 11, 8, H - 22, 85, 135, 185, 255);
|
||||
fill_rect(s, W - 12, 8, 6, 4, ok, og, ob, 255);
|
||||
fill_rect(s, W - 11, 7, 4, 3, 65, 115, 165, 255);
|
||||
fill_rect(s, W - 12, 14, 1, H - 28, 65, 105, 145, 255);
|
||||
fill_rect(s, W - 7, 14, 1, H - 28, 65, 105, 145, 255);
|
||||
disc(s, W - 9, 5, 3, 235, 245, 255, 255);
|
||||
disc(s, W - 7, 3, 2, 210, 230, 250, 255);
|
||||
disc(s, W - 11, 4, 2, 225, 238, 250, 255);
|
||||
/* central reactor block + glow */
|
||||
fill_rect(s, W/2 - 5, H/2 - 4, 10, H/2 - 2, ok, og, ob, 255);
|
||||
fill_rect(s, W/2 - 4, H/2 - 2, 8, H/2 - 6, 55, 95, 150, 255);
|
||||
fill_rect(s, W/2 - 3, H/2, 2, 3, 255, 200, 40, 255); /* warn stripe */
|
||||
disc(s, W/2, H/2 + 2, 4, 120, 200, 255, 255);
|
||||
disc(s, W/2, H/2 + 2, 2, 250, 252, 255, 255);
|
||||
line(s, W/2, 8, W/2, H - 10, 200, 230, 250, 255);
|
||||
line(s, 8, H/2 + 2, W - 8, H/2 + 2, 180, 220, 245, 255);
|
||||
/* switchyard box + cable runs */
|
||||
fill_rect(s, W/2 - 8, H - 14, 6, 5, ok, og, ob, 255);
|
||||
fill_rect(s, W/2 - 7, H - 13, 4, 3, 45, 42, 36, 255);
|
||||
line(s, W/2 - 5, H - 14, W/2 - 5, H/2 + 6, 90, 85, 70, 255);
|
||||
line(s, W/2 + 4, H - 12, W - 10, H/2 + 4, 80, 75, 60, 255);
|
||||
fill_rect(s, 2, H - 12, 2, 4, 50, 48, 40, 255); /* fence post L */
|
||||
fill_rect(s, W - 4, H - 12, 2, 4, 50, 48, 40, 255); /* fence post R */
|
||||
break;
|
||||
case BT_TURRET:
|
||||
/* armored bunker + ringed cupola + thick barrel (KKND turret read) */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue