diff --git a/src/battle-scene.ts b/src/battle-scene.ts index 9e2383f6588..a759cbb84c2 100644 --- a/src/battle-scene.ts +++ b/src/battle-scene.ts @@ -2941,6 +2941,15 @@ export default class BattleScene extends SceneBase { this.clearPhaseQueueSplice(); } + /** + * Hides the ability bar if it is currently visible + */ + public hideAbilityBar(): void { + if (this.abilityBar.isVisible()) { + this.unshiftPhase(new HideAbilityPhase()); + } + } + /** * Moves everything from nextCommandPhaseQueue to phaseQueue (keeping order) */ diff --git a/src/phases/game-over-phase.ts b/src/phases/game-over-phase.ts index 569f3f724c5..f105b625cc8 100644 --- a/src/phases/game-over-phase.ts +++ b/src/phases/game-over-phase.ts @@ -31,7 +31,6 @@ import ChallengeData from "#app/system/challenge-data"; import TrainerData from "#app/system/trainer-data"; import ArenaData from "#app/system/arena-data"; import { pokerogueApi } from "#app/plugins/api/pokerogue-api"; -import { HideAbilityPhase } from "#app/phases/hide-ability-phase"; export class GameOverPhase extends BattlePhase { private isVictory: boolean; @@ -46,9 +45,7 @@ export class GameOverPhase extends BattlePhase { start() { super.start(); - if (globalScene.abilityBar.isVisible()) { - globalScene.unshiftPhase(new HideAbilityPhase()); - } + globalScene.hideAbilityBar(); // Failsafe if players somehow skip floor 200 in classic mode if (globalScene.gameMode.isClassic && globalScene.currentBattle.waveIndex > 200) { diff --git a/src/phases/turn-end-phase.ts b/src/phases/turn-end-phase.ts index 836647fbfb4..ddfc0955508 100644 --- a/src/phases/turn-end-phase.ts +++ b/src/phases/turn-end-phase.ts @@ -28,6 +28,8 @@ export class TurnEndPhase extends FieldPhase { globalScene.currentBattle.incrementTurn(); globalScene.eventTarget.dispatchEvent(new TurnEndEvent(globalScene.currentBattle.turn)); + globalScene.hideAbilityBar(); + const handlePokemon = (pokemon: Pokemon) => { if (!pokemon.switchOutStatus) { pokemon.lapseTags(BattlerTagLapseType.TURN_END);