Fix bug with rival dialogue not using gender

pull/14/head
Flashfyre 2024-02-09 01:06:21 -05:00
parent e8d7bab4e0
commit 6daadbd81a
1 changed files with 8 additions and 2 deletions

View File

@ -581,7 +581,10 @@ export class EncounterPhase extends BattlePhase {
doSummon();
else {
let message: string;
this.scene.executeWithSeedOffset(() => message = Phaser.Math.RND.pick(this.scene.currentBattle.trainer.config.encounterMessages), this.scene.currentBattle.waveIndex);
if (trainer.config.hasGenders && trainer.config.encounterMessages.length === 2)
message = this.scene.currentBattle.trainer.config.encounterMessages[trainer.female ? 1 : 0];
else
this.scene.executeWithSeedOffset(() => message = Phaser.Math.RND.pick(this.scene.currentBattle.trainer.config.encounterMessages), this.scene.currentBattle.waveIndex);
this.scene.ui.showDialogue(message, trainer.getName(), null, doSummon, null, true);
}
}
@ -2748,7 +2751,10 @@ export class TrainerVictoryPhase extends BattlePhase {
let showMessageAndEnd = () => this.end();
if (defeatMessages.length) {
let message: string;
this.scene.executeWithSeedOffset(() => message = Phaser.Math.RND.pick(this.scene.currentBattle.trainer.config.victoryMessages), this.scene.currentBattle.waveIndex);
if (this.scene.currentBattle.trainer.config.hasGenders && this.scene.currentBattle.trainer.config.victoryMessages.length === 2)
message = this.scene.currentBattle.trainer.config.encounterMessages[this.scene.currentBattle.trainer.female ? 1 : 0];
else
this.scene.executeWithSeedOffset(() => message = Phaser.Math.RND.pick(this.scene.currentBattle.trainer.config.victoryMessages), this.scene.currentBattle.waveIndex);
const messagePages = message.split(/\$/g).map(m => m.trim());
for (let p = messagePages.length - 1; p >= 0; p--) {