From 7dd18320729ff94f84e682e5a1c73d6d6238334d Mon Sep 17 00:00:00 2001 From: James Diefenbach <105332964+j-diefenbach@users.noreply.github.com> Date: Tue, 10 Sep 2024 23:23:13 +1000 Subject: [PATCH 1/3] [Hotfix] fix UI transition causing unusual freezes after egg summary shown (#4126) * console logs n stuff * fix bad ui transition for egg summary freeze bug (logs included) * cleanup egg lapse phase * touchup * add back removed whitespace * remove console logs --------- Co-authored-by: James Diefenbach --- src/phases/egg-summary-phase.ts | 6 +++--- src/ui/egg-summary-ui-handler.ts | 3 +-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/phases/egg-summary-phase.ts b/src/phases/egg-summary-phase.ts index 1aa432829a1..75c6939daf1 100644 --- a/src/phases/egg-summary-phase.ts +++ b/src/phases/egg-summary-phase.ts @@ -43,9 +43,9 @@ export class EggSummaryPhase extends Phase { } end() { - this.eggHatchHandler.clear(); - this.scene.ui.setModeForceTransition(Mode.MESSAGE).then(() => {}); this.scene.time.delayedCall(250, () => this.scene.setModifiersVisible(true)); - super.end(); + this.scene.ui.setModeForceTransition(Mode.MESSAGE).then(() => { + super.end(); + }); } } diff --git a/src/ui/egg-summary-ui-handler.ts b/src/ui/egg-summary-ui-handler.ts index af82ab33438..52516196093 100644 --- a/src/ui/egg-summary-ui-handler.ts +++ b/src/ui/egg-summary-ui-handler.ts @@ -97,6 +97,7 @@ export default class EggSummaryUiHandler extends MessageUiHandler { this.pokemonIconsContainer.removeAll(true); this.eggHatchBg.setVisible(false); this.getUi().hideTooltip(); + // Note: Questions on garbage collection go to @frutescens const activeKeys = this.scene.getActiveKeys(); // Removing unnecessary sprites from animation manager @@ -117,7 +118,6 @@ export default class EggSummaryUiHandler extends MessageUiHandler { this.eggHatchData.length = 0; // Removes Pokemon icons in EggSummaryUiHandler this.iconAnimHandler.removeAll(); - console.log("Egg Summary Handler cleared"); } /** @@ -256,7 +256,6 @@ export default class EggSummaryUiHandler extends MessageUiHandler { if (phase instanceof EggSummaryPhase) { phase.end(); } - ui.revertMode(); success = true; } else { const count = this.eggHatchData.length; From bd4729b4c5f9c38addfadf662f002572b95b9fa9 Mon Sep 17 00:00:00 2001 From: "Amani H." <109637146+xsn34kzx@users.noreply.github.com> Date: Tue, 10 Sep 2024 11:53:40 -0400 Subject: [PATCH 2/3] [Hotfix] Fix Lapsing Modifiers Not Rolling (#4152) --- src/modifier/modifier.ts | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/modifier/modifier.ts b/src/modifier/modifier.ts index c1d58a7bf39..1cd8ddf57d0 100644 --- a/src/modifier/modifier.ts +++ b/src/modifier/modifier.ts @@ -367,6 +367,10 @@ export abstract class LapsingPersistentModifier extends PersistentModifier { return container; } + getIconStackText(_scene: BattleScene, _virtual?: boolean): Phaser.GameObjects.BitmapText | null { + return null; + } + getBattleCount(): number { return this.battleCount; } @@ -384,7 +388,8 @@ export abstract class LapsingPersistentModifier extends PersistentModifier { } getMaxStackCount(_scene: BattleScene, _forThreshold?: boolean): number { - return 1; + // Must be an abitrary number greater than 1 + return 2; } } @@ -787,7 +792,7 @@ export class TerastallizeModifier extends LapsingPokemonHeldItemModifier { /** * Modifier used for held items, specifically vitamins like Carbos, Hp Up, etc., that * increase the value of a given {@linkcode PermanentStat}. - * @extends LapsingPersistentModifier + * @extends PokemonHeldItemModifier * @see {@linkcode apply} */ export class BaseStatModifier extends PokemonHeldItemModifier { From 4808c07cf9e92714e4b7c0ba77a6b5e96fbe9c34 Mon Sep 17 00:00:00 2001 From: "Amani H." <109637146+xsn34kzx@users.noreply.github.com> Date: Tue, 10 Sep 2024 18:05:48 -0400 Subject: [PATCH 3/3] [Hotfix] Fix System Data Conversion Failure 2 (#4159) --- src/system/version-converter.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/system/version-converter.ts b/src/system/version-converter.ts index d54238812c8..f7996124886 100644 --- a/src/system/version-converter.ts +++ b/src/system/version-converter.ts @@ -76,7 +76,7 @@ export function applySystemDataPatches(data: SystemSaveData) { if (data.starterData) { // Migrate ability starter data if empty for caught species Object.keys(data.starterData).forEach(sd => { - if (data.dexData[sd].caughtAttr && !data.starterData[sd].abilityAttr) { + if (data.dexData[sd]?.caughtAttr && (data.starterData[sd] && !data.starterData[sd].abilityAttr)) { data.starterData[sd].abilityAttr = 1; } }); @@ -104,9 +104,11 @@ export function applySystemDataPatches(data: SystemSaveData) { // --- PATCHES --- // Fix Starter Data - if (data.starterData) { - for (const starterId of defaultStarterSpecies) { + for (const starterId of defaultStarterSpecies) { + if (data.starterData[starterId]?.abilityAttr) { data.starterData[starterId].abilityAttr |= AbilityAttr.ABILITY_1; + } + if (data.dexData[starterId]?.caughtAttr) { data.dexData[starterId].caughtAttr |= DexAttr.FEMALE; } }