From 070d5083d0816ed8c99e64f126fb3095910b310e Mon Sep 17 00:00:00 2001 From: Lylian Date: Sun, 4 May 2025 23:21:56 +0200 Subject: [PATCH] fix other move that might get the illusion type as well --- src/data/moves/move.ts | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/data/moves/move.ts b/src/data/moves/move.ts index 815ee6191eb..ed6bf572e11 100644 --- a/src/data/moves/move.ts +++ b/src/data/moves/move.ts @@ -5669,7 +5669,7 @@ export class JawLockAttr extends AddBattlerTagAttr { export class CurseAttr extends MoveEffectAttr { apply(user: Pokemon, target: Pokemon, move:Move, args: any[]): boolean { - if (user.getTypes(true).includes(PokemonType.GHOST)) { + if (user.getTypes(true, false, undefined, false).includes(PokemonType.GHOST)) { if (target.getTag(BattlerTagType.CURSED)) { globalScene.queueMessage(i18next.t("battle:attackFailed")); return false; @@ -6511,7 +6511,7 @@ export class CopyTypeAttr extends MoveEffectAttr { return false; } - const targetTypes = target.getTypes(true); + const targetTypes = target.getTypes(true, false, undefined, false); if (targetTypes.includes(PokemonType.UNKNOWN) && targetTypes.indexOf(PokemonType.UNKNOWN) > -1) { targetTypes[targetTypes.indexOf(PokemonType.UNKNOWN)] = PokemonType.NORMAL; } @@ -6683,7 +6683,7 @@ export class AddTypeAttr extends MoveEffectAttr { } getCondition(): MoveConditionFunc { - return (user, target, move) => !target.isTerastallized && !target.getTypes().includes(this.type); + return (user, target, move) => !target.isTerastallized && !target.getTypes(false, false, undefined, false).includes(this.type); } } @@ -8054,7 +8054,7 @@ export class UpperHandCondition extends MoveCondition { export class hitsSameTypeAttr extends VariableMoveTypeMultiplierAttr { apply(user: Pokemon, target: Pokemon, move: Move, args: any[]): boolean { const multiplier = args[0] as NumberHolder; - if (!user.getTypes().some(type => target.getTypes().includes(type))) { + if (!user.getTypes(false, false, undefined, false).some(type => target.getTypes(false, false, undefined, false).includes(type))) { multiplier.value = 0; return true; } @@ -8097,7 +8097,7 @@ export class ResistLastMoveTypeAttr extends MoveEffectAttr { if (moveData.type === PokemonType.STELLAR || moveData.type === PokemonType.UNKNOWN) { return false; } - const userTypes = user.getTypes(); + const userTypes = user.getTypes(false, false, undefined, false); const validTypes = this.getTypeResistances(globalScene.gameMode, moveData.type).filter(t => !userTypes.includes(t)); // valid types are ones that are not already the user's types if (!validTypes.length) { return false; @@ -8238,7 +8238,7 @@ export function getMoveTargets(user: Pokemon, move: Moves, replaceTarget?: MoveT break; case MoveTarget.CURSE: const extraTargets = !isNullOrUndefined(ally) ? [ ally ] : []; - set = user.getTypes(true).includes(PokemonType.GHOST) ? (opponents.concat(extraTargets)) : [ user ]; + set = user.getTypes(true, false, undefined, false).includes(PokemonType.GHOST) ? (opponents.concat(extraTargets)) : [ user ]; break; } @@ -10076,7 +10076,7 @@ export function initMoves() { .condition(failIfLastCondition), new StatusMove(Moves.FLOWER_SHIELD, PokemonType.FAIRY, -1, 10, -1, 0, 6) .target(MoveTarget.ALL) - .attr(StatStageChangeAttr, [ Stat.DEF ], 1, false, { condition: (user, target, move) => target.getTypes().includes(PokemonType.GRASS) && !target.getTag(SemiInvulnerableTag) }), + .attr(StatStageChangeAttr, [ Stat.DEF ], 1, false, { condition: (user, target, move) => target.getTypes(false, false, undefined, false).includes(PokemonType.GRASS) && !target.getTag(SemiInvulnerableTag) }), new StatusMove(Moves.GRASSY_TERRAIN, PokemonType.GRASS, -1, 10, -1, 0, 6) .attr(TerrainChangeAttr, TerrainType.GRASSY) .target(MoveTarget.BOTH_SIDES), @@ -10364,7 +10364,7 @@ export function initMoves() { .attr(PositiveStatStagePowerAttr), new AttackMove(Moves.BURN_UP, PokemonType.FIRE, MoveCategory.SPECIAL, 130, 100, 5, -1, 0, 7) .condition((user) => { - const userTypes = user.getTypes(true); + const userTypes = user.getTypes(true, false, undefined, false); return userTypes.includes(PokemonType.FIRE); }) .attr(HealStatusEffectAttr, true, StatusEffect.FREEZE) @@ -11149,7 +11149,7 @@ export function initMoves() { .triageMove(), new AttackMove(Moves.DOUBLE_SHOCK, PokemonType.ELECTRIC, MoveCategory.PHYSICAL, 120, 100, 5, -1, 0, 9) .condition((user) => { - const userTypes = user.getTypes(true); + const userTypes = user.getTypes(true, false, undefined, false); return userTypes.includes(PokemonType.ELECTRIC); }) .attr(AddBattlerTagAttr, BattlerTagType.DOUBLE_SHOCKED, true, false)