extend MysteryEncounterOptionBuilder
This commit is contained in:
parent
c4e3a28585
commit
b23664cb9e
|
@ -1,4 +1,4 @@
|
||||||
import { OptionTextDisplay } from "#app/data/mystery-encounters/mystery-encounter-dialogue";
|
import { OptionTextDisplay, TextDisplay } from "#app/data/mystery-encounters/mystery-encounter-dialogue";
|
||||||
import { Moves } from "#app/enums/moves.js";
|
import { Moves } from "#app/enums/moves.js";
|
||||||
import { PlayerPokemon } from "#app/field/pokemon";
|
import { PlayerPokemon } from "#app/field/pokemon";
|
||||||
import BattleScene from "../../battle-scene";
|
import BattleScene from "../../battle-scene";
|
||||||
|
@ -216,8 +216,48 @@ export class MysteryEncounterOptionBuilder implements Partial<MysteryEncounterOp
|
||||||
return Object.assign(this, { secondaryPokemonRequirements: this.secondaryPokemonRequirements });
|
return Object.assign(this, { secondaryPokemonRequirements: this.secondaryPokemonRequirements });
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Se the full dialogue object to the option. Will override anything already set
|
||||||
|
*
|
||||||
|
* @param dialogue see {@linkcode OptionTextDisplay}
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
withDialogue(dialogue: OptionTextDisplay) {
|
withDialogue(dialogue: OptionTextDisplay) {
|
||||||
this.dialogue = dialogue;
|
this.dialogue = dialogue;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the button label and disabled label of the option
|
||||||
|
*
|
||||||
|
* @param label the button label
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
withButtonLabel(label: string, disabledLabel?: string) {
|
||||||
|
this.dialogue.buttonLabel = label;
|
||||||
|
this.dialogue.disabledButtonLabel = disabledLabel ?? label;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* Set the button tooltip and disabled tooltip of the option
|
||||||
|
*
|
||||||
|
* @param tooltip the button tooltip
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
withButtonTooltip(tooltip: string, disabledTooltip?: string) {
|
||||||
|
this.dialogue.buttonTooltip = tooltip;
|
||||||
|
this.dialogue.disabledButtonTooltip = disabledTooltip;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set the dialogue to display when the player selects the option
|
||||||
|
*
|
||||||
|
* @param dialogue the text to display on selecting the option
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
withSelectedDialogue(dialogue: TextDisplay[]) {
|
||||||
|
this.dialogue.selected = dialogue;
|
||||||
|
return this;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue