From 2bf88502a7a0185bfc58a4011da354b1c8789be3 Mon Sep 17 00:00:00 2001 From: LOuroboros Date: Mon, 19 Jun 2023 04:17:24 -0300 Subject: [PATCH] More corrections --- data/battle_scripts_1.s | 7 ------- include/battle_scripts.h | 1 - include/battle_util.h | 2 +- src/battle_ai_main.c | 13 ++++--------- src/battle_script_commands.c | 6 +++--- src/battle_util.c | 2 +- 6 files changed, 9 insertions(+), 22 deletions(-) diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index db8e6e221e..4c60758184 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -1513,13 +1513,6 @@ BattleScript_DefDown:: BattleScript_DefDown_Ret: return -BattleScript_ReduceDefenseAndFlinch:: - modifybattlerstatstage BS_TARGET, STAT_DEF, DECREASE, 1, BattleScript_DefDownAndFlinch_Ret, ANIM_ON - setmoveeffect MOVE_EFFECT_FLINCH - seteffectprimary -BattleScript_DefDownAndFlinch_Ret: - return - BattleScript_EffectPurify: attackcanceler attackstring diff --git a/include/battle_scripts.h b/include/battle_scripts.h index 3bf8e5e759..3bb4ed4124 100644 --- a/include/battle_scripts.h +++ b/include/battle_scripts.h @@ -471,7 +471,6 @@ extern const u8 BattleScript_SpikesActivates[]; extern const u8 BattleScript_BerserkGeneRet[]; extern const u8 BattleScript_TargetFormChangeWithStringNoPopup[]; extern const u8 BattleScript_DefDown[]; -extern const u8 BattleScript_ReduceDefenseAndFlinch[]; // zmoves extern const u8 BattleScript_ZMoveActivateDamaging[]; diff --git a/include/battle_util.h b/include/battle_util.h index 633bdb6103..79bdfaf9a8 100644 --- a/include/battle_util.h +++ b/include/battle_util.h @@ -236,6 +236,6 @@ bool8 ChangeTypeBasedOnTerrain(u8 battlerId); void RemoveConfusionStatus(u8 battlerId); u8 GetBattlerGender(u8 battlerId); bool8 AreBattlersOfOppositeGender(u8 battler1, u8 battler2); -u32 CalcMoveSecondaryEffectChance(u8 battlerId, u8 secondaryEffectChance); +u32 CalcSecondaryEffectChance(u8 battlerId, u8 secondaryEffectChance); #endif // GUARD_BATTLE_UTIL_H diff --git a/src/battle_ai_main.c b/src/battle_ai_main.c index b8ab230274..211fa12279 100644 --- a/src/battle_ai_main.c +++ b/src/battle_ai_main.c @@ -2639,16 +2639,11 @@ static s16 AI_CheckBadMove(u8 battlerAtk, u8 battlerDef, u16 move, s16 score) score -= 10; break; case EFFECT_JUNGLE_HEALING: - if (AtMaxHp(battlerAtk) - && AtMaxHp(BATTLE_PARTNER(battlerAtk)) - && !(gBattleMons[battlerAtk].status1 & STATUS1_ANY) - && !(gBattleMons[BATTLE_PARTNER(battlerAtk)].status1 & STATUS1_ANY)) + if (AtMaxHp(battlerAtk) + && AtMaxHp(BATTLE_PARTNER(battlerAtk)) + && !(gBattleMons[battlerAtk].status1 & STATUS1_ANY) + && !(gBattleMons[BATTLE_PARTNER(battlerAtk)].status1 & STATUS1_ANY)) score -= 10; - else if (gBattleMons[battlerAtk].status1 & STATUS1_ANY - || gBattleMons[BATTLE_PARTNER(battlerAtk)].status1 & STATUS1_ANY - || AI_DATA->hpPercents[battlerAtk] >= 90 - || AI_DATA->hpPercents[BATTLE_PARTNER(battlerAtk)] >= 90) - score -= 9; // No point in healing, but should at least do it if there's nothing better or if it's afflicted by a status ailment. break; case EFFECT_TAKE_HEART: if ((!(gBattleMons[battlerAtk].status1 & STATUS1_ANY) diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 86923b86ee..c4ea866df9 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -3864,8 +3864,8 @@ void SetMoveEffect(bool32 primary, u32 certain) break; case MOVE_EFFECT_TRIPLE_ARROWS: { - u8 randomLowerDefenseChance = RandomPercentage(RNG_TRIPLE_ARROWS_DEFENSE_DOWN, CalcMoveSecondaryEffectChance(gBattlerAttacker, 50)); - u8 randomFlinchChance = RandomPercentage(RNG_TRIPLE_ARROWS_FLINCH, CalcMoveSecondaryEffectChance(gBattlerAttacker, 30)); + u8 randomLowerDefenseChance = RandomPercentage(RNG_TRIPLE_ARROWS_DEFENSE_DOWN, CalcSecondaryEffectChance(gBattlerAttacker, 50)); + u8 randomFlinchChance = RandomPercentage(RNG_TRIPLE_ARROWS_FLINCH, CalcSecondaryEffectChance(gBattlerAttacker, 30)); if (randomFlinchChance && battlerAbility != ABILITY_INNER_FOCUS && GetBattlerTurnOrderNum(gEffectBattler) > gCurrentTurnActionNumber) gBattleMons[gEffectBattler].status2 |= sStatusFlagsForMoveEffects[MOVE_EFFECT_FLINCH]; @@ -3892,7 +3892,7 @@ static void Cmd_seteffectwithchance(void) { CMD_ARGS(); - u32 percentChance = CalcMoveSecondaryEffectChance(gBattlerAttacker, gBattleMoves[gCurrentMove].secondaryEffectChance); + u32 percentChance = CalcSecondaryEffectChance(gBattlerAttacker, gBattleMoves[gCurrentMove].secondaryEffectChance); if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT) && gBattleScripting.moveEffect) diff --git a/src/battle_util.c b/src/battle_util.c index a6e123e65e..ee4e50cf3c 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -10930,7 +10930,7 @@ bool8 AreBattlersOfOppositeGender(u8 battler1, u8 battler2) return (gender1 != MON_GENDERLESS && gender2 != MON_GENDERLESS && gender1 != gender2); } -u32 CalcMoveSecondaryEffectChance(u8 battlerId, u8 secondaryEffectChance) +u32 CalcSecondaryEffectChance(u8 battlerId, u8 secondaryEffectChance) { if (GetBattlerAbility(battlerId) == ABILITY_SERENE_GRACE) secondaryEffectChance *= 2;