diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index 018c7e91a71..52e2df31e43 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -3063,7 +3063,7 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * We explicitly require to ignore the faint phase here, as we want to show the messages * about the critical hit and the super effective/not very effective messages before the faint phase. */ - const damage = this.damageAndUpdate(isBlockedBySubstitute ? 0 : dmg, { result: result as DamageResult, critical: isCritical, ignoreSegments: false, ignoreFaintPhase: true, source: source }); + const damage = this.damageAndUpdate(isBlockedBySubstitute ? 0 : dmg, { result: result as DamageResult, isCritical, ignoreFaintPhase: true, source }); if (damage > 0) { if (source.isPlayer()) { @@ -3179,14 +3179,14 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { */ damageAndUpdate(damage: number, { - result = HitResult.EFFECTIVE, critical = false, ignoreSegments = false, ignoreFaintPhase = false, source = undefined, + result = HitResult.EFFECTIVE, isCritical = false, ignoreSegments = false, ignoreFaintPhase = false, source = undefined, }: { - result?: DamageResult, critical?: boolean, ignoreSegments?: boolean, ignoreFaintPhase?: boolean, source?: Pokemon, - } + result?: DamageResult, isCritical?: boolean, ignoreSegments?: boolean, ignoreFaintPhase?: boolean, source?: Pokemon, + } = {} ): number { const isIndirectDamage = [ HitResult.INDIRECT, HitResult.INDIRECT_KO ].includes(result); - const damagePhase = new DamageAnimPhase(this.getBattlerIndex(), damage, result as DamageResult, critical); + const damagePhase = new DamageAnimPhase(this.getBattlerIndex(), damage, result as DamageResult, isCritical); globalScene.unshiftPhase(damagePhase); if (this.switchOutStatus && source) { damage = 0; diff --git a/test/abilities/wimp_out.test.ts b/test/abilities/wimp_out.test.ts index 624e4748c99..5aff05d4c20 100644 --- a/test/abilities/wimp_out.test.ts +++ b/test/abilities/wimp_out.test.ts @@ -259,7 +259,7 @@ describe("Abilities - Wimp Out", () => { const wimpod = game.scene.getPlayerPokemon()!; - wimpod.damageAndUpdate(toDmgValue(wimpod.getMaxHp() * 0.4), {}); + wimpod.damageAndUpdate(toDmgValue(wimpod.getMaxHp() * 0.4)); game.move.select(Moves.DOUBLE_EDGE); game.doSelectPartyPokemon(1); diff --git a/test/boss-pokemon.test.ts b/test/boss-pokemon.test.ts index 7be28d89298..ea5a9000000 100644 --- a/test/boss-pokemon.test.ts +++ b/test/boss-pokemon.test.ts @@ -125,7 +125,7 @@ describe("Boss Pokemon / Shields", () => { expect(boss1.bossSegmentIndex).toBe(4); // Not enough damage to break through all shields - boss1.damageAndUpdate(Math.floor(requiredDamageBoss1 - 5), {}); + boss1.damageAndUpdate(Math.floor(requiredDamageBoss1 - 5)); expect(boss1.bossSegmentIndex).toBe(1); expect(boss1.hp).toBe(boss1.getMaxHp() - toDmgValue(boss1SegmentHp * 3)); @@ -137,7 +137,7 @@ describe("Boss Pokemon / Shields", () => { expect(boss2.bossSegments).toBe(5); // Enough damage to break through all shields - boss2.damageAndUpdate(Math.ceil(requiredDamageBoss2), {}); + boss2.damageAndUpdate(Math.ceil(requiredDamageBoss2)); expect(boss2.bossSegmentIndex).toBe(0); expect(boss2.hp).toBe(boss2.getMaxHp() - toDmgValue(boss2SegmentHp * 4)); @@ -165,7 +165,7 @@ describe("Boss Pokemon / Shields", () => { // Break the shields one by one for (let i = 1; i <= shieldsToBreak; i++) { - boss1.damageAndUpdate(singleShieldDamage, {}); + boss1.damageAndUpdate(singleShieldDamage); expect(boss1.bossSegmentIndex).toBe(shieldsToBreak - i); expect(boss1.hp).toBe(boss1.getMaxHp() - toDmgValue(boss1SegmentHp * i)); // Do nothing and go to next turn so that the StatStageChangePhase gets applied @@ -186,7 +186,7 @@ describe("Boss Pokemon / Shields", () => { expect(getTotalStatStageBoosts(boss2)).toBe(0); // Enough damage to break all shields at once - boss2.damageAndUpdate(Math.ceil(requiredDamage), {}); + boss2.damageAndUpdate(Math.ceil(requiredDamage)); expect(boss2.bossSegmentIndex).toBe(0); expect(boss2.hp).toBe(boss2.getMaxHp() - toDmgValue(boss2SegmentHp * shieldsToBreak)); // Do nothing and go to next turn so that the StatStageChangePhase gets applied diff --git a/test/items/reviver_seed.test.ts b/test/items/reviver_seed.test.ts index 4682984aab1..30138fea910 100644 --- a/test/items/reviver_seed.test.ts +++ b/test/items/reviver_seed.test.ts @@ -55,7 +55,7 @@ describe("Items - Reviver Seed", () => { .enemyMoveset(move); await game.classicMode.startBattle([ Species.MAGIKARP, Species.FEEBAS ]); const player = game.scene.getPlayerPokemon()!; - player.damageAndUpdate(player.hp - 1, {}); + player.damageAndUpdate(player.hp - 1); const reviverSeed = player.getHeldItems()[0] as PokemonInstantReviveModifier; vi.spyOn(reviverSeed, "apply"); @@ -73,7 +73,7 @@ describe("Items - Reviver Seed", () => { .enemyMoveset(Moves.SPLASH); await game.classicMode.startBattle([ Species.MAGIKARP, Species.FEEBAS ]); const player = game.scene.getPlayerPokemon()!; - player.damageAndUpdate(player.hp - 1, {}); + player.damageAndUpdate(player.hp - 1); player.addTag(BattlerTagType.CONFUSED, 3); const reviverSeed = player.getHeldItems()[0] as PokemonInstantReviveModifier; @@ -102,7 +102,7 @@ describe("Items - Reviver Seed", () => { .enemyMoveset(Moves.ENDURE); await game.classicMode.startBattle([ Species.MAGIKARP, Species.FEEBAS ]); const enemy = game.scene.getEnemyPokemon()!; - enemy.damageAndUpdate(enemy.hp - 1, {}); + enemy.damageAndUpdate(enemy.hp - 1); game.move.select(move); await game.phaseInterceptor.to("TurnEndPhase"); @@ -126,7 +126,7 @@ describe("Items - Reviver Seed", () => { .enemyMoveset(Moves.SPLASH); await game.classicMode.startBattle([ Species.GASTLY, Species.FEEBAS ]); const player = game.scene.getPlayerPokemon()!; - player.damageAndUpdate(player.hp - 1, {}); + player.damageAndUpdate(player.hp - 1); const playerSeed = player.getHeldItems()[0] as PokemonInstantReviveModifier; vi.spyOn(playerSeed, "apply"); @@ -147,7 +147,7 @@ describe("Items - Reviver Seed", () => { .enemyMoveset(Moves.TACKLE); await game.classicMode.startBattle([ Species.MAGIKARP, Species.FEEBAS ]); const player = game.scene.getPlayerPokemon()!; - player.damageAndUpdate(player.hp - 1, {}); + player.damageAndUpdate(player.hp - 1); const enemy = game.scene.getEnemyPokemon()!; game.move.select(Moves.DESTINY_BOND); diff --git a/test/moves/endure.test.ts b/test/moves/endure.test.ts index 7eb387d3164..4923f524fc0 100644 --- a/test/moves/endure.test.ts +++ b/test/moves/endure.test.ts @@ -76,7 +76,7 @@ describe("Moves - Endure", () => { .enemyMoveset(Moves.ENDURE); await game.classicMode.startBattle([ Species.MAGIKARP, Species.FEEBAS ]); const enemy = game.scene.getEnemyPokemon()!; - enemy.damageAndUpdate(enemy.hp - 1, {}); + enemy.damageAndUpdate(enemy.hp - 1); game.move.select(move); await game.phaseInterceptor.to("TurnEndPhase"); diff --git a/test/moves/fake_out.test.ts b/test/moves/fake_out.test.ts index 33598a96680..21a129b6410 100644 --- a/test/moves/fake_out.test.ts +++ b/test/moves/fake_out.test.ts @@ -52,7 +52,7 @@ describe("Moves - Fake Out", () => { await game.classicMode.startBattle([ Species.FEEBAS ]); const enemy = game.scene.getEnemyPokemon()!; - enemy.damageAndUpdate(enemy.getMaxHp() - 1, {}); + enemy.damageAndUpdate(enemy.getMaxHp() - 1); game.move.select(Moves.FAKE_OUT); await game.toNextWave(); diff --git a/test/moves/heal_block.test.ts b/test/moves/heal_block.test.ts index 88a9e6ac07f..a0e8eaf541c 100644 --- a/test/moves/heal_block.test.ts +++ b/test/moves/heal_block.test.ts @@ -43,7 +43,7 @@ describe("Moves - Heal Block", () => { const player = game.scene.getPlayerPokemon()!; const enemy = game.scene.getEnemyPokemon()!; - player.damageAndUpdate(enemy.getMaxHp() - 1, {}); + player.damageAndUpdate(enemy.getMaxHp() - 1); game.move.select(Moves.ABSORB); await game.setTurnOrder([ BattlerIndex.ENEMY, BattlerIndex.PLAYER ]); @@ -74,7 +74,7 @@ describe("Moves - Heal Block", () => { const player = game.scene.getPlayerPokemon()!; - player.damageAndUpdate(player.getMaxHp() - 1, {}); + player.damageAndUpdate(player.getMaxHp() - 1); game.move.select(Moves.WISH); await game.phaseInterceptor.to("TurnEndPhase"); @@ -95,7 +95,7 @@ describe("Moves - Heal Block", () => { const player = game.scene.getPlayerPokemon()!; - player.damageAndUpdate(player.getMaxHp() - 1, {}); + player.damageAndUpdate(player.getMaxHp() - 1); game.move.select(Moves.SPLASH); await game.phaseInterceptor.to("TurnEndPhase"); @@ -108,7 +108,7 @@ describe("Moves - Heal Block", () => { const player = game.scene.getPlayerPokemon()!; - player.damageAndUpdate(player.getMaxHp() - 1, {}); + player.damageAndUpdate(player.getMaxHp() - 1); game.move.select(Moves.AQUA_RING); await game.phaseInterceptor.to("TurnEndPhase"); @@ -126,7 +126,7 @@ describe("Moves - Heal Block", () => { const player = game.scene.getPlayerPokemon()!; - player.damageAndUpdate(player.getMaxHp() - 1, {}); + player.damageAndUpdate(player.getMaxHp() - 1); game.move.select(Moves.SPLASH); await game.phaseInterceptor.to("TurnEndPhase"); @@ -140,7 +140,7 @@ describe("Moves - Heal Block", () => { await game.classicMode.startBattle([ Species.CHARIZARD ]); const player = game.scene.getPlayerPokemon()!; - player.damageAndUpdate(player.getMaxHp() - 1, {}); + player.damageAndUpdate(player.getMaxHp() - 1); game.move.select(Moves.SPLASH); await game.phaseInterceptor.to("TurnEndPhase"); diff --git a/test/moves/safeguard.test.ts b/test/moves/safeguard.test.ts index 1a20a27b815..9768b24f170 100644 --- a/test/moves/safeguard.test.ts +++ b/test/moves/safeguard.test.ts @@ -121,7 +121,7 @@ describe("Moves - Safeguard", () => { game.move.select(Moves.SPLASH); await game.setTurnOrder([ BattlerIndex.ENEMY, BattlerIndex.PLAYER ]); await game.toNextTurn(); - enemyPokemon.damageAndUpdate(1, {}); + enemyPokemon.damageAndUpdate(1); expect(enemyPokemon.status?.effect).toEqual(StatusEffect.BURN); @@ -130,7 +130,7 @@ describe("Moves - Safeguard", () => { // TODO: Remove after enemy AI rework is in enemyPokemon.getMoveset(); game.move.select(Moves.SPLASH); - enemyPokemon.damageAndUpdate(1, {}); + enemyPokemon.damageAndUpdate(1); await game.toNextTurn(); expect(enemyPokemon.status?.effect).toEqual(StatusEffect.SLEEP);