engine-c: Survivor forward HQ + faction BT_BASE identity in SHOT
Forward twin CC near clash, stronger hx camera weight, Survivors corner-tower mast vs Evolved organic lobes in draw_bld/sprites.
This commit is contained in:
parent
41d0b89948
commit
9cc0aec229
5 changed files with 107 additions and 31 deletions
|
|
@ -363,20 +363,42 @@ SDL_Texture *sprites_make_bld(SDL_Renderer *r, BuildingType t, Faction f) {
|
|||
|
||||
switch (t) {
|
||||
case BT_BASE:
|
||||
/* multi-wing HQ: side wings + centre block + dome + mast (parity draw_bld) */
|
||||
fill_rect(s, 4, 18, 18, 28, ok, og, ob, 255);
|
||||
fill_rect(s, 6, 20, 14, 24, base.r, base.g, base.b, 255);
|
||||
fill_rect(s, W - 22, 18, 18, 28, ok, og, ob, 255);
|
||||
fill_rect(s, W - 20, 20, 14, 24, base.r, base.g, base.b, 255);
|
||||
fill_rect(s, 16, 10, W - 32, H - 20, ok, og, ob, 255);
|
||||
fill_rect(s, 18, 12, W - 36, H - 24, base.r, base.g, base.b, 255);
|
||||
fill_rect(s, 20, 14, W - 40, 8, lite.r, lite.g, lite.b, 255);
|
||||
disc(s, W/2, H/2 - 2, 12, ok, og, ob, 255);
|
||||
disc(s, W/2, H/2 - 2, 10, lite.r, lite.g, lite.b, 255);
|
||||
disc(s, W/2, H/2 - 2, 5, 255, 250, 180, 255);
|
||||
fill_rect(s, W/2 - 2, 4, 4, H/2 - 8, 200, 180, 60, 255);
|
||||
fill_rect(s, W/2 - 5, 4, 10, 3, 220, 210, 80, 255);
|
||||
fill_rect(s, W/2 - 6, H - 14, 12, 6, 40, 38, 34, 255);
|
||||
if (f == FACTION_EVOLVED) {
|
||||
/* organic lobes + dark central pit (parity draw_bld) */
|
||||
disc(s, 14, 18, 14, ok, og, ob, 255);
|
||||
disc(s, 14, 18, 12, base.r, base.g, base.b, 255);
|
||||
disc(s, W - 14, 18, 14, ok, og, ob, 255);
|
||||
disc(s, W - 14, 18, 12, base.r, base.g, base.b, 255);
|
||||
disc(s, 16, H - 16, 12, ok, og, ob, 255);
|
||||
disc(s, 16, H - 16, 10, base.r, base.g, base.b, 255);
|
||||
disc(s, W - 16, H - 16, 12, ok, og, ob, 255);
|
||||
disc(s, W - 16, H - 16, 10, base.r, base.g, base.b, 255);
|
||||
disc(s, W/2, H/2, 16, ok, og, ob, 255);
|
||||
disc(s, W/2, H/2, 14, base.r, base.g, base.b, 255);
|
||||
disc(s, W/2, H/2, 8, 28, 18, 22, 255);
|
||||
disc(s, W/2, H/2, 4, 60, 20, 30, 255);
|
||||
disc(s, W/2 - 10, 10, 5, lite.r, lite.g, lite.b, 255);
|
||||
disc(s, W/2 + 12, H - 12, 4, lite.r, lite.g, lite.b, 255);
|
||||
} else {
|
||||
/* Survivors: corner towers + central mast (parity draw_bld) */
|
||||
fill_rect(s, 4, 4, 14, 14, ok, og, ob, 255);
|
||||
fill_rect(s, 6, 6, 10, 10, base.r, base.g, base.b, 255);
|
||||
fill_rect(s, W - 18, 4, 14, 14, ok, og, ob, 255);
|
||||
fill_rect(s, W - 16, 6, 10, 10, base.r, base.g, base.b, 255);
|
||||
fill_rect(s, 4, H - 18, 14, 14, ok, og, ob, 255);
|
||||
fill_rect(s, 6, H - 16, 10, 10, base.r, base.g, base.b, 255);
|
||||
fill_rect(s, W - 18, H - 18, 14, 14, ok, og, ob, 255);
|
||||
fill_rect(s, W - 16, H - 16, 10, 10, base.r, base.g, base.b, 255);
|
||||
fill_rect(s, 14, 14, W - 28, H - 28, ok, og, ob, 255);
|
||||
fill_rect(s, 16, 16, W - 32, H - 32, base.r, base.g, base.b, 255);
|
||||
fill_rect(s, 18, 18, W - 36, 8, lite.r, lite.g, lite.b, 255);
|
||||
disc(s, W/2, H/2 - 2, 10, ok, og, ob, 255);
|
||||
disc(s, W/2, H/2 - 2, 8, lite.r, lite.g, lite.b, 255);
|
||||
disc(s, W/2, H/2 - 2, 4, 255, 250, 180, 255);
|
||||
fill_rect(s, W/2 - 2, 2, 4, H/2 - 6, 200, 180, 60, 255);
|
||||
fill_rect(s, W/2 - 6, 2, 12, 3, 220, 210, 80, 255);
|
||||
fill_rect(s, W/2 - 6, H - 12, 12, 6, 40, 38, 34, 255);
|
||||
}
|
||||
break;
|
||||
case BT_WARFACTORY:
|
||||
/* hangar shell + ridge vents + dark bay door */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue