From 589d06c15ec7ef7661838581be8ac805b4e7ba91 Mon Sep 17 00:00:00 2001 From: Ei <59531041+Mewtwo2387@users.noreply.github.com> Date: Wed, 12 Jun 2024 23:08:15 +0100 Subject: [PATCH] [Bug] Fixed reviving while transformed not resetting the sprite (#2152) * Fixed reviving while transformed not resetting the sprite * Made reload assets in resetStatus optional --- src/field/pokemon.ts | 6 +++++- src/modifier/modifier.ts | 3 +-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/field/pokemon.ts b/src/field/pokemon.ts index 8436231dddf..36659acf28c 100644 --- a/src/field/pokemon.ts +++ b/src/field/pokemon.ts @@ -2527,8 +2527,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { * Resets the status of a pokemon. * @param revive Whether revive should be cured; defaults to true. * @param confusion Whether resetStatus should include confusion or not; defaults to false. + * @param reloadAssets Whether to reload the assets or not; defaults to false. */ - resetStatus(revive: boolean = true, confusion: boolean = false): void { + resetStatus(revive: boolean = true, confusion: boolean = false, reloadAssets: boolean = false): void { const lastStatus = this.status?.effect; if (!revive && lastStatus === StatusEffect.FAINT) { return; @@ -2545,6 +2546,9 @@ export default abstract class Pokemon extends Phaser.GameObjects.Container { this.lapseTag(BattlerTagType.CONFUSED); } } + if (reloadAssets) { + this.loadAssets(false).then(() => this.playAnim()); + } } primeSummonData(summonDataPrimer: PokemonSummonData): void { diff --git a/src/modifier/modifier.ts b/src/modifier/modifier.ts index 832c16ee4a9..85746e30bb6 100644 --- a/src/modifier/modifier.ts +++ b/src/modifier/modifier.ts @@ -1091,8 +1091,7 @@ export class PokemonInstantReviveModifier extends PokemonHeldItemModifier { pokemon.scene.unshiftPhase(new PokemonHealPhase(pokemon.scene, pokemon.getBattlerIndex(), Math.max(Math.floor(pokemon.getMaxHp() / 2), 1), getPokemonMessage(pokemon, ` was revived\nby its ${this.type.name}!`), false, false, true)); - pokemon.resetStatus(); - + pokemon.resetStatus(true, false, true); return true; }