From d10b1b0a13856b627eb0ed3efb98b5e814278d54 Mon Sep 17 00:00:00 2001 From: Bertie690 Date: Sat, 2 Aug 2025 13:31:34 -0400 Subject: [PATCH] Maybe fixed a few bugs --- test/abilities/wimp-out.test.ts | 2 +- test/moves/metronome.test.ts | 2 +- test/test-utils/game-manager.ts | 3 ++- test/test-utils/helpers/prompt-handler.ts | 1 + test/test-utils/helpers/reload-helper.ts | 1 + 5 files changed, 6 insertions(+), 3 deletions(-) diff --git a/test/abilities/wimp-out.test.ts b/test/abilities/wimp-out.test.ts index a32ecaf5983..a1c19a12fd4 100644 --- a/test/abilities/wimp-out.test.ts +++ b/test/abilities/wimp-out.test.ts @@ -547,7 +547,7 @@ describe("Abilities - Wimp Out", () => { await game.move.selectEnemyMove(MoveId.SPLASH); await game.move.selectEnemyMove(MoveId.ENDURE); - await game.toNextWave(); + await game.phaseInterceptor.to("SelectModifierPhase"); expect(game.scene.currentBattle.waveIndex).toBe(wave + 1); }); }); diff --git a/test/moves/metronome.test.ts b/test/moves/metronome.test.ts index b88206f23d9..e39d24c81db 100644 --- a/test/moves/metronome.test.ts +++ b/test/moves/metronome.test.ts @@ -146,6 +146,6 @@ describe("Moves - Metronome", () => { const hasFled = enemyPokemon.switchOutStatus; expect(!isVisible && hasFled).toBe(true); - await game.toNextWave(); + await game.toNextTurn(); }); }); diff --git a/test/test-utils/game-manager.ts b/test/test-utils/game-manager.ts index faa2acfc918..1e06140fc9e 100644 --- a/test/test-utils/game-manager.ts +++ b/test/test-utils/game-manager.ts @@ -104,6 +104,7 @@ export class GameManager { (this.scene.ui.handlers[UiMode.STARTER_SELECT] as StarterSelectUiHandler).clearStarterPreferences(); // Must be run after phase interceptor has been initialized. + this.gameWrapper.scene = this.scene; this.scene.phaseManager.toTitleScreen(true); this.scene.phaseManager.shiftPhase(); } @@ -148,7 +149,7 @@ export class GameManager { /** * Ends the current phase immediately. - * @see {@linkcode PhaseManager.shiftPhase} Function to skip the next upcoming phase + * @see {@linkcode PhaseInterceptor.shiftPhase} Function to skip the next upcoming phase */ endPhase() { this.scene.phaseManager.getCurrentPhase()?.end(); diff --git a/test/test-utils/helpers/prompt-handler.ts b/test/test-utils/helpers/prompt-handler.ts index 355925d88fc..57ee0b68c14 100644 --- a/test/test-utils/helpers/prompt-handler.ts +++ b/test/test-utils/helpers/prompt-handler.ts @@ -30,6 +30,7 @@ interface UIPrompt { * Array of phases that hang whiile waiting for player input. * Changing UI modes during these phases will halt the phase interceptor. * @todo This is an extremely unintuitive solution that only works on a select few phases + * and does not account for UI handlers not accepting input */ const endBySetMode: ReadonlyArray = [ "CommandPhase", diff --git a/test/test-utils/helpers/reload-helper.ts b/test/test-utils/helpers/reload-helper.ts index c537f5ca15d..2e4087e2113 100644 --- a/test/test-utils/helpers/reload-helper.ts +++ b/test/test-utils/helpers/reload-helper.ts @@ -57,6 +57,7 @@ export class ReloadHelper extends GameManagerHelper { this.game.scene.modifiers = []; } titlePhase.loadSaveSlot(-1); // Load the desired session data + console.log(this.game.scene.phaseManager.getCurrentPhase()?.phaseName); this.game.scene.phaseManager.shiftPhase(); // Loading the save slot also ended TitlePhase, clean it up // Run through prompts for switching Pokemon, copied from classicModeHelper.ts