From 51a1b6784121afe0d824a805a53bff693324bb7d Mon Sep 17 00:00:00 2001 From: Layla Marchant Date: Fri, 25 Dec 2020 19:40:27 -0500 Subject: [PATCH] Made the start of the Venus Kline fight the same as the original in Classic difficulty --- src/alien.c | 30 ++++++++++++++++++++++++------ src/event.c | 4 ++++ src/game.c | 10 ++++++++-- 3 files changed, 36 insertions(+), 8 deletions(-) diff --git a/src/alien.c b/src/alien.c index 036344d..42ca99f 100644 --- a/src/alien.c +++ b/src/alien.c @@ -1131,8 +1131,14 @@ void aliens_init() 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.difficulty == DIFFICULTY_ORIGINAL) { + aliens[ALIEN_BOSS].x = -400; + aliens[ALIEN_BOSS].y = 300; + } + else { + 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; @@ -1148,8 +1154,14 @@ void aliens_init() || (game.area == MISN_FELLON)) { aliens[ALIEN_BOSS].target = &player; - aliens[ALIEN_BOSS].x = -screen->w / 2; - aliens[ALIEN_BOSS].y = screen->h / 2; + if (game.difficulty == DIFFICULTY_ORIGINAL) { + aliens[ALIEN_BOSS].x = -400; + aliens[ALIEN_BOSS].y = 300; + } + else { + 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; @@ -1179,8 +1191,14 @@ void aliens_init() 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; + if (game.difficulty == DIFFICULTY_ORIGINAL) { + aliens[ALIEN_BOSS].x = -400; + aliens[ALIEN_BOSS].y = 300; + } + else { + 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 = -16; diff --git a/src/event.c b/src/event.c index 8f40109..b32427c 100644 --- a/src/event.c +++ b/src/event.c @@ -399,6 +399,10 @@ void events_init() events[1].face = FS_KLINE; /// Dialog (Kline Kethlan) strcpy(events[1].message, _("You underestimate me, Bainfield.")); + if (game.difficulty == DIFFICULTY_ORIGINAL) { + events[1].entity = ALIEN_KLINE; + events[1].flag = -(FL_IMMORTAL | FL_NOMOVE | FL_NOFIRE); + } break; } diff --git a/src/game.c b/src/game.c index e384a1a..c029798 100644 --- a/src/game.c +++ b/src/game.c @@ -2539,8 +2539,14 @@ int game_mainLoop() if (game.area == MISN_VENUS) { - aliens[ALIEN_KLINE].x = player.x + 1000; - aliens[ALIEN_KLINE].y = player.y; + if (game.difficulty == DIFFICULTY_ORIGINAL) { + aliens[ALIEN_KLINE].flags |= FL_IMMORTAL | FL_NOFIRE | FL_NOMOVE; + aliens[ALIEN_KLINE].x = 600; + aliens[ALIEN_KLINE].y = 300; + } else { + aliens[ALIEN_KLINE].x = player.x + 1000; + aliens[ALIEN_KLINE].y = player.y; + } } for (int i = 0 ; i < ALIEN_MAX ; i++)