diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index f8e95786aee..3808f00d679 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -1769,8 +1769,6 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { aura.applyPreAttack(null, null, null, move, [power]); } - applyPreDefendAbAttrs(ReceivedMoveDamageMultiplierAbAttr, this, source, move, cancelled, power); - power.value *= typeChangeMovePowerMultiplier.value; if (!typeless) { @@ -1796,7 +1794,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { if (this.scene.arena.getTerrainType() === TerrainType.GRASSY && this.isGrounded() && move.type === Type.GROUND && move.moveTarget === MoveTarget.ALL_NEAR_OTHERS) { power.value /= 2; } + applyMoveAttrs(VariablePowerAttr, source, this, move, power); + this.scene.applyModifiers(PokemonMultiHitModifier, source.isPlayer(), source, new Utils.IntegerHolder(0), power); if (!typeless) { this.scene.arena.applyTags(WeakenMoveTypeTag, move.type, power); @@ -1934,6 +1934,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { } applyMoveAttrs(ModifiedDamageAttr, source, this, move, damage); + applyPreDefendAbAttrs(ReceivedMoveDamageMultiplierAbAttr, this, source, move, cancelled, power); if (power.value === 0) { damage.value = 0;