From 6e8d32fd640317b322ec45cd849d20651df8a467 Mon Sep 17 00:00:00 2001 From: Layla Marchant Date: Mon, 27 Jul 2020 00:37:04 -0400 Subject: [PATCH] Fixed a small discrepancy with the Venus mission in Classic difficulty Since the original actually constantly had you drain Kline's health to zero and then re-adjusted it, there were effectively stop points limiting the amount of damage you could do to the amount designated for the current stage. This has been simulated by setting the shield to the proper amount of shield for the respective stage if the difficulty is DIFFICULTY_ORIGINAL. --- src/alien.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/alien.c b/src/alien.c index c3cee24..b552de7 100644 --- a/src/alien.c +++ b/src/alien.c @@ -2229,13 +2229,25 @@ void alien_hurt(Object *alien, Object *attacker, int damage, int ion) if (alien->shield + damage > stage1_shield && alien->shield <= stage1_shield) + { alien_setKlineAttackMethod(alien); + if (game.difficulty == DIFFICULTY_ORIGINAL) + alien->shield = stage1_shield; + } else if (alien->shield + damage > stage2_shield && alien->shield <= stage2_shield) + { alien_setKlineAttackMethod(alien); + if (game.difficulty == DIFFICULTY_ORIGINAL) + alien->shield = stage2_shield; + } else if (alien->shield + damage > stage3_shield && alien->shield <= stage3_shield) + { alien_setKlineAttackMethod(alien); + if (game.difficulty == DIFFICULTY_ORIGINAL) + alien->shield = stage3_shield; + } } else {