diff --git a/src/alien.c b/src/alien.c index a1e12e8..21d2331 100644 --- a/src/alien.c +++ b/src/alien.c @@ -62,7 +62,7 @@ static int alien_getFreeIndex() return -1; } -static void alien_nerf(int index) +void alien_nerf(int index) { if (game.difficulty == DIFFICULTY_SUPEREASY) { @@ -1087,7 +1087,8 @@ void aliens_init() if (aliens[i].classDef == CD_CLOAKFIGHTER) { aliens[i].active = 0; - aliens[i].maxShield = aliens[i].shield = 400; + aliens[i].maxShield = 400; + aliens[i].shield = 400; aliens[i].flags &= ~FL_RUNSAWAY; aliens[i].speed = 3; } @@ -1124,8 +1125,6 @@ void aliens_init() if (i == ALIEN_BOSS) aliens[i].chance[1] = 5; } - - alien_nerf(i); } } @@ -1361,11 +1360,11 @@ int alien_add() aliens[index].ammo[0] = 0; - alien_nerf(index); - if (game.area == MISN_ELLESH) aliens[index].flags |= FL_HASMINIMUMSPEED; + alien_nerf(index); + return 1; } diff --git a/src/alien.h b/src/alien.h index 29857b6..6b661ad 100644 --- a/src/alien.h +++ b/src/alien.h @@ -26,6 +26,7 @@ along with this program. If not, see . extern Object alien_defs[CD_MAX]; extern Object aliens[ALIEN_MAX]; +void alien_nerf(int index); void alien_defs_init(); void aliens_init(); int alien_add(); diff --git a/src/game.c b/src/game.c index b8e8039..1e4155f 100644 --- a/src/game.c +++ b/src/game.c @@ -2530,6 +2530,7 @@ int game_mainLoop() aliens[i].systemPower = aliens[i].maxShield; aliens[i].deathCounter = 0 - (aliens[i].maxShield * 3); LIMIT(aliens[i].deathCounter, -350, 0); + alien_nerf(i); } // Set target energy meter