From 6d8ea0ad797c43db565cc72205251bb6a03e873b Mon Sep 17 00:00:00 2001 From: Flashfyre Date: Wed, 14 Feb 2024 15:33:02 -0500 Subject: [PATCH] Fix crash when trainer has no encounter or victory messages --- src/battle-phases.ts | 4 ++-- src/battle.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/battle-phases.ts b/src/battle-phases.ts index dddff1dc209..1e234a35838 100644 --- a/src/battle-phases.ts +++ b/src/battle-phases.ts @@ -580,7 +580,7 @@ export class EncounterPhase extends BattlePhase { const encounterMessages = this.scene.currentBattle.trainer.getEncounterMessages(); - if (!encounterMessages.length) + if (!encounterMessages?.length) doSummon(); else { let message: string; @@ -2746,7 +2746,7 @@ export class TrainerVictoryPhase extends BattlePhase { this.scene.ui.showText(`You defeated\n${this.scene.currentBattle.trainer.getName(true)}!`, null, () => { const victoryMessages = this.scene.currentBattle.trainer.getVictoryMessages(); let showMessageAndEnd = () => this.end(); - if (victoryMessages.length) { + if (victoryMessages?.length) { let message: string; this.scene.executeWithSeedOffset(() => message = Phaser.Math.RND.pick(victoryMessages), this.scene.currentBattle.waveIndex); const messagePages = message.split(/\$/g).map(m => m.trim()); diff --git a/src/battle.ts b/src/battle.ts index 7ab47de7fab..4834bbda354 100644 --- a/src/battle.ts +++ b/src/battle.ts @@ -126,7 +126,7 @@ export default class Battle { getBgmOverride(scene: BattleScene): string { const battlers = this.enemyParty.slice(0, this.getBattlerCount()); if (this.battleType === BattleType.TRAINER) { - if (!this.started && this.trainer.config.encounterBgm && this.trainer.getEncounterMessages().length) + if (!this.started && this.trainer.config.encounterBgm && this.trainer.getEncounterMessages()?.length) return `encounter_${this.trainer.getEncounterBgm()}`; return this.trainer.getBattleBgm(); } else if (this.gameMode === GameMode.CLASSIC && this.waveIndex > 195 && this.battleSpec !== BattleSpec.FINAL_BOSS)