Fix multi battle switch checks for Eject items (#9190)

This commit is contained in:
GGbond 2026-02-13 07:00:35 +08:00 committed by GitHub
parent ce15e5486d
commit 312ddddc17
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 3 additions and 3 deletions

View File

@ -5643,7 +5643,7 @@ static inline bool32 CanEjectButtonTrigger(u32 battlerAtk, u32 battlerDef, enum
&& battlerAtk != battlerDef
&& IsBattlerTurnDamaged(battlerDef)
&& IsBattlerAlive(battlerDef)
&& CountUsablePartyMons(battlerDef) > 0
&& CanBattlerSwitch(battlerDef)
&& !(moveEffect == EFFECT_HIT_SWITCH_TARGET && CanBattlerSwitch(battlerAtk)))
return TRUE;
@ -5655,7 +5655,7 @@ static inline bool32 CanEjectPackTrigger(u32 battlerAtk, u32 battlerDef, enum Ba
if (gDisableStructs[battlerDef].tryEjectPack
&& GetBattlerHoldEffect(battlerDef) == HOLD_EFFECT_EJECT_PACK
&& IsBattlerAlive(battlerDef)
&& CountUsablePartyMons(battlerDef) > 0
&& CanBattlerSwitch(battlerDef)
&& !gProtectStructs[battlerDef].disableEjectPack
&& !(moveEffect == EFFECT_HIT_SWITCH_TARGET && CanBattlerSwitch(battlerAtk))
&& !(moveEffect == EFFECT_PARTING_SHOT && CanBattlerSwitch(battlerAtk)))

View File

@ -10691,7 +10691,7 @@ bool32 TrySwitchInEjectPack(enum EjectPackTiming timing)
if (gDisableStructs[i].tryEjectPack
&& GetBattlerHoldEffect(i) == HOLD_EFFECT_EJECT_PACK
&& IsBattlerAlive(i)
&& CountUsablePartyMons(i) > 0)
&& CanBattlerSwitch(i))
{
ejectPackBattlers |= 1u << i;
numEjectPackBattlers++;