From eab4f6e01f6b654015a0e00ff9de2d2c631e4eca Mon Sep 17 00:00:00 2001 From: jnotsknab Date: Fri, 20 Jun 2025 02:10:41 -0500 Subject: [PATCH] Moved the check for whether Transform can be used within the TransformAttr class as suggested and removed uneccesary moveId check --- src/data/moves/move.ts | 4 ++-- src/phases/move-phase.ts | 11 ----------- 2 files changed, 2 insertions(+), 13 deletions(-) diff --git a/src/data/moves/move.ts b/src/data/moves/move.ts index 7d3fc253da7..066114e6aca 100644 --- a/src/data/moves/move.ts +++ b/src/data/moves/move.ts @@ -7610,13 +7610,13 @@ export class SuppressAbilitiesIfActedAttr extends MoveEffectAttr { */ export class TransformAttr extends MoveEffectAttr { override apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { - if (!super.apply(user, target, move, args)) { + if (!super.apply(user, target, move, args) || (target.isTransformed() || user.isTransformed())) { + globalScene.phaseManager.queueMessage(i18next.t("battle:attackFailed")); return false; } globalScene.phaseManager.unshiftNew("PokemonTransformPhase", user.getBattlerIndex(), target.getBattlerIndex()); - return true; } } diff --git a/src/phases/move-phase.ts b/src/phases/move-phase.ts index 0deb1c6f470..2e94b085948 100644 --- a/src/phases/move-phase.ts +++ b/src/phases/move-phase.ts @@ -339,17 +339,6 @@ export class MovePhase extends BattlePhase { this.showMoveText(); } - if ( - //Prevent using Transform if either the user or target is already transformed - this.move.getMove().id === MoveId.TRANSFORM && - (targets[0].isTransformed() || this.pokemon.isTransformed()) - ) { - this.showMoveText(); - this.showFailedText(); - this.end(); - return; - } - // Clear out any two turn moves once they've been used. // TODO: Refactor move queues and remove this assignment; // Move queues should be handled by the calling `CommandPhase` or a manager for it