diff --git a/src/battle_util.c b/src/battle_util.c index 59843442d..98e8bbfd2 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -5003,20 +5003,15 @@ u8 AbilityBattleEffects(u8 caseID, u8 battler, u16 ability, u8 special, u16 move gDisableStructs[gBattlerAttacker].truantCounter ^= 1; break; case ABILITY_BAD_DREAMS: - { - u32 i; - for (i = 0; i < gBattlersCount; i++) + if (gBattleMons[BATTLE_PARTNER(BATTLE_OPPOSITE(battler))].status1 & STATUS1_SLEEP + || gBattleMons[BATTLE_OPPOSITE(battler)].status1 & STATUS1_SLEEP + || GetBattlerAbility(BATTLE_PARTNER(BATTLE_OPPOSITE(battler))) == ABILITY_COMATOSE + || GetBattlerAbility(BATTLE_OPPOSITE(battler)) == ABILITY_COMATOSE) { - if (i != battler && IsBattlerAlive(i) - && ((gBattleMons[i].status1 & STATUS1_SLEEP) || GetBattlerAbility(i) == ABILITY_COMATOSE)) - { - BattleScriptPushCursorAndCallback(BattleScript_BadDreamsActivates); - effect++; - break; - } + BattleScriptPushCursorAndCallback(BattleScript_BadDreamsActivates); + effect++; } break; - } SOLAR_POWER_HP_DROP: case ABILITY_SOLAR_POWER: if (IsBattlerWeatherAffected(battler, B_WEATHER_SUN))