From 16473a715f1c3ee5a6572651b1bfe65da3849f27 Mon Sep 17 00:00:00 2001 From: onpon4 Date: Sun, 3 Jan 2016 14:14:31 -0500 Subject: [PATCH] Moved alien definitions from ".dat" files to alien.cpp. Like "scripts", these definitions in text files make absolutely no sense. They are completely unreadable, and Starfighter's engine is inflexible anyway. --- data/aliens0.dat | 2 - data/aliens11.dat | 10 -- data/aliens13.dat | 2 - data/aliens14.dat | 8 -- data/aliens16.dat | 5 - data/aliens17.dat | 7 - data/aliens18.dat | 2 - data/aliens19.dat | 8 -- data/aliens2.dat | 7 - data/aliens20.dat | 7 - data/aliens21.dat | 4 - data/aliens22.dat | 7 - data/aliens23.dat | 6 - data/aliens25.dat | 2 - data/aliens26.dat | 2 - data/aliens3.dat | 6 - data/aliens4.dat | 10 -- data/aliens5.dat | 4 - data/aliens7.dat | 2 - data/aliens8.dat | 2 - data/aliens9.dat | 6 - src/alien.cpp | 348 ++++++++++++++++++++++++++++++++-------------- src/event.cpp | 8 +- src/event.h | 2 +- src/game.cpp | 2 +- 25 files changed, 249 insertions(+), 220 deletions(-) delete mode 100644 data/aliens0.dat delete mode 100644 data/aliens11.dat delete mode 100644 data/aliens13.dat delete mode 100644 data/aliens14.dat delete mode 100644 data/aliens16.dat delete mode 100644 data/aliens17.dat delete mode 100644 data/aliens18.dat delete mode 100644 data/aliens19.dat delete mode 100644 data/aliens2.dat delete mode 100644 data/aliens20.dat delete mode 100644 data/aliens21.dat delete mode 100644 data/aliens22.dat delete mode 100644 data/aliens23.dat delete mode 100644 data/aliens25.dat delete mode 100644 data/aliens26.dat delete mode 100644 data/aliens3.dat delete mode 100644 data/aliens4.dat delete mode 100644 data/aliens5.dat delete mode 100644 data/aliens7.dat delete mode 100644 data/aliens8.dat delete mode 100644 data/aliens9.dat diff --git a/data/aliens0.dat b/data/aliens0.dat deleted file mode 100644 index ff59ce6..0000000 --- a/data/aliens0.dat +++ /dev/null @@ -1,2 +0,0 @@ -0 7 --1 diff --git a/data/aliens11.dat b/data/aliens11.dat deleted file mode 100644 index de4b8fe..0000000 --- a/data/aliens11.dat +++ /dev/null @@ -1,10 +0,0 @@ -14 15 -13 17 -12 18 -11 16 -10 19 -15 10 - -20 12 -21 12 --1 diff --git a/data/aliens13.dat b/data/aliens13.dat deleted file mode 100644 index dded96f..0000000 --- a/data/aliens13.dat +++ /dev/null @@ -1,2 +0,0 @@ -14 22 --1 diff --git a/data/aliens14.dat b/data/aliens14.dat deleted file mode 100644 index 7999c55..0000000 --- a/data/aliens14.dat +++ /dev/null @@ -1,8 +0,0 @@ -14 15 -13 17 -12 18 -11 16 -10 19 -19 29 -20 29 --1 diff --git a/data/aliens16.dat b/data/aliens16.dat deleted file mode 100644 index 9938270..0000000 --- a/data/aliens16.dat +++ /dev/null @@ -1,5 +0,0 @@ -10 21 -11 21 -12 21 -19 23 --1 diff --git a/data/aliens17.dat b/data/aliens17.dat deleted file mode 100644 index 7fc91a1..0000000 --- a/data/aliens17.dat +++ /dev/null @@ -1,7 +0,0 @@ -0 27 -1 27 -2 27 -3 27 -4 27 -14 24 --1 diff --git a/data/aliens18.dat b/data/aliens18.dat deleted file mode 100644 index 12f8a05..0000000 --- a/data/aliens18.dat +++ /dev/null @@ -1,2 +0,0 @@ -14 24 --1 diff --git a/data/aliens19.dat b/data/aliens19.dat deleted file mode 100644 index 5d3a477..0000000 --- a/data/aliens19.dat +++ /dev/null @@ -1,8 +0,0 @@ -10 31 -11 31 -12 31 -13 31 -14 30 -20 31 -21 31 --1 diff --git a/data/aliens2.dat b/data/aliens2.dat deleted file mode 100644 index d12520e..0000000 --- a/data/aliens2.dat +++ /dev/null @@ -1,7 +0,0 @@ -0 8 -1 8 -2 8 -3 8 -4 8 -5 8 --1 diff --git a/data/aliens20.dat b/data/aliens20.dat deleted file mode 100644 index a28e594..0000000 --- a/data/aliens20.dat +++ /dev/null @@ -1,7 +0,0 @@ -10 33 -11 33 -12 33 -13 33 -14 32 -20 33 --1 diff --git a/data/aliens21.dat b/data/aliens21.dat deleted file mode 100644 index 6156c6c..0000000 --- a/data/aliens21.dat +++ /dev/null @@ -1,4 +0,0 @@ -12 37 -13 38 -14 36 --1 diff --git a/data/aliens22.dat b/data/aliens22.dat deleted file mode 100644 index 56d2099..0000000 --- a/data/aliens22.dat +++ /dev/null @@ -1,7 +0,0 @@ -9 28 -10 28 -11 28 -12 28 -13 28 -14 28 --1 diff --git a/data/aliens23.dat b/data/aliens23.dat deleted file mode 100644 index 5284dbd..0000000 --- a/data/aliens23.dat +++ /dev/null @@ -1,6 +0,0 @@ -10 35 -11 35 -12 35 -13 35 -14 23 --1 diff --git a/data/aliens25.dat b/data/aliens25.dat deleted file mode 100644 index d5d45d4..0000000 --- a/data/aliens25.dat +++ /dev/null @@ -1,2 +0,0 @@ -15 10 --1 diff --git a/data/aliens26.dat b/data/aliens26.dat deleted file mode 100644 index d5d45d4..0000000 --- a/data/aliens26.dat +++ /dev/null @@ -1,2 +0,0 @@ -15 10 --1 diff --git a/data/aliens3.dat b/data/aliens3.dat deleted file mode 100644 index 569640d..0000000 --- a/data/aliens3.dat +++ /dev/null @@ -1,6 +0,0 @@ -0 1 -1 1 -2 1 -3 1 -4 1 --1 diff --git a/data/aliens4.dat b/data/aliens4.dat deleted file mode 100644 index 3c64cae..0000000 --- a/data/aliens4.dat +++ /dev/null @@ -1,10 +0,0 @@ -0 9 -1 9 -2 9 -3 9 -4 9 -5 9 -6 9 -7 9 -8 9 --1 diff --git a/data/aliens5.dat b/data/aliens5.dat deleted file mode 100644 index ac2fe0a..0000000 --- a/data/aliens5.dat +++ /dev/null @@ -1,4 +0,0 @@ -12 6 -13 5 -14 4 --1 diff --git a/data/aliens7.dat b/data/aliens7.dat deleted file mode 100644 index 682bc72..0000000 --- a/data/aliens7.dat +++ /dev/null @@ -1,2 +0,0 @@ -0 8 --1 diff --git a/data/aliens8.dat b/data/aliens8.dat deleted file mode 100644 index 4246b4d..0000000 --- a/data/aliens8.dat +++ /dev/null @@ -1,2 +0,0 @@ -19 13 --1 diff --git a/data/aliens9.dat b/data/aliens9.dat deleted file mode 100644 index 4d7d6d2..0000000 --- a/data/aliens9.dat +++ /dev/null @@ -1,6 +0,0 @@ -20 8 -21 8 -22 8 -23 8 -24 8 --1 diff --git a/src/alien.cpp b/src/alien.cpp index 725a29f..1bbc8da 100644 --- a/src/alien.cpp +++ b/src/alien.cpp @@ -1,7 +1,7 @@ /* Copyright (C) 2003 Parallel Realities Copyright (C) 2011, 2012 Guus Sliepen -Copyright (C) 2012, 2015 onpon4 +Copyright (C) 2012, 2015, 2016 onpon4 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License @@ -684,13 +684,12 @@ void alien_defs_init() void aliens_init() { - FILE *fp; - char string[255]; - int index; - int alienType; int placeAttempt; int barrierSpeed; + engine.targetIndex = -1; + barrierSpeed = 1; + for (int i = 0 ; i < ALIEN_MAX ; i++) { aliens[i].active = false; @@ -698,25 +697,166 @@ void aliens_init() aliens[i].flags = 0; } - engine.targetIndex = -1; - - strcpy(string, ""); - barrierSpeed = 1; - - sprintf(string, "data/aliens%d.dat", game.area); - fp = fopen(string, "rb"); - - if (fp != NULL) + switch (game.area) { - while (fscanf(fp, "%d %d ", &index, &alienType) == 2) + case MISN_START: + aliens[0] = alien_defs[CD_TRANSPORTSHIP]; + break; + + case MISN_CERADSE: + aliens[0] = alien_defs[CD_CARGOSHIP]; + aliens[1] = alien_defs[CD_CARGOSHIP]; + aliens[2] = alien_defs[CD_CARGOSHIP]; + aliens[3] = alien_defs[CD_CARGOSHIP]; + aliens[4] = alien_defs[CD_CARGOSHIP]; + aliens[5] = alien_defs[CD_CARGOSHIP]; + break; + + case MISN_HINSTAG: + aliens[0] = alien_defs[CD_MISSILEBOAT]; + aliens[1] = alien_defs[CD_MISSILEBOAT]; + aliens[2] = alien_defs[CD_MISSILEBOAT]; + aliens[3] = alien_defs[CD_MISSILEBOAT]; + aliens[4] = alien_defs[CD_MISSILEBOAT]; + break; + + case MISN_JOLDAR: + aliens[0] = alien_defs[CD_MINER]; + aliens[1] = alien_defs[CD_MINER]; + aliens[2] = alien_defs[CD_MINER]; + aliens[3] = alien_defs[CD_MINER]; + aliens[4] = alien_defs[CD_MINER]; + aliens[5] = alien_defs[CD_MINER]; + aliens[6] = alien_defs[CD_MINER]; + aliens[7] = alien_defs[CD_MINER]; + aliens[8] = alien_defs[CD_MINER]; + break; + + case MISN_MOEBO: + aliens[ALIEN_BOSS] = alien_defs[CD_FRIGATE]; + aliens[ALIEN_BOSS_PART1] = alien_defs[CD_FRIGATE_WING1]; + aliens[ALIEN_BOSS_PART2] = alien_defs[CD_FRIGATE_WING2]; + break; + + case MISN_NEROD: + aliens[0] = alien_defs[CD_CARGOSHIP]; + break; + + case MISN_ALLEZ: + aliens[ALIEN_GOODTRANSPORT] = alien_defs[CD_GOODTRANSPORT]; + break; + + case MISN_URUSOR: + aliens[20] = alien_defs[CD_CARGOSHIP]; + aliens[21] = alien_defs[CD_CARGOSHIP]; + aliens[22] = alien_defs[CD_CARGOSHIP]; + aliens[23] = alien_defs[CD_CARGOSHIP]; + aliens[24] = alien_defs[CD_CARGOSHIP]; + break; + + case MISN_ELAMALE: + aliens[ALIEN_BOSS] = alien_defs[CD_MINEBOSS]; + aliens[ALIEN_BOSS_PART1] = alien_defs[CD_BOSS2_WING1]; + aliens[ALIEN_BOSS_PART2] = alien_defs[CD_BOSS2_WING2]; + aliens[ALIEN_BOSS_PART3] = alien_defs[CD_BOSS2_WING3]; + aliens[ALIEN_BOSS_PART4] = alien_defs[CD_BOSS2_WING4]; + aliens[ALIEN_KLINE] = alien_defs[CD_KLINE]; + aliens[20] = alien_defs[CD_SLAVETRANSPORT]; + aliens[21] = alien_defs[CD_SLAVETRANSPORT]; + break; + + case MISN_ODEON: + aliens[ALIEN_BOSS] = alien_defs[CD_EVILURSULA]; + break; + + case MISN_FELLON: + aliens[ALIEN_BOSS] = alien_defs[CD_MINEBOSS]; + aliens[ALIEN_BOSS_PART1] = alien_defs[CD_BOSS2_WING1]; + aliens[ALIEN_BOSS_PART2] = alien_defs[CD_BOSS2_WING2]; + aliens[ALIEN_BOSS_PART3] = alien_defs[CD_BOSS2_WING3]; + aliens[ALIEN_BOSS_PART4] = alien_defs[CD_BOSS2_WING4]; + aliens[ALIEN_GOODTRANSPORT] = alien_defs[CD_REBELCARRIER]; + aliens[20] = alien_defs[CD_REBELCARRIER]; + break; + + case MISN_ALMARTHA: + aliens[ALIEN_BOSS_PART1] = alien_defs[CD_CLOAKFIGHTER]; + aliens[ALIEN_BOSS_PART2] = alien_defs[CD_CLOAKFIGHTER]; + aliens[ALIEN_BOSS_PART3] = alien_defs[CD_CLOAKFIGHTER]; + aliens[ALIEN_GOODTRANSPORT] = alien_defs[CD_KRASS]; + break; + + case MISN_POSWIC: + aliens[0] = alien_defs[CD_ESCORT]; + aliens[1] = alien_defs[CD_ESCORT]; + aliens[2] = alien_defs[CD_ESCORT]; + aliens[3] = alien_defs[CD_ESCORT]; + aliens[4] = alien_defs[CD_ESCORT]; + aliens[ALIEN_BOSS] = alien_defs[CD_EXEC]; + break; + + case MISN_ELLESH: + aliens[ALIEN_BOSS] = alien_defs[CD_EXEC]; + break; + + case MISN_PLUTO: + aliens[ALIEN_BOSS] = alien_defs[CD_PLUTOBOSS]; + aliens[ALIEN_BOSS_PART1] = alien_defs[CD_BARRIER]; + aliens[ALIEN_BOSS_PART2] = alien_defs[CD_BARRIER]; + aliens[ALIEN_BOSS_PART3] = alien_defs[CD_BARRIER]; + aliens[ALIEN_BOSS_PART4] = alien_defs[CD_BARRIER]; + aliens[20] = alien_defs[CD_BARRIER]; + aliens[21] = alien_defs[CD_BARRIER]; + break; + + case MISN_NEPTUNE: + aliens[ALIEN_BOSS] = alien_defs[CD_NEPTUNEBOSS]; + aliens[ALIEN_BOSS_PART1] = alien_defs[CD_MOBILESHIELD]; + aliens[ALIEN_BOSS_PART2] = alien_defs[CD_MOBILESHIELD]; + aliens[ALIEN_BOSS_PART3] = alien_defs[CD_MOBILESHIELD]; + aliens[ALIEN_BOSS_PART4] = alien_defs[CD_MOBILESHIELD]; + aliens[20] = alien_defs[CD_MOBILESHIELD]; + break; + + case MISN_URANUS: + aliens[ALIEN_BOSS] = alien_defs[CD_URANUSBOSS]; + aliens[ALIEN_BOSS_PART1] = alien_defs[CD_URANUSBOSSWING1]; + aliens[ALIEN_BOSS_PART2] = alien_defs[CD_URANUSBOSSWING2]; + break; + + case MISN_SATURN: + aliens[9] = alien_defs[CD_MOBILE_RAY]; + aliens[10] = alien_defs[CD_MOBILE_RAY]; + aliens[11] = alien_defs[CD_MOBILE_RAY]; + aliens[12] = alien_defs[CD_MOBILE_RAY]; + aliens[13] = alien_defs[CD_MOBILE_RAY]; + aliens[14] = alien_defs[CD_MOBILE_RAY]; + break; + + case MISN_JUPITER: + aliens[ALIEN_BOSS] = alien_defs[CD_KRASS]; + aliens[ALIEN_BOSS_PART1] = alien_defs[CD_FIREFLY]; + aliens[ALIEN_BOSS_PART2] = alien_defs[CD_FIREFLY]; + aliens[ALIEN_BOSS_PART3] = alien_defs[CD_FIREFLY]; + aliens[ALIEN_BOSS_PART4] = alien_defs[CD_FIREFLY]; + break; + + case MISN_EARTH: + case MISN_VENUS: + aliens[ALIEN_KLINE] = alien_defs[CD_KLINE]; + break; + } + + for (int i = 0 ; i < ALIEN_MAX ; i++) + { + if (aliens[i].shield != -1) { placeAttempt = 0; - aliens[index] = alien_defs[alienType]; - aliens[index].owner = &aliens[index]; - aliens[index].target = &aliens[index]; - aliens[index].face = rand() % 2; - aliens[index].active = true; + aliens[i].owner = &aliens[i]; + aliens[i].target = &aliens[i]; + aliens[i].face = rand() % 2; + aliens[i].active = true; /* we make 1000 attempts to place this enemy since it is required. If after @@ -728,7 +868,7 @@ void aliens_init() { placeAttempt++; - if (alien_place(&aliens[index])) + if (alien_place(&aliens[i])) break; if (placeAttempt > 1000) @@ -736,129 +876,127 @@ void aliens_init() } if (game.area == MISN_CERADSE) - cargo_add(&aliens[index], P_CARGO); + cargo_add(&aliens[i], P_CARGO); else if (game.area == MISN_NEROD) - cargo_add(&aliens[index], P_PHOEBE); + cargo_add(&aliens[i], P_PHOEBE); - if (index == ALIEN_KLINE) + if (i == ALIEN_KLINE) { aliens[ALIEN_KLINE].target = &player; } - if (aliens[index].classDef == CD_CLOAKFIGHTER) + if (aliens[i].classDef == CD_CLOAKFIGHTER) { - aliens[index].active = false; - aliens[index].maxShield = aliens[index].shield = 400; - aliens[index].flags &= ~FL_RUNSAWAY; - aliens[index].speed = 3; + aliens[i].active = false; + aliens[i].maxShield = aliens[i].shield = 400; + aliens[i].flags &= ~FL_RUNSAWAY; + aliens[i].speed = 3; } - if ((aliens[index].classDef == CD_MOBILE_RAY) && (index >= 11)) + if ((aliens[i].classDef == CD_MOBILE_RAY) && (i >= 11)) { - aliens[index].active = false; + aliens[i].active = false; } - if (aliens[index].classDef == CD_FIREFLY) + if (aliens[i].classDef == CD_FIREFLY) { - aliens[index].active = false; + aliens[i].active = false; } - if (aliens[index].classDef == CD_BARRIER) + if (aliens[i].classDef == CD_BARRIER) { - aliens[index].owner = &aliens[ALIEN_BOSS]; - aliens[index].speed = barrierSpeed; + aliens[i].owner = &aliens[ALIEN_BOSS]; + aliens[i].speed = barrierSpeed; barrierSpeed++; } if ((game.area == MISN_POSWIC) && - (aliens[index].classDef == CD_BOSS)) + (aliens[i].classDef == CD_BOSS)) { - aliens[index].imageIndex[1] = 29; - aliens[index].flags |= FL_IMMORTAL; + aliens[i].imageIndex[1] = 29; + aliens[i].flags |= FL_IMMORTAL; } if (game.area == MISN_ELLESH) - aliens[index].flags |= FL_HASMINIMUMSPEED; + aliens[i].flags |= FL_HASMINIMUMSPEED; if (game.area == MISN_JUPITER) { - aliens[index].flags = FL_WEAPCO; - if (index == ALIEN_BOSS) - aliens[index].chance[1] = 5; + aliens[i].flags = FL_WEAPCO; + if (i == ALIEN_BOSS) + aliens[i].chance[1] = 5; } } + } - fclose(fp); + if (game.area == MISN_MOEBO) + { + aliens[ALIEN_BOSS].target = &player; + aliens[ALIEN_BOSS].x = -screen->w / 2; + aliens[ALIEN_BOSS].y = screen->h / 2; - if (game.area == MISN_MOEBO) + aliens[ALIEN_BOSS_PART1].owner = &aliens[ALIEN_BOSS]; + aliens[ALIEN_BOSS_PART1].target = &player; + aliens[ALIEN_BOSS_PART1].dx = -25; + aliens[ALIEN_BOSS_PART1].dy = -21; + + aliens[ALIEN_BOSS_PART2].owner = &aliens[ALIEN_BOSS]; + aliens[ALIEN_BOSS_PART2].target = &player; + aliens[ALIEN_BOSS_PART2].dx = -20; + aliens[ALIEN_BOSS_PART2].dy = 37; + } + else if ((game.area == MISN_ELAMALE) || + (game.area == MISN_FELLON)) + { + aliens[ALIEN_BOSS].target = &player; + aliens[ALIEN_BOSS].x = -screen->w / 2; + aliens[ALIEN_BOSS].y = screen->h / 2; + + aliens[ALIEN_BOSS_PART1].owner = &aliens[ALIEN_BOSS_PART2]; + aliens[ALIEN_BOSS_PART1].target = &player; + aliens[ALIEN_BOSS_PART1].dx = -35; + aliens[ALIEN_BOSS_PART1].dy = -12; + + aliens[ALIEN_BOSS_PART2].owner = &aliens[ALIEN_BOSS]; + aliens[ALIEN_BOSS_PART2].target = &player; + aliens[ALIEN_BOSS_PART2].dx = 15; + aliens[ALIEN_BOSS_PART2].dy = -22; + + aliens[ALIEN_BOSS_PART3].owner = &aliens[ALIEN_BOSS]; + aliens[ALIEN_BOSS_PART3].target = &player; + aliens[ALIEN_BOSS_PART3].dx = 15; + aliens[ALIEN_BOSS_PART3].dy = 22; + + aliens[ALIEN_BOSS_PART4].owner = &aliens[ALIEN_BOSS_PART3]; + aliens[ALIEN_BOSS_PART4].target = &player; + aliens[ALIEN_BOSS_PART4].dx = -35; + aliens[ALIEN_BOSS_PART4].dy = 20; + + if (game.area == MISN_FELLON) { - aliens[ALIEN_BOSS].target = &player; - aliens[ALIEN_BOSS].x = -screen->w / 2; - aliens[ALIEN_BOSS].y = screen->h / 2; + aliens[ALIEN_BOSS].AIType = AI_EVASIVE; - aliens[ALIEN_BOSS_PART1].owner = &aliens[ALIEN_BOSS]; - aliens[ALIEN_BOSS_PART1].target = &player; - aliens[ALIEN_BOSS_PART1].dx = -25; - aliens[ALIEN_BOSS_PART1].dy = -21; - - aliens[ALIEN_BOSS_PART2].owner = &aliens[ALIEN_BOSS]; - aliens[ALIEN_BOSS_PART2].target = &player; - aliens[ALIEN_BOSS_PART2].dx = -20; - aliens[ALIEN_BOSS_PART2].dy = 37; - } - else if ((game.area == MISN_ELAMALE) || - (game.area == MISN_FELLON)) - { - aliens[ALIEN_BOSS].target = &player; - aliens[ALIEN_BOSS].x = -screen->w / 2; - aliens[ALIEN_BOSS].y = screen->h / 2; - - aliens[ALIEN_BOSS_PART1].owner = &aliens[ALIEN_BOSS]; - aliens[ALIEN_BOSS_PART1].target = &player; - aliens[ALIEN_BOSS_PART1].dx = 15; - aliens[ALIEN_BOSS_PART1].dy = -22; - - aliens[ALIEN_BOSS_PART2].owner = &aliens[ALIEN_BOSS]; - aliens[ALIEN_BOSS_PART2].target = &player; - aliens[ALIEN_BOSS_PART2].dx = 15; - aliens[ALIEN_BOSS_PART2].dy = 22; - - aliens[ALIEN_BOSS_PART3].owner = &aliens[ALIEN_BOSS_PART1]; - aliens[ALIEN_BOSS_PART3].target = &player; - aliens[ALIEN_BOSS_PART3].dx = -35; - aliens[ALIEN_BOSS_PART3].dy = -12; - - aliens[ALIEN_BOSS_PART4].owner = &aliens[ALIEN_BOSS_PART2]; - aliens[ALIEN_BOSS_PART4].target = &player; - aliens[ALIEN_BOSS_PART4].dx = -35; - aliens[ALIEN_BOSS_PART4].dy = 20; - - if (game.area == MISN_FELLON) + for (int i = 10 ; i < 15 ; i++) { - aliens[ALIEN_BOSS].AIType = AI_EVASIVE; + aliens[i].imageIndex[0] += 15; + aliens[i].imageIndex[1] += 15; - for (int i = 10 ; i < 15 ; i++) - { - aliens[i].imageIndex[0] += 15; - aliens[i].imageIndex[1] += 15; - - aliens[i].image[0] = shipShape[aliens[i].imageIndex[0]]; - aliens[i].image[1] = shipShape[aliens[i].imageIndex[1]]; - } + aliens[i].image[0] = shipShape[aliens[i].imageIndex[0]]; + aliens[i].image[1] = shipShape[aliens[i].imageIndex[1]]; } } - else if (game.area == MISN_URANUS) - { - aliens[ALIEN_BOSS].target = &player; - aliens[ALIEN_BOSS].x = -screen->w / 2; - aliens[ALIEN_BOSS].y = screen->h / 2; + } + else if (game.area == MISN_URANUS) + { + aliens[ALIEN_BOSS].target = &player; + aliens[ALIEN_BOSS].x = -screen->w / 2; + aliens[ALIEN_BOSS].y = screen->h / 2; - aliens[ALIEN_BOSS_PART1].owner = &aliens[ALIEN_BOSS]; - aliens[ALIEN_BOSS_PART1].dy = 20; + aliens[ALIEN_BOSS_PART1].owner = &aliens[ALIEN_BOSS]; + aliens[ALIEN_BOSS_PART1].dy = -16; - aliens[ALIEN_BOSS_PART2].owner = &aliens[ALIEN_BOSS]; - aliens[ALIEN_BOSS_PART2].dy = -16; - } + aliens[ALIEN_BOSS_PART2].owner = &aliens[ALIEN_BOSS]; + aliens[ALIEN_BOSS_PART2].dy = 20; } } diff --git a/src/event.cpp b/src/event.cpp index 815e2fb..10f1023 100644 --- a/src/event.cpp +++ b/src/event.cpp @@ -27,7 +27,7 @@ static const char *klineGreeting[] = { "Do you really think you can defeat us?!" }; -void event_set() +void events_init() { for (int i = 0 ; i < 20 ; i++) { @@ -202,11 +202,11 @@ void event_set() gameEvent[2].time = 60; gameEvent[2].face = FACE_KRASS; strcpy(gameEvent[2].message, "Hey, boy, we've got company! Looks like your friends didn't do a very good job after all!"); - gameEvent[2].entity = 10; + gameEvent[2].entity = ALIEN_BOSS_PART1; gameEvent[2].flag = -FL_ACTIVATE; gameEvent[3].time = 90; - gameEvent[3].entity = 11; + gameEvent[3].entity = ALIEN_BOSS_PART2; gameEvent[3].flag = -FL_ACTIVATE; gameEvent[4].time = 93; @@ -214,7 +214,7 @@ void event_set() strcpy(gameEvent[4].message, "Keep those things off my back or it'll cost you extra!!!"); gameEvent[5].time = 120; - gameEvent[5].entity = 12; + gameEvent[5].entity = ALIEN_BOSS_PART3; gameEvent[5].flag = -FL_ACTIVATE; gameEvent[6].time = 140; diff --git a/src/event.h b/src/event.h index 6996bd0..412d221 100644 --- a/src/event.h +++ b/src/event.h @@ -30,7 +30,7 @@ typedef struct Event_ { } Event; -void event_set(); +void events_init(); void event_check(); void event_sync(); diff --git a/src/game.cpp b/src/game.cpp index 7108604..ddc359d 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -2099,7 +2099,7 @@ int game_mainLoop() clearInfoLines(); - event_set(); + events_init(); engine.ssx = 0; engine.ssy = 0;