start dialogue refactor

This commit is contained in:
ImperialSympathizer 2024-07-18 11:35:57 -04:00
parent 1ffefe744d
commit a3664b4624
13 changed files with 365 additions and 33 deletions

View File

@ -1,28 +1,23 @@
import { queueEncounterMessage, showEncounterText } from "#app/data/mystery-encounters/utils/encounter-dialogue-utils";
import {
leaveEncounterWithoutBattle,
setEncounterRewards
} from "#app/data/mystery-encounters/utils/encounter-phase-utils";
import { leaveEncounterWithoutBattle, setEncounterRewards } from "#app/data/mystery-encounters/utils/encounter-phase-utils";
import { getHighestLevelPlayerPokemon, koPlayerPokemon } from "#app/data/mystery-encounters/utils/encounter-pokemon-utils";
import { ModifierTier } from "#app/modifier/modifier-tier";
import { randSeedInt } from "#app/utils.js";
import { MysteryEncounterType } from "#enums/mystery-encounter-type";
import BattleScene from "../../../battle-scene";
import IMysteryEncounter, {
MysteryEncounterBuilder,
MysteryEncounterTier,
} from "../mystery-encounter";
import IMysteryEncounter, { MysteryEncounterBuilder, MysteryEncounterTier, } from "../mystery-encounter";
import { EncounterOptionMode, MysteryEncounterOptionBuilder } from "../mystery-encounter-option";
/** i18n namespace for encounter */
const namespace = "mysteryEncounter:dark_deal";
/**
* Mysterious Chest encounter.
* @see {@link https://github.com/AsdarDevelops/PokeRogue-Events/issues/32 | GitHub Issue #32}
* @see For biome requirements check [mysteryEncountersByBiome](../mystery-encounters.ts)
*/
export const MysteriousChestEncounter: IMysteryEncounter =
MysteryEncounterBuilder.withEncounterType(
MysteryEncounterType.MYSTERIOUS_CHEST
)
MysteryEncounterBuilder.withEncounterType(MysteryEncounterType.MYSTERIOUS_CHEST)
.withEncounterTier(MysteryEncounterTier.COMMON)
.withSceneWaveRangeRequirement(10, 180) // waves 2 to 180
.withHideIntroVisuals(false)
@ -39,21 +34,21 @@ export const MysteriousChestEncounter: IMysteryEncounter =
])
.withIntroDialogue([
{
text: "mysteryEncounter:mysterious_chest_intro_message",
text: "${namespace}:intro:message",
},
])
.withTitle("mysteryEncounter:mysterious_chest_title")
.withDescription("mysteryEncounter:mysterious_chest_description")
.withQuery("mysteryEncounter:mysterious_chest_query")
.withTitle(`${namespace}:title`)
.withDescription(`${namespace}:description`)
.withQuery(`${namespace}:query`)
.withOption(
new MysteryEncounterOptionBuilder()
.withOptionMode(EncounterOptionMode.DEFAULT)
.withDialogue({
buttonLabel: "mysteryEncounter:mysterious_chest_option_1_label",
buttonTooltip: "mysteryEncounter:mysterious_chest_option_1_tooltip",
buttonLabel: `${namespace}:option:1:label`,
buttonTooltip: `${namespace}:option:1:tooltip`,
selected: [
{
text: "mysteryEncounter:mysterious_chest_option_1_selected_message",
text: `${namespace}:option:1:selected`,
},
],
})
@ -78,7 +73,7 @@ export const MysteriousChestEncounter: IMysteryEncounter =
],
});
// Display result message then proceed to rewards
queueEncounterMessage(scene, "mysteryEncounter:mysterious_chest_option_1_normal_result");
queueEncounterMessage(scene, `${namespace}:option:1:normal`);
leaveEncounterWithoutBattle(scene);
} else if (roll > 40) {
// Choose between 3 ULTRA tier items (20%)
@ -90,7 +85,7 @@ export const MysteriousChestEncounter: IMysteryEncounter =
],
});
// Display result message then proceed to rewards
queueEncounterMessage(scene, "mysteryEncounter:mysterious_chest_option_1_good_result");
queueEncounterMessage(scene, `${namespace}:option:1:good`);
leaveEncounterWithoutBattle(scene);
} else if (roll > 36) {
// Choose between 2 ROGUE tier items (4%)
@ -98,7 +93,7 @@ export const MysteriousChestEncounter: IMysteryEncounter =
guaranteedModifierTiers: [ModifierTier.ROGUE, ModifierTier.ROGUE],
});
// Display result message then proceed to rewards
queueEncounterMessage(scene, "mysteryEncounter:mysterious_chest_option_1_great_result");
queueEncounterMessage(scene, `${namespace}:option:1:great`);
leaveEncounterWithoutBattle(scene);
} else if (roll > 35) {
// Choose 1 MASTER tier item (1%)
@ -106,7 +101,7 @@ export const MysteriousChestEncounter: IMysteryEncounter =
guaranteedModifierTiers: [ModifierTier.MASTER],
});
// Display result message then proceed to rewards
queueEncounterMessage(scene, "mysteryEncounter:mysterious_chest_option_1_amazing_result");
queueEncounterMessage(scene, `${namespace}:option:1:amazing`);
leaveEncounterWithoutBattle(scene);
} else {
// Your highest level unfainted Pok<6F>mon gets OHKO. Progress with no rewards (35%)
@ -119,7 +114,7 @@ export const MysteriousChestEncounter: IMysteryEncounter =
scene.currentBattle.mysteryEncounter.setDialogueToken("pokeName", highestLevelPokemon.name);
// Show which Pokemon was KOed, then leave encounter with no rewards
// Does this synchronously so that game over doesn't happen over result message
await showEncounterText(scene, "mysteryEncounter:mysterious_chest_option_1_bad_result").then(() => {
await showEncounterText(scene, `${namespace}:option:1:bad`).then(() => {
leaveEncounterWithoutBattle(scene);
});
}
@ -128,11 +123,11 @@ export const MysteriousChestEncounter: IMysteryEncounter =
)
.withSimpleOption(
{
buttonLabel: "mysteryEncounter:mysterious_chest_option_2_label",
buttonTooltip: "mysteryEncounter:mysterious_chest_option_2_tooltip",
buttonLabel: `${namespace}:option:2:label`,
buttonTooltip: `${namespace}:option:2:tooltip`,
selected: [
{
text: "mysteryEncounter:mysterious_chest_option_2_selected_message",
text: `${namespace}:option:2:selected`,
},
],
},

View File

@ -0,0 +1,31 @@
export const darkDealDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};

View File

@ -0,0 +1,31 @@
export const departmentStoreSaleDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};

View File

@ -0,0 +1,31 @@
export const fieldTripDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};

View File

@ -0,0 +1,31 @@
export const fieryFalloutDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};

View File

@ -0,0 +1,31 @@
export const fightOrFlightDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};

View File

@ -1,7 +1,7 @@
export const lostAtSeaDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
intro: "Wandering aimlessly through the sea, you've effectively gotten nowhere.",
title: "Lost at Sea",
description: "The sea is turbulent in this area, and you're running out of energy.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
@ -9,16 +9,16 @@ export const lostAtSeaDialogue = {
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
selected: `{{option1PrimaryName}} swims ahead, guiding you back on track.
\${{option1PrimaryName}} seems to also have gotten stronger in this time of need!`,
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
selected: `{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.
\${{option2PrimaryName}} seems to also have gotten stronger in this time of need!`,
},
3: {
label: "Wander aimlessly",

View File

@ -0,0 +1,31 @@
export const mysteriousChallengersDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};

View File

@ -0,0 +1,27 @@
export const mysteriousChestDialogue = {
intro: "You found...@d{32} a chest?",
title: "The Mysterious Chest",
description: "A beautifully ornamented chest stands on the ground. There must be something good inside... right?",
query: "Will you open it?",
option: {
1: {
label: "Open it",
tooltip: "@[SUMMARY_BLUE]{(35%) Something terrible}\n@[SUMMARY_GREEN]{(40%) Okay Rewards}\n@[SUMMARY_GREEN]{(20%) Good Rewards}\n@[SUMMARY_GREEN]{(4%) Great Rewards}\n@[SUMMARY_GREEN]{(1%) Amazing Rewards}",
selected: "You open the chest to find...",
normal: "Just some normal tools and items.",
good: "Some pretty nice tools and items.",
great: "A couple great tools and items!",
amazing: "Whoa! An amazing item!",
bad: `Oh no!@d{32}\nThe chest was trapped!
$Your {{pokeName}} jumps in front of you\nbut is KOed in the process.`,
},
2: {
label: "It's too risky, leave",
tooltip: "(-) No Rewards",
selected: "You hurry along your way,\nwith a slight feeling of regret.",
},
}
};

View File

@ -0,0 +1,31 @@
export const safariZoneDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};

View File

@ -0,0 +1,31 @@
export const shadyVitaminDealerDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};

View File

@ -0,0 +1,31 @@
export const sleepingSnorlaxDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};

View File

@ -0,0 +1,31 @@
export const trainingSessionDialogue = {
intro: "Wandering aimlessly, you effectively get nowhere.",
title: "Lost at sea",
description: "The sea is turbulent in this area, and you seem to be running out of fuel.\nThis is bad. Is there a way out of the situation?",
query: "What will you do?",
option: {
1: {
label: "{{option1PrimaryName}} can help",
label_disabled: "Can't {{option1RequiredMove}}",
tooltip: "(+) {{option1PrimaryName}} saves you.\n(+) {{option1PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option1RequiredMove}} on",
selected:
"{{option1PrimaryName}} swims ahead, guiding you back on track.\n{{option1PrimaryName}} seems to also have gotten stronger in this time of need.",
},
2: {
label: "{{option2PrimaryName}} can help",
label_disabled: "Can't {{option2RequiredMove}}",
tooltip: "(+) {{option2PrimaryName}} saves you.\n(+) {{option2PrimaryName}} gains some EXP.",
tooltip_disabled: "You have no Pokémon to {{option2RequiredMove}} with",
selected:
"{{option2PrimaryName}} flies ahead of your boat, guiding you back on track.\n{{option2PrimaryName}} seems to also have gotten stronger in this time of need.",
},
3: {
label: "Wander aimlessly",
tooltip: "(-) Each of your Pokémon lose {{damagePercentage}}% of their total HP.",
selected: `You float about in the boat, steering it aimlessly until you finally get back on track.
$You and your Pokémon get very fatigued during the whole ordeal.`,
},
},
outro: "You are back on track."
};