diff --git a/src/phases/mystery-encounter-phases.ts b/src/phases/mystery-encounter-phases.ts index a3672438c55..6c9d3fd8c1d 100644 --- a/src/phases/mystery-encounter-phases.ts +++ b/src/phases/mystery-encounter-phases.ts @@ -30,19 +30,18 @@ import { SeenEncounterData } from "#app/data/mystery-encounters/mystery-encounte * - Clearing of phase queues to enter the Mystery Encounter game state * - Management of session data related to MEs * - Initialization of ME option select menu and UI - * - Execute onPreOptionPhase() logic if it exists for the selected option - * - Display any OptionTextDisplay.selected type dialogue that is set in the MysteryEncounterDialogue dialogue tree for selected option - * - Queuing of the MysteryEncounterOptionSelectedPhase + * - Execute {@linkcode MysteryEncounter.onPreOptionPhase} logic if it exists for the selected option + * - Display any `OptionTextDisplay.selected` type dialogue that is set in the {@linkcode MysteryEncounterDialogue} dialogue tree for selected option + * - Queuing of the {@linkcode MysteryEncounterOptionSelectedPhase} */ export class MysteryEncounterPhase extends Phase { private readonly FIRST_DIALOGUE_PROMPT_DELAY = 300; optionSelectSettings?: OptionSelectSettings; /** - * - * @param scene - * @param optionSelectSettings - allows overriding the typical options of an encounter with new ones * Mostly useful for having repeated queries during a single encounter, where the queries and options may differ each time + * @param scene + * @param optionSelectSettings allows overriding the typical options of an encounter with new ones */ constructor(scene: BattleScene, optionSelectSettings?: OptionSelectSettings) { super(scene); @@ -114,7 +113,7 @@ export class MysteryEncounterPhase extends Phase { } /** - * Queues MysteryEncounterOptionSelectedPhase, displays option.selected dialogue and ends phase + * Queues {@linkcode MysteryEncounterOptionSelectedPhase}, displays option.selected dialogue and ends phase */ continueEncounter() { const endDialogueAndContinueEncounter = () => { @@ -161,7 +160,7 @@ export class MysteryEncounterPhase extends Phase { /** * Will handle (in order): - * - Execute onOptionSelect() logic if it exists for the selected option + * - Execute {@linkcode MysteryEncounter.onOptionSelect} logic if it exists for the selected option * * It is important to point out that no phases are directly queued by any logic within this phase * Any phase that is meant to follow this one MUST be queued via the onOptionSelect() logic of the selected option @@ -176,10 +175,10 @@ export class MysteryEncounterOptionSelectedPhase extends Phase { /** * Will handle (in order): - * - Execute onOptionSelect() logic if it exists for the selected option + * - Execute {@linkcode MysteryEncounter.onOptionSelect} logic if it exists for the selected option * - * It is important to point out that no phases are directly queued by any logic within this phase - * Any phase that is meant to follow this one MUST be queued via the onOptionSelect() logic of the selected option + * It is important to point out that no phases are directly queued by any logic within this phase. + * Any phase that is meant to follow this one MUST be queued via the {@linkcode MysteryEncounter.onOptionSelect} logic of the selected option. */ start() { super.start(); @@ -203,9 +202,9 @@ export class MysteryEncounterOptionSelectedPhase extends Phase { /** * Runs at the beginning of an Encounter's battle - * Will clean up any residual flinches, Endure, etc. that are left over from startOfBattleEffects - * Will also handle Game Overs, switches, etc. that could happen from handleMysteryEncounterBattleStartEffects - * See [TurnEndPhase](../phases.ts) for more details + * Will clean up any residual flinches, Endure, etc. that are left over from {@linkcode MysteryEncounter.startOfBattleEffects} + * Will also handle Game Overs, switches, etc. that could happen from {@linkcode handleMysteryEncounterBattleStartEffects} + * See {@linkcode TurnEndPhase} for more details */ export class MysteryEncounterBattleStartCleanupPhase extends Phase { constructor(scene: BattleScene) { @@ -213,7 +212,7 @@ export class MysteryEncounterBattleStartCleanupPhase extends Phase { } /** - * Cleans up TURN_END tags, any PostTurnEffectPhases, checks for Pokemon switches, then continues + * Cleans up `TURN_END` tags, any {@linkcode PostTurnStatusEffectPhase}s, checks for Pokemon switches, then continues */ start() { super.start(); @@ -260,7 +259,7 @@ export class MysteryEncounterBattleStartCleanupPhase extends Phase { * - Setting BGM * - Showing intro dialogue for an enemy trainer or wild Pokemon * - Sliding in the visuals for enemy trainer or wild Pokemon, as well as handling summoning animations - * - Queue the SummonPhases, PostSummonPhases, etc., required to initialize the phase queue for a battle + * - Queue the {@linkcode SummonPhase}s, {@linkcode PostSummonPhase}s, etc., required to initialize the phase queue for a battle */ export class MysteryEncounterBattlePhase extends Phase { disableSwitch: boolean; @@ -307,7 +306,7 @@ export class MysteryEncounterBattlePhase extends Phase { } /** - * Queues SummonPhases for the new battle, and handles trainer animations/dialogue if Trainer battle + * Queues {@linkcode SummonPhase}s for the new battle, and handles trainer animations/dialogue if it's a Trainer battle * @param scene * @private */ @@ -376,7 +375,7 @@ export class MysteryEncounterBattlePhase extends Phase { } /** - * Initiate SummonPhases, scanner phases, PostSummon phases, etc. + * Initiate {@linkcode SummonPhase}s, {@linkcode ScanIvsPhase}, {@linkcode PostSummonPhase}s, etc. * @param scene * @private */ @@ -472,10 +471,10 @@ export class MysteryEncounterBattlePhase extends Phase { * * OR * - * - Any encounter reward logic that is set within MysteryEncounter doEncounterExp - * - Any encounter reward logic that is set within MysteryEncounter doEncounterRewards + * - Any encounter reward logic that is set within {@linkcode MysteryEncounter.doEncounterExp} + * - Any encounter reward logic that is set within {@linkcode MysteryEncounter.doEncounterRewards} * - Otherwise, can add a no-reward-item shop with only Potions, etc. if addHealPhase is true - * - Queuing of the PostMysteryEncounterPhase + * - Queuing of the {@linkcode PostMysteryEncounterPhase} */ export class MysteryEncounterRewardsPhase extends Phase { addHealPhase: boolean; @@ -486,7 +485,7 @@ export class MysteryEncounterRewardsPhase extends Phase { } /** - * Runs {@link MysteryEncounter.doContinueEncounter} and ends phase, OR {@link MysteryEncounter.onRewards} then continues encounter + * Runs {@linkcode MysteryEncounter.doContinueEncounter} and ends phase, OR {@linkcode MysteryEncounter.onRewards} then continues encounter */ start() { super.start(); @@ -511,7 +510,7 @@ export class MysteryEncounterRewardsPhase extends Phase { } /** - * Queues encounter EXP and rewards phases, PostMysteryEncounterPhase, and ends phase + * Queues encounter EXP and rewards phases, {@linkcode PostMysteryEncounterPhase}, and ends phase */ doEncounterRewardsAndContinue() { const encounter = this.scene.currentBattle.mysteryEncounter!; @@ -534,7 +533,7 @@ export class MysteryEncounterRewardsPhase extends Phase { /** * Will handle (in order): - * - onPostOptionSelect logic (based on an option that was selected) + * - {@linkcode MysteryEncounter.onPostOptionSelect} logic (based on an option that was selected) * - Showing any outro dialogue messages * - Cleanup of any leftover intro visuals * - Queuing of the next wave @@ -549,7 +548,7 @@ export class PostMysteryEncounterPhase extends Phase { } /** - * Runs {@link MysteryEncounter.onPostOptionSelect} then continues encounter + * Runs {@linkcode MysteryEncounter.onPostOptionSelect} then continues encounter */ start() { super.start(); @@ -569,7 +568,7 @@ export class PostMysteryEncounterPhase extends Phase { } /** - * Queues NewBattlePhase, plays outro dialogue and ends phase + * Queues {@linkcode NewBattlePhase}, plays outro dialogue and ends phase */ continueEncounter() { const endPhase = () => { diff --git a/src/phases/select-modifier-phase.ts b/src/phases/select-modifier-phase.ts index cb280a2ca80..39a0da1167f 100644 --- a/src/phases/select-modifier-phase.ts +++ b/src/phases/select-modifier-phase.ts @@ -14,14 +14,14 @@ import { isNullOrUndefined } from "#app/utils"; export class SelectModifierPhase extends BattlePhase { private rerollCount: integer; - private modifierTiers: ModifierTier[]; + private modifierTiers?: ModifierTier[]; private customModifierSettings?: CustomModifierSettings; constructor(scene: BattleScene, rerollCount: integer = 0, modifierTiers?: ModifierTier[], customModifierSettings?: CustomModifierSettings) { super(scene); this.rerollCount = rerollCount; - this.modifierTiers = modifierTiers!; // TODO: is this bang correct? + this.modifierTiers = modifierTiers; this.customModifierSettings = customModifierSettings; } diff --git a/src/system/game-data.ts b/src/system/game-data.ts index d017b8a922f..04fef4a81da 100644 --- a/src/system/game-data.ts +++ b/src/system/game-data.ts @@ -1561,7 +1561,7 @@ export class GameData { * @param incrementCount * @param fromEgg * @param showMessage - * @returns - true if Pokemon catch unlocked a new starter, false if Pokemon catch did not unlock a starter + * @returns `true` if Pokemon catch unlocked a new starter, `false` if Pokemon catch did not unlock a starter */ setPokemonCaught(pokemon: Pokemon, incrementCount: boolean = true, fromEgg: boolean = false, showMessage: boolean = true): Promise { return this.setPokemonSpeciesCaught(pokemon, pokemon.species, incrementCount, fromEgg, showMessage); @@ -1573,7 +1573,7 @@ export class GameData { * @param incrementCount * @param fromEgg * @param showMessage - * @returns - true if Pokemon catch unlocked a new starter, false if Pokemon catch did not unlock a starter + * @returns `true` if Pokemon catch unlocked a new starter, `false` if Pokemon catch did not unlock a starter */ setPokemonSpeciesCaught(pokemon: Pokemon, species: PokemonSpecies, incrementCount: boolean = true, fromEgg: boolean = false, showMessage: boolean = true): Promise { return new Promise(resolve => { @@ -1694,8 +1694,8 @@ export class GameData { * * @param species * @param eggMoveIndex - * @param showMessage - Default true. If true, will display message for unlocked egg move - * @param prependSpeciesToMessage - Default false. If true, will change message from "X Egg Move Unlocked!" to "Bulbasaur X Egg Move Unlocked!" + * @param showMessage Default true. If true, will display message for unlocked egg move + * @param prependSpeciesToMessage Default false. If true, will change message from "X Egg Move Unlocked!" to "Bulbasaur X Egg Move Unlocked!" */ setEggMoveUnlocked(species: PokemonSpecies, eggMoveIndex: integer, showMessage: boolean = true, prependSpeciesToMessage: boolean = false): Promise { return new Promise(resolve => {