diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index e82f1ef4f9..30c4cdc03a 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -6289,8 +6289,8 @@ BattleScript_TargetAbilityStatRaise:: return BattleScript_WeakArmorActivates:: - setstatchanger STAT_DEF, 1, TRUE call BattleScript_AbilityPopUp + setstatchanger STAT_DEF, 1, TRUE statbuffchange 0x1, BattleScript_WeakArmorActivatesSpeed jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, 0x2, BattleScript_WeakArmorDefAnim jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x3, BattleScript_WeakArmorActivatesSpeed @@ -6304,7 +6304,7 @@ BattleScript_WeakArmorDefAnim: printstring STRINGID_TARGETABILITYSTATLOWER waitmessage 0x40 BattleScript_WeakArmorActivatesSpeed: - setstatchanger STAT_SPEED, 1, FALSE + setstatchanger STAT_SPEED, 2, FALSE statbuffchange 0x1, BattleScript_WeakArmorActivatesEnd jumpifbyte CMP_LESS_THAN, cMULTISTRING_CHOOSER, 0x2, BattleScript_WeakArmorSpeedAnim jumpifbyte CMP_EQUAL, cMULTISTRING_CHOOSER, 0x3, BattleScript_WeakArmorActivatesEnd diff --git a/src/battle_util.c b/src/battle_util.c index 29dd2974bc..21b540c900 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -3157,6 +3157,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u8 ability, u8 special, u16 moveA if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT) && TARGET_TURN_DAMAGED && IsBattlerAlive(battler) + && gBattleMoves[gCurrentMove].split == SPLIT_PHYSICAL && (gBattleMons[battler].statStages[STAT_SPEED] != 12 || gBattleMons[battler].statStages[STAT_DEF] != 0)) { BattleScriptPushCursor();