rename to Expert Pokemon Breeder

This commit is contained in:
ImperialSympathizer 2024-09-19 15:28:34 -04:00
parent 280db86999
commit 3085f2e224
14 changed files with 54 additions and 51 deletions

View File

@ -1,7 +1,7 @@
{ {
"textures": [ "textures": [
{ {
"image": "expert_breeder.png", "image": "expert_pokemon_breeder.png",
"format": "RGBA8888", "format": "RGBA8888",
"size": { "size": {
"w": 39, "w": 39,

View File

Before

Width:  |  Height:  |  Size: 1006 B

After

Width:  |  Height:  |  Size: 1006 B

View File

@ -1139,7 +1139,10 @@ export default class BattleScene extends SceneBase {
let battleConfig: FixedBattleConfig | null = null; let battleConfig: FixedBattleConfig | null = null;
this.newArena(Biome.SPACE); this.fieldUI.setVisible(false);
this.trainer.setVisible(false);
this.ui.setVisible(false);
this.modifierBar.setVisible(false);
this.resetSeed(newWaveIndex); this.resetSeed(newWaveIndex);

View File

@ -26,9 +26,9 @@ import { MysteryEncounterOptionMode } from "#enums/mystery-encounter-option-mode
import { achvs } from "#app/system/achv"; import { achvs } from "#app/system/achv";
/** the i18n namespace for the encounter */ /** the i18n namespace for the encounter */
const namespace = "mysteryEncounter:expertBreeder"; const namespace = "mysteryEncounter:expertPokemonBreeder";
const trainerNameKey = "trainerNames:expert_breeder"; const trainerNameKey = "trainerNames:expert_pokemon_breeder";
const FIRST_STAGE_EVOLUTION_WAVE = 30; const FIRST_STAGE_EVOLUTION_WAVE = 30;
const SECOND_STAGE_EVOLUTION_WAVE = 45; const SECOND_STAGE_EVOLUTION_WAVE = 45;
@ -73,12 +73,12 @@ const POOL_2_POKEMON: (Species | BreederSpeciesEvolution)[][] = [
]; ];
/** /**
* The Expert Breeder encounter. * The Expert Pokémon Breeder encounter.
* @see {@link https://github.com/pagefaultgames/pokerogue/issues/3818 | GitHub Issue #3818} * @see {@link https://github.com/pagefaultgames/pokerogue/issues/3818 | GitHub Issue #3818}
* @see For biome requirements check {@linkcode mysteryEncountersByBiome} * @see For biome requirements check {@linkcode mysteryEncountersByBiome}
*/ */
export const TheExpertBreederEncounter: MysteryEncounter = export const TheExpertPokemonBreederEncounter: MysteryEncounter =
MysteryEncounterBuilder.withEncounterType(MysteryEncounterType.THE_EXPERT_BREEDER) MysteryEncounterBuilder.withEncounterType(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER)
.withEncounterTier(MysteryEncounterTier.ULTRA) .withEncounterTier(MysteryEncounterTier.ULTRA)
.withSceneWaveRangeRequirement(...CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES) .withSceneWaveRangeRequirement(...CLASSIC_MODE_MYSTERY_ENCOUNTER_WAVES)
.withScenePartySizeRequirement(4, 6, true) // Must have at least 4 legal pokemon in party .withScenePartySizeRequirement(4, 6, true) // Must have at least 4 legal pokemon in party
@ -114,7 +114,7 @@ export const TheExpertBreederEncounter: MysteryEncounter =
yShadow: -2 yShadow: -2
}, },
{ {
spriteKey: "expert_breeder", spriteKey: "expert_pokemon_breeder",
fileRoot: "trainer", fileRoot: "trainer",
hasShadow: true, hasShadow: true,
x: -14, x: -14,
@ -370,13 +370,13 @@ export const TheExpertBreederEncounter: MysteryEncounter =
function getPartyConfig(scene: BattleScene): EnemyPartyConfig { function getPartyConfig(scene: BattleScene): EnemyPartyConfig {
// Bug type superfan trainer config // Bug type superfan trainer config
const waveIndex = scene.currentBattle.waveIndex; const waveIndex = scene.currentBattle.waveIndex;
const breederConfig = trainerConfigs[TrainerType.EXPERT_BREEDER].clone(); const breederConfig = trainerConfigs[TrainerType.EXPERT_POKEMON_BREEDER].clone();
breederConfig.name = i18next.t(trainerNameKey); breederConfig.name = i18next.t(trainerNameKey);
// First mon is *always* this special cleffa // First mon is *always* this special cleffa
const cleffaSpecies = waveIndex < FIRST_STAGE_EVOLUTION_WAVE ? Species.CLEFFA : waveIndex < FINAL_STAGE_EVOLUTION_WAVE ? Species.CLEFAIRY : Species.CLEFABLE; const cleffaSpecies = waveIndex < FIRST_STAGE_EVOLUTION_WAVE ? Species.CLEFFA : waveIndex < FINAL_STAGE_EVOLUTION_WAVE ? Species.CLEFAIRY : Species.CLEFABLE;
const baseConfig: EnemyPartyConfig = { const baseConfig: EnemyPartyConfig = {
trainerType: TrainerType.EXPERT_BREEDER, trainerType: TrainerType.EXPERT_POKEMON_BREEDER,
pokemonConfigs: [ pokemonConfigs: [
{ {
nickname: i18next.t(`${namespace}.cleffa_1_nickname`), nickname: i18next.t(`${namespace}.cleffa_1_nickname`),

View File

@ -31,7 +31,7 @@ import { BugTypeSuperfanEncounter } from "#app/data/mystery-encounters/encounter
import { FunAndGamesEncounter } from "#app/data/mystery-encounters/encounters/fun-and-games-encounter"; import { FunAndGamesEncounter } from "#app/data/mystery-encounters/encounters/fun-and-games-encounter";
import { UncommonBreedEncounter } from "#app/data/mystery-encounters/encounters/uncommon-breed-encounter"; import { UncommonBreedEncounter } from "#app/data/mystery-encounters/encounters/uncommon-breed-encounter";
import { GlobalTradeSystemEncounter } from "#app/data/mystery-encounters/encounters/global-trade-system-encounter"; import { GlobalTradeSystemEncounter } from "#app/data/mystery-encounters/encounters/global-trade-system-encounter";
import { TheExpertBreederEncounter } from "#app/data/mystery-encounters/encounters/the-expert-breeder-encounter"; import { TheExpertPokemonBreederEncounter } from "#app/data/mystery-encounters/encounters/the-expert-pokemon-breeder-encounter";
/** /**
* Spawn chance: (BASE_MYSTERY_ENCOUNTER_SPAWN_WEIGHT + WIGHT_INCREMENT_ON_SPAWN_MISS * <number of missed spawns>) / MYSTERY_ENCOUNTER_SPAWN_MAX_WEIGHT * Spawn chance: (BASE_MYSTERY_ENCOUNTER_SPAWN_WEIGHT + WIGHT_INCREMENT_ON_SPAWN_MISS * <number of missed spawns>) / MYSTERY_ENCOUNTER_SPAWN_MAX_WEIGHT
@ -186,7 +186,7 @@ const humanTransitableBiomeEncounters: MysteryEncounterType[] = [
MysteryEncounterType.THE_POKEMON_SALESMAN, MysteryEncounterType.THE_POKEMON_SALESMAN,
MysteryEncounterType.AN_OFFER_YOU_CANT_REFUSE, MysteryEncounterType.AN_OFFER_YOU_CANT_REFUSE,
MysteryEncounterType.THE_WINSTRATE_CHALLENGE, MysteryEncounterType.THE_WINSTRATE_CHALLENGE,
MysteryEncounterType.THE_EXPERT_BREEDER MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER
]; ];
const civilizationBiomeEncounters: MysteryEncounterType[] = [ const civilizationBiomeEncounters: MysteryEncounterType[] = [
@ -277,7 +277,7 @@ export const mysteryEncountersByBiome = new Map<Biome, MysteryEncounterType[]>([
MysteryEncounterType.DANCING_LESSONS MysteryEncounterType.DANCING_LESSONS
]], ]],
[Biome.SPACE, [ [Biome.SPACE, [
MysteryEncounterType.THE_EXPERT_BREEDER MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER
]], ]],
[Biome.CONSTRUCTION_SITE, []], [Biome.CONSTRUCTION_SITE, []],
[Biome.JUNGLE, [ [Biome.JUNGLE, [
@ -322,7 +322,7 @@ export function initMysteryEncounters() {
allMysteryEncounters[MysteryEncounterType.FUN_AND_GAMES] = FunAndGamesEncounter; allMysteryEncounters[MysteryEncounterType.FUN_AND_GAMES] = FunAndGamesEncounter;
allMysteryEncounters[MysteryEncounterType.UNCOMMON_BREED] = UncommonBreedEncounter; allMysteryEncounters[MysteryEncounterType.UNCOMMON_BREED] = UncommonBreedEncounter;
allMysteryEncounters[MysteryEncounterType.GLOBAL_TRADE_SYSTEM] = GlobalTradeSystemEncounter; allMysteryEncounters[MysteryEncounterType.GLOBAL_TRADE_SYSTEM] = GlobalTradeSystemEncounter;
allMysteryEncounters[MysteryEncounterType.THE_EXPERT_BREEDER] = TheExpertBreederEncounter; allMysteryEncounters[MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER] = TheExpertPokemonBreederEncounter;
// Add extreme encounters to biome map // Add extreme encounters to biome map
extremeBiomeEncounters.forEach(encounter => { extremeBiomeEncounters.forEach(encounter => {

View File

@ -2311,7 +2311,7 @@ export const trainerConfigs: TrainerConfigs = {
.setPartyTemplates(new TrainerPartyCompoundTemplate(new TrainerPartyTemplate(3, PartyMemberStrength.AVERAGE), new TrainerPartyTemplate(2, PartyMemberStrength.STRONG))), .setPartyTemplates(new TrainerPartyCompoundTemplate(new TrainerPartyTemplate(3, PartyMemberStrength.AVERAGE), new TrainerPartyTemplate(2, PartyMemberStrength.STRONG))),
[TrainerType.BUG_TYPE_SUPERFAN]: new TrainerConfig(++t).setMoneyMultiplier(2.25).setEncounterBgm(TrainerType.ACE_TRAINER) [TrainerType.BUG_TYPE_SUPERFAN]: new TrainerConfig(++t).setMoneyMultiplier(2.25).setEncounterBgm(TrainerType.ACE_TRAINER)
.setPartyTemplates(new TrainerPartyTemplate(2, PartyMemberStrength.AVERAGE)), .setPartyTemplates(new TrainerPartyTemplate(2, PartyMemberStrength.AVERAGE)),
[TrainerType.EXPERT_BREEDER]: new TrainerConfig(++t).setMoneyMultiplier(3).setEncounterBgm(TrainerType.ACE_TRAINER) [TrainerType.EXPERT_POKEMON_BREEDER]: new TrainerConfig(++t).setMoneyMultiplier(3).setEncounterBgm(TrainerType.ACE_TRAINER)
.setPartyTemplates(new TrainerPartyTemplate(3, PartyMemberStrength.STRONG)) .setPartyTemplates(new TrainerPartyTemplate(3, PartyMemberStrength.STRONG))
}; };

View File

@ -29,5 +29,5 @@ export enum MysteryEncounterType {
FUN_AND_GAMES, FUN_AND_GAMES,
UNCOMMON_BREED, UNCOMMON_BREED,
GLOBAL_TRADE_SYSTEM, GLOBAL_TRADE_SYSTEM,
THE_EXPERT_BREEDER THE_EXPERT_POKEMON_BREEDER
} }

View File

@ -107,7 +107,7 @@ export enum TrainerType {
VICKY, VICKY,
VITO, VITO,
BUG_TYPE_SUPERFAN, BUG_TYPE_SUPERFAN,
EXPERT_BREEDER, EXPERT_POKEMON_BREEDER,
BROCK = 200, BROCK = 200,
MISTY, MISTY,

View File

@ -286,6 +286,6 @@
}, },
"BREEDERS_IN_SPACE": { "BREEDERS_IN_SPACE": {
"name": "Breeders in Space!", "name": "Breeders in Space!",
"description": "Beat the Expert Breeder in the Space Biome." "description": "Beat the Expert Pokémon Breeder in the Space Biome."
} }
} }

View File

@ -84,7 +84,7 @@ import bugTypeSuperfan from "#app/locales/en/mystery-encounters/bug-type-superfa
import funAndGames from "#app/locales/en/mystery-encounters/fun-and-games-dialogue.json"; import funAndGames from "#app/locales/en/mystery-encounters/fun-and-games-dialogue.json";
import uncommonBreed from "#app/locales/en/mystery-encounters/uncommon-breed-dialogue.json"; import uncommonBreed from "#app/locales/en/mystery-encounters/uncommon-breed-dialogue.json";
import globalTradeSystem from "#app/locales/en/mystery-encounters/global-trade-system-dialogue.json"; import globalTradeSystem from "#app/locales/en/mystery-encounters/global-trade-system-dialogue.json";
import expertBreeder from "#app/locales/en/mystery-encounters/the-expert-breeder-dialogue.json"; import expertPokemonBreeder from "#app/locales/en/mystery-encounters/the-expert-pokemon-breeder-dialogue.json";
/** /**
* Dialogue/Text token injection patterns that can be used: * Dialogue/Text token injection patterns that can be used:
@ -185,7 +185,7 @@ export const enConfig = {
funAndGames, funAndGames,
uncommonBreed, uncommonBreed,
globalTradeSystem, globalTradeSystem,
expertBreeder expertPokemonBreeder
}, },
mysteryEncounterMessages mysteryEncounterMessages
}; };

View File

@ -1,7 +1,7 @@
{ {
"intro": "It's a trainer carrying tons of Pokémon Eggs!", "intro": "It's a trainer carrying tons of Pokémon Eggs!",
"intro_dialogue": "Hey there, trainer!$It looks like some of your\npartner Pokémon are feeling a little down.$Why not have a battle with me to cheer them up?", "intro_dialogue": "Hey there, trainer!$It looks like some of your\npartner Pokémon are feeling a little down.$Why not have a battle with me to cheer them up?",
"title": "The Expert Breeder", "title": "The Expert Pokémon Breeder",
"description": "You've been challenged to a battle where @[TOOLTIP_TITLE]{you can only use a single Pokémon}. It might be tough, but it would surely deepen the bond you have with the Pokémon you choose!\nThe breeder will also give you some @[TOOLTIP_TITLE]{Pokémon Eggs} if you win!", "description": "You've been challenged to a battle where @[TOOLTIP_TITLE]{you can only use a single Pokémon}. It might be tough, but it would surely deepen the bond you have with the Pokémon you choose!\nThe breeder will also give you some @[TOOLTIP_TITLE]{Pokémon Eggs} if you win!",
"query": "Who will you battle with?", "query": "Who will you battle with?",
"cleffa_1_nickname": "Ace", "cleffa_1_nickname": "Ace",

View File

@ -173,5 +173,5 @@
"vicky": "Vicky", "vicky": "Vicky",
"vito": "Vito", "vito": "Vito",
"bug_type_superfan": "Bug-Type Superfan", "bug_type_superfan": "Bug-Type Superfan",
"expert_breeder": "Expert Breeder" "expert_pokemon_breeder": "Expert Pokémon Breeder"
} }

View File

@ -145,7 +145,7 @@ class DefaultOverrides {
/** 1 to 256, set to null to ignore */ /** 1 to 256, set to null to ignore */
readonly MYSTERY_ENCOUNTER_RATE_OVERRIDE: number | null = 256; readonly MYSTERY_ENCOUNTER_RATE_OVERRIDE: number | null = 256;
readonly MYSTERY_ENCOUNTER_TIER_OVERRIDE: MysteryEncounterTier | null = null; readonly MYSTERY_ENCOUNTER_TIER_OVERRIDE: MysteryEncounterTier | null = null;
readonly MYSTERY_ENCOUNTER_OVERRIDE: MysteryEncounterType | null = MysteryEncounterType.THE_EXPERT_BREEDER; readonly MYSTERY_ENCOUNTER_OVERRIDE: MysteryEncounterType | null = MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER;
// ------------------------- // -------------------------
// MODIFIER / ITEM OVERRIDES // MODIFIER / ITEM OVERRIDES

View File

@ -14,7 +14,7 @@ import { MysteryEncounterMode } from "#enums/mystery-encounter-mode";
import MysteryEncounter from "#app/data/mystery-encounters/mystery-encounter"; import MysteryEncounter from "#app/data/mystery-encounters/mystery-encounter";
import { CommandPhase } from "#app/phases/command-phase"; import { CommandPhase } from "#app/phases/command-phase";
import { SelectModifierPhase } from "#app/phases/select-modifier-phase"; import { SelectModifierPhase } from "#app/phases/select-modifier-phase";
import { TheExpertBreederEncounter } from "#app/data/mystery-encounters/encounters/the-expert-breeder-encounter"; import { TheExpertPokemonBreederEncounter } from "#app/data/mystery-encounters/encounters/the-expert-pokemon-breeder-encounter";
import { TrainerType } from "#enums/trainer-type"; import { TrainerType } from "#enums/trainer-type";
import { EggTier } from "#enums/egg-type"; import { EggTier } from "#enums/egg-type";
import { PostMysteryEncounterPhase } from "#app/phases/mystery-encounter-phases"; import { PostMysteryEncounterPhase } from "#app/phases/mystery-encounter-phases";
@ -24,7 +24,7 @@ const defaultParty = [Species.LAPRAS, Species.GENGAR, Species.ABRA];
const defaultBiome = Biome.CAVE; const defaultBiome = Biome.CAVE;
const defaultWave = 45; const defaultWave = 45;
describe("The Expert Breeder - Mystery Encounter", () => { describe("The Expert Pokémon Breeder - Mystery Encounter", () => {
let phaserGame: Phaser.Game; let phaserGame: Phaser.Game;
let game: GameManager; let game: GameManager;
let scene: BattleScene; let scene: BattleScene;
@ -45,7 +45,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
[Biome.VOLCANO, [MysteryEncounterType.FIGHT_OR_FLIGHT]], [Biome.VOLCANO, [MysteryEncounterType.FIGHT_OR_FLIGHT]],
]); ]);
HUMAN_TRANSITABLE_BIOMES.forEach(biome => { HUMAN_TRANSITABLE_BIOMES.forEach(biome => {
biomeMap.set(biome, [MysteryEncounterType.THE_EXPERT_BREEDER]); biomeMap.set(biome, [MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER]);
}); });
vi.spyOn(MysteryEncounters, "mysteryEncountersByBiome", "get").mockReturnValue(biomeMap); vi.spyOn(MysteryEncounters, "mysteryEncountersByBiome", "get").mockReturnValue(biomeMap);
}); });
@ -57,24 +57,24 @@ describe("The Expert Breeder - Mystery Encounter", () => {
}); });
it("should have the correct properties", async () => { it("should have the correct properties", async () => {
await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_BREEDER, defaultParty); await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER, defaultParty);
expect(TheExpertBreederEncounter.encounterType).toBe(MysteryEncounterType.THE_EXPERT_BREEDER); expect(TheExpertPokemonBreederEncounter.encounterType).toBe(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER);
expect(TheExpertBreederEncounter.encounterTier).toBe(MysteryEncounterTier.ULTRA); expect(TheExpertPokemonBreederEncounter.encounterTier).toBe(MysteryEncounterTier.ULTRA);
expect(TheExpertBreederEncounter.dialogue).toBeDefined(); expect(TheExpertPokemonBreederEncounter.dialogue).toBeDefined();
expect(TheExpertBreederEncounter.dialogue.intro).toStrictEqual([ expect(TheExpertPokemonBreederEncounter.dialogue.intro).toStrictEqual([
{ {
text: `${namespace}.intro` text: `${namespace}.intro`
}, },
{ {
speaker: "trainerNames:expert_breeder", speaker: "trainerNames:expert_pokemon_breeder",
text: `${namespace}.intro_dialogue` text: `${namespace}.intro_dialogue`
}, },
]); ]);
expect(TheExpertBreederEncounter.dialogue.encounterOptionsDialogue?.title).toBe(`${namespace}.title`); expect(TheExpertPokemonBreederEncounter.dialogue.encounterOptionsDialogue?.title).toBe(`${namespace}.title`);
expect(TheExpertBreederEncounter.dialogue.encounterOptionsDialogue?.description).toBe(`${namespace}.description`); expect(TheExpertPokemonBreederEncounter.dialogue.encounterOptionsDialogue?.description).toBe(`${namespace}.description`);
expect(TheExpertBreederEncounter.dialogue.encounterOptionsDialogue?.query).toBe(`${namespace}.query`); expect(TheExpertPokemonBreederEncounter.dialogue.encounterOptionsDialogue?.query).toBe(`${namespace}.query`);
expect(TheExpertBreederEncounter.options.length).toBe(3); expect(TheExpertPokemonBreederEncounter.options.length).toBe(3);
}); });
it("should not spawn outside of HUMAN_TRANSITABLE_BIOMES", async () => { it("should not spawn outside of HUMAN_TRANSITABLE_BIOMES", async () => {
@ -82,12 +82,12 @@ describe("The Expert Breeder - Mystery Encounter", () => {
game.override.startingBiome(Biome.VOLCANO); game.override.startingBiome(Biome.VOLCANO);
await game.runToMysteryEncounter(); await game.runToMysteryEncounter();
expect(scene.currentBattle?.mysteryEncounter?.encounterType).not.toBe(MysteryEncounterType.THE_EXPERT_BREEDER); expect(scene.currentBattle?.mysteryEncounter?.encounterType).not.toBe(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER);
}); });
it("should initialize fully", async () => { it("should initialize fully", async () => {
initSceneWithoutEncounterPhase(scene, defaultParty); initSceneWithoutEncounterPhase(scene, defaultParty);
scene.currentBattle.mysteryEncounter = new MysteryEncounter(TheExpertBreederEncounter); scene.currentBattle.mysteryEncounter = new MysteryEncounter(TheExpertPokemonBreederEncounter);
const encounter = scene.currentBattle.mysteryEncounter!; const encounter = scene.currentBattle.mysteryEncounter!;
scene.currentBattle.waveIndex = defaultWave; scene.currentBattle.waveIndex = defaultWave;
@ -100,7 +100,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
expect(encounter.enemyPartyConfigs).toBeDefined(); expect(encounter.enemyPartyConfigs).toBeDefined();
expect(encounter.enemyPartyConfigs.length).toBe(1); expect(encounter.enemyPartyConfigs.length).toBe(1);
expect(encounter.enemyPartyConfigs[0].trainerType).toBe(TrainerType.EXPERT_BREEDER); expect(encounter.enemyPartyConfigs[0].trainerType).toBe(TrainerType.EXPERT_POKEMON_BREEDER);
expect(encounter.enemyPartyConfigs[0].pokemonConfigs?.length).toBe(3); expect(encounter.enemyPartyConfigs[0].pokemonConfigs?.length).toBe(3);
expect(encounter.spriteConfigs).toBeDefined(); expect(encounter.spriteConfigs).toBeDefined();
expect(encounter.spriteConfigs.length).toBe(2); expect(encounter.spriteConfigs.length).toBe(2);
@ -109,7 +109,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
describe("Option 1 - Battle with Pokemon 1", () => { describe("Option 1 - Battle with Pokemon 1", () => {
it("should have the correct properties", () => { it("should have the correct properties", () => {
const option = TheExpertBreederEncounter.options[0]; const option = TheExpertPokemonBreederEncounter.options[0];
expect(option.optionMode).toBe(MysteryEncounterOptionMode.DEFAULT); expect(option.optionMode).toBe(MysteryEncounterOptionMode.DEFAULT);
expect(option.dialogue).toBeDefined(); expect(option.dialogue).toBeDefined();
expect(option.dialogue).toStrictEqual({ expect(option.dialogue).toStrictEqual({
@ -117,7 +117,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
buttonTooltip: expect.any(String), // Varies based on pokemon buttonTooltip: expect.any(String), // Varies based on pokemon
selected: [ selected: [
{ {
speaker: "trainerNames:expert_breeder", speaker: "trainerNames:expert_pokemon_breeder",
text: `${namespace}.option.selected`, text: `${namespace}.option.selected`,
}, },
], ],
@ -125,7 +125,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
}); });
it("should start battle against the trainer", async () => { it("should start battle against the trainer", async () => {
await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_BREEDER, defaultParty); await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER, defaultParty);
await runMysteryEncounterToEnd(game, 1, undefined, true); await runMysteryEncounterToEnd(game, 1, undefined, true);
expect(scene.getCurrentPhase()?.constructor.name).toBe(CommandPhase.name); expect(scene.getCurrentPhase()?.constructor.name).toBe(CommandPhase.name);
@ -135,7 +135,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
}); });
it("Should reward the player with friendship and eggs based on pokemon selected", async () => { it("Should reward the player with friendship and eggs based on pokemon selected", async () => {
await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_BREEDER, defaultParty); await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER, defaultParty);
const friendshipBefore = scene.currentBattle.mysteryEncounter!.misc.pokemon1.friendship; const friendshipBefore = scene.currentBattle.mysteryEncounter!.misc.pokemon1.friendship;
@ -167,7 +167,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
describe("Option 2 - Battle with Pokemon 2", () => { describe("Option 2 - Battle with Pokemon 2", () => {
it("should have the correct properties", () => { it("should have the correct properties", () => {
const option = TheExpertBreederEncounter.options[1]; const option = TheExpertPokemonBreederEncounter.options[1];
expect(option.optionMode).toBe(MysteryEncounterOptionMode.DEFAULT); expect(option.optionMode).toBe(MysteryEncounterOptionMode.DEFAULT);
expect(option.dialogue).toBeDefined(); expect(option.dialogue).toBeDefined();
expect(option.dialogue).toStrictEqual({ expect(option.dialogue).toStrictEqual({
@ -175,7 +175,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
buttonTooltip: expect.any(String), // Varies based on pokemon buttonTooltip: expect.any(String), // Varies based on pokemon
selected: [ selected: [
{ {
speaker: "trainerNames:expert_breeder", speaker: "trainerNames:expert_pokemon_breeder",
text: `${namespace}.option.selected`, text: `${namespace}.option.selected`,
}, },
], ],
@ -183,7 +183,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
}); });
it("should start battle against the trainer", async () => { it("should start battle against the trainer", async () => {
await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_BREEDER, defaultParty); await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER, defaultParty);
await runMysteryEncounterToEnd(game, 2, undefined, true); await runMysteryEncounterToEnd(game, 2, undefined, true);
expect(scene.getCurrentPhase()?.constructor.name).toBe(CommandPhase.name); expect(scene.getCurrentPhase()?.constructor.name).toBe(CommandPhase.name);
@ -193,7 +193,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
}); });
it("Should reward the player with friendship and eggs based on pokemon selected", async () => { it("Should reward the player with friendship and eggs based on pokemon selected", async () => {
await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_BREEDER, defaultParty); await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER, defaultParty);
const friendshipBefore = scene.currentBattle.mysteryEncounter!.misc.pokemon2.friendship; const friendshipBefore = scene.currentBattle.mysteryEncounter!.misc.pokemon2.friendship;
@ -225,7 +225,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
describe("Option 3 - Battle with Pokemon 3", () => { describe("Option 3 - Battle with Pokemon 3", () => {
it("should have the correct properties", () => { it("should have the correct properties", () => {
const option = TheExpertBreederEncounter.options[2]; const option = TheExpertPokemonBreederEncounter.options[2];
expect(option.optionMode).toBe(MysteryEncounterOptionMode.DEFAULT); expect(option.optionMode).toBe(MysteryEncounterOptionMode.DEFAULT);
expect(option.dialogue).toBeDefined(); expect(option.dialogue).toBeDefined();
expect(option.dialogue).toStrictEqual({ expect(option.dialogue).toStrictEqual({
@ -233,7 +233,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
buttonTooltip: expect.any(String), // Varies based on pokemon buttonTooltip: expect.any(String), // Varies based on pokemon
selected: [ selected: [
{ {
speaker: "trainerNames:expert_breeder", speaker: "trainerNames:expert_pokemon_breeder",
text: `${namespace}.option.selected`, text: `${namespace}.option.selected`,
}, },
], ],
@ -241,7 +241,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
}); });
it("should start battle against the trainer", async () => { it("should start battle against the trainer", async () => {
await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_BREEDER, defaultParty); await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER, defaultParty);
await runMysteryEncounterToEnd(game, 3, undefined, true); await runMysteryEncounterToEnd(game, 3, undefined, true);
expect(scene.getCurrentPhase()?.constructor.name).toBe(CommandPhase.name); expect(scene.getCurrentPhase()?.constructor.name).toBe(CommandPhase.name);
@ -251,7 +251,7 @@ describe("The Expert Breeder - Mystery Encounter", () => {
}); });
it("Should reward the player with friendship and eggs based on pokemon selected", async () => { it("Should reward the player with friendship and eggs based on pokemon selected", async () => {
await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_BREEDER, defaultParty); await game.runToMysteryEncounter(MysteryEncounterType.THE_EXPERT_POKEMON_BREEDER, defaultParty);
const friendshipBefore = scene.currentBattle.mysteryEncounter!.misc.pokemon3.friendship; const friendshipBefore = scene.currentBattle.mysteryEncounter!.misc.pokemon3.friendship;