From c31809ed3528d99fe1d16ce92ae44f6c6d136af4 Mon Sep 17 00:00:00 2001 From: snoozbuster Date: Tue, 13 Aug 2024 21:10:10 -0700 Subject: [PATCH] add helper for forcing AI move targetting --- src/test/utils/helpers/moveHelper.ts | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/test/utils/helpers/moveHelper.ts b/src/test/utils/helpers/moveHelper.ts index 9438952aa92..b4f9cf2d4a5 100644 --- a/src/test/utils/helpers/moveHelper.ts +++ b/src/test/utils/helpers/moveHelper.ts @@ -1,6 +1,8 @@ import { vi } from "vitest"; import { MoveEffectPhase } from "#app/phases.js"; import { GameManagerHelper } from "./gameManagerHelper"; +import { BattlerIndex } from "#app/battle.js"; +import { EnemyPokemon } from "#app/field/pokemon.js"; /** * Helper to handle a Pokemon's move @@ -32,4 +34,13 @@ export class MoveHelper extends GameManagerHelper { hitCheck.mockReturnValue(false); } } + + /** + * Forces an enemy Pokemon to attack into a certain slot + * @param pokemon Pokemon to force the attack of + * @param slot BattlerIndex to force the attack into + */ + forceAiTargets(pokemon: EnemyPokemon | undefined, slot: BattlerIndex | BattlerIndex[]) { + vi.spyOn(pokemon!, "getNextTargets").mockReturnValue(Array.isArray(slot) ? slot : [slot]); + } }