This commit is contained in:
damocleas 2025-06-19 13:29:11 -04:00 committed by GitHub
commit 20479f3fe0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 30 additions and 23 deletions

View File

@ -164,8 +164,8 @@ export const ATrainersTestEncounter: MysteryEncounter = MysteryEncounterBuilder.
encounter.setDialogueToken("eggType", i18next.t(`${namespace}:eggTypes.epic`)); encounter.setDialogueToken("eggType", i18next.t(`${namespace}:eggTypes.epic`));
setEncounterRewards( setEncounterRewards(
{ {
guaranteedModifierTypeFuncs: [modifierTypes.SACRED_ASH], guaranteedModifierTypeFuncs: [modifierTypes.RELIC_GOLD],
guaranteedModifierTiers: [ModifierTier.ROGUE, ModifierTier.ULTRA], guaranteedModifierTiers: [ModifierTier.ROGUE, ModifierTier.ROGUE],
fillRemaining: true, fillRemaining: true,
}, },
[eggOptions], [eggOptions],

View File

@ -26,12 +26,8 @@ const namespace = "mysteryEncounters/darkDeal";
/** Exclude Ultra Beasts (inludes Cosmog/Solgaleo/Lunala/Necrozma), Paradox (includes Miraidon/Koraidon), Eternatus, and Mythicals */ /** Exclude Ultra Beasts (inludes Cosmog/Solgaleo/Lunala/Necrozma), Paradox (includes Miraidon/Koraidon), Eternatus, and Mythicals */
const excludedBosses = [ const excludedBosses = [
SpeciesId.NECROZMA,
SpeciesId.COSMOG,
SpeciesId.COSMOEM,
SpeciesId.SOLGALEO,
SpeciesId.LUNALA,
SpeciesId.ETERNATUS, SpeciesId.ETERNATUS,
/** UBs */
SpeciesId.NIHILEGO, SpeciesId.NIHILEGO,
SpeciesId.BUZZWOLE, SpeciesId.BUZZWOLE,
SpeciesId.PHEROMOSA, SpeciesId.PHEROMOSA,
@ -43,6 +39,12 @@ const excludedBosses = [
SpeciesId.NAGANADEL, SpeciesId.NAGANADEL,
SpeciesId.STAKATAKA, SpeciesId.STAKATAKA,
SpeciesId.BLACEPHALON, SpeciesId.BLACEPHALON,
SpeciesId.COSMOG,
SpeciesId.COSMOEM,
SpeciesId.SOLGALEO,
SpeciesId.LUNALA,
SpeciesId.NECROZMA,
/** Paradox */
SpeciesId.GREAT_TUSK, SpeciesId.GREAT_TUSK,
SpeciesId.SCREAM_TAIL, SpeciesId.SCREAM_TAIL,
SpeciesId.BRUTE_BONNET, SpeciesId.BRUTE_BONNET,
@ -50,10 +52,10 @@ const excludedBosses = [
SpeciesId.SLITHER_WING, SpeciesId.SLITHER_WING,
SpeciesId.SANDY_SHOCKS, SpeciesId.SANDY_SHOCKS,
SpeciesId.ROARING_MOON, SpeciesId.ROARING_MOON,
SpeciesId.KORAIDON,
SpeciesId.WALKING_WAKE, SpeciesId.WALKING_WAKE,
SpeciesId.GOUGING_FIRE, SpeciesId.GOUGING_FIRE,
SpeciesId.RAGING_BOLT, SpeciesId.RAGING_BOLT,
SpeciesId.KORAIDON,
SpeciesId.IRON_TREADS, SpeciesId.IRON_TREADS,
SpeciesId.IRON_BUNDLE, SpeciesId.IRON_BUNDLE,
SpeciesId.IRON_HANDS, SpeciesId.IRON_HANDS,
@ -61,22 +63,23 @@ const excludedBosses = [
SpeciesId.IRON_MOTH, SpeciesId.IRON_MOTH,
SpeciesId.IRON_THORNS, SpeciesId.IRON_THORNS,
SpeciesId.IRON_VALIANT, SpeciesId.IRON_VALIANT,
SpeciesId.MIRAIDON,
SpeciesId.IRON_LEAVES, SpeciesId.IRON_LEAVES,
SpeciesId.IRON_BOULDER, SpeciesId.IRON_BOULDER,
SpeciesId.IRON_CROWN, SpeciesId.IRON_CROWN,
SpeciesId.MIRAIDON,
/** Mythical */
SpeciesId.MEW, SpeciesId.MEW,
SpeciesId.CELEBI, SpeciesId.CELEBI,
SpeciesId.DEOXYS,
SpeciesId.JIRACHI, SpeciesId.JIRACHI,
SpeciesId.DARKRAI, SpeciesId.DEOXYS,
SpeciesId.PHIONE, SpeciesId.PHIONE,
SpeciesId.MANAPHY, SpeciesId.MANAPHY,
SpeciesId.ARCEUS, SpeciesId.DARKRAI,
SpeciesId.SHAYMIN, SpeciesId.SHAYMIN,
SpeciesId.ARCEUS,
SpeciesId.VICTINI, SpeciesId.VICTINI,
SpeciesId.MELOETTA,
SpeciesId.KELDEO, SpeciesId.KELDEO,
SpeciesId.MELOETTA,
SpeciesId.GENESECT, SpeciesId.GENESECT,
SpeciesId.DIANCIE, SpeciesId.DIANCIE,
SpeciesId.HOOPA, SpeciesId.HOOPA,
@ -84,9 +87,9 @@ const excludedBosses = [
SpeciesId.MAGEARNA, SpeciesId.MAGEARNA,
SpeciesId.MARSHADOW, SpeciesId.MARSHADOW,
SpeciesId.ZERAORA, SpeciesId.ZERAORA,
SpeciesId.ZARUDE,
SpeciesId.MELTAN, SpeciesId.MELTAN,
SpeciesId.MELMETAL, SpeciesId.MELMETAL,
SpeciesId.ZARUDE,
SpeciesId.PECHARUNT, SpeciesId.PECHARUNT,
]; ];

View File

@ -22,6 +22,7 @@ import { applyModifierTypeToPlayerPokemon } from "#app/data/mystery-encounters/u
import { showEncounterText } from "#app/data/mystery-encounters/utils/encounter-dialogue-utils"; import { showEncounterText } from "#app/data/mystery-encounters/utils/encounter-dialogue-utils";
import i18next from "#app/plugins/i18n"; import i18next from "#app/plugins/i18n";
import { ModifierTier } from "#enums/modifier-tier"; import { ModifierTier } from "#enums/modifier-tier";
import { modifierTypes } from "#app/data/data-lists";
import { getPokemonSpecies } from "#app/utils/pokemon-utils"; import { getPokemonSpecies } from "#app/utils/pokemon-utils";
import { MoveId } from "#enums/move-id"; import { MoveId } from "#enums/move-id";
import { BattlerIndex } from "#enums/battler-index"; import { BattlerIndex } from "#enums/battler-index";
@ -200,7 +201,8 @@ export const TrashToTreasureEncounter: MysteryEncounter = MysteryEncounterBuilde
const encounter = globalScene.currentBattle.mysteryEncounter!; const encounter = globalScene.currentBattle.mysteryEncounter!;
setEncounterRewards({ setEncounterRewards({
guaranteedModifierTiers: [ModifierTier.ROGUE, ModifierTier.ROGUE, ModifierTier.ULTRA, ModifierTier.GREAT], guaranteedModifierTypeFuncs: [modifierTypes.LEFTOVERS],
guaranteedModifierTiers: [ModifierTier.ROGUE, ModifierTier.ULTRA, ModifierTier.GREAT],
fillRemaining: true, fillRemaining: true,
}); });
encounter.startOfBattleEffects.push( encounter.startOfBattleEffects.push(

View File

@ -50,6 +50,7 @@ const namespace = "mysteryEncounters/weirdDream";
/** Exclude Ultra Beasts, Paradox, Eternatus, and all legendary/mythical/trio pokemon that are below 570 BST */ /** Exclude Ultra Beasts, Paradox, Eternatus, and all legendary/mythical/trio pokemon that are below 570 BST */
const EXCLUDED_TRANSFORMATION_SPECIES = [ const EXCLUDED_TRANSFORMATION_SPECIES = [
SpeciesId.ARCEUS,
SpeciesId.ETERNATUS, SpeciesId.ETERNATUS,
/** UBs */ /** UBs */
SpeciesId.NIHILEGO, SpeciesId.NIHILEGO,
@ -85,20 +86,19 @@ const EXCLUDED_TRANSFORMATION_SPECIES = [
SpeciesId.IRON_BOULDER, SpeciesId.IRON_BOULDER,
SpeciesId.IRON_CROWN, SpeciesId.IRON_CROWN,
/** These are banned so they don't appear in the < 570 BST pool */ /** These are banned so they don't appear in the < 570 BST pool */
SpeciesId.PHIONE,
SpeciesId.TYPE_NULL,
SpeciesId.COSMOG, SpeciesId.COSMOG,
SpeciesId.COSMOEM,
SpeciesId.MELTAN, SpeciesId.MELTAN,
SpeciesId.KUBFU, SpeciesId.KUBFU,
SpeciesId.COSMOEM,
SpeciesId.POIPOLE,
SpeciesId.TERAPAGOS,
SpeciesId.TYPE_NULL,
SpeciesId.CALYREX,
SpeciesId.NAGANADEL,
SpeciesId.URSHIFU, SpeciesId.URSHIFU,
SpeciesId.CALYREX,
SpeciesId.OGERPON, SpeciesId.OGERPON,
SpeciesId.OKIDOGI, SpeciesId.OKIDOGI,
SpeciesId.MUNKIDORI, SpeciesId.MUNKIDORI,
SpeciesId.FEZANDIPITI, SpeciesId.FEZANDIPITI,
SpeciesId.TERAPAGOS,
]; ];
const SUPER_LEGENDARY_BST_THRESHOLD = 600; const SUPER_LEGENDARY_BST_THRESHOLD = 600;
@ -231,6 +231,7 @@ export const WeirdDreamEncounter: MysteryEncounter = MysteryEncounterBuilder.wit
modifierTypes.MINT, modifierTypes.MINT,
modifierTypes.MINT, modifierTypes.MINT,
modifierTypes.MINT, modifierTypes.MINT,
modifierTypes.MINT,
], ],
fillRemaining: false, fillRemaining: false,
}); });

View File

@ -147,12 +147,13 @@ describe("Weird Dream - Mystery Encounter", () => {
const modifierSelectHandler = scene.ui.handlers.find( const modifierSelectHandler = scene.ui.handlers.find(
h => h instanceof ModifierSelectUiHandler, h => h instanceof ModifierSelectUiHandler,
) as ModifierSelectUiHandler; ) as ModifierSelectUiHandler;
expect(modifierSelectHandler.options.length).toEqual(5); expect(modifierSelectHandler.options.length).toEqual(6);
expect(modifierSelectHandler.options[0].modifierTypeOption.type.id).toEqual("MEMORY_MUSHROOM"); expect(modifierSelectHandler.options[0].modifierTypeOption.type.id).toEqual("MEMORY_MUSHROOM");
expect(modifierSelectHandler.options[1].modifierTypeOption.type.id).toEqual("ROGUE_BALL"); expect(modifierSelectHandler.options[1].modifierTypeOption.type.id).toEqual("ROGUE_BALL");
expect(modifierSelectHandler.options[2].modifierTypeOption.type.id).toEqual("MINT"); expect(modifierSelectHandler.options[2].modifierTypeOption.type.id).toEqual("MINT");
expect(modifierSelectHandler.options[3].modifierTypeOption.type.id).toEqual("MINT"); expect(modifierSelectHandler.options[3].modifierTypeOption.type.id).toEqual("MINT");
expect(modifierSelectHandler.options[3].modifierTypeOption.type.id).toEqual("MINT"); expect(modifierSelectHandler.options[4].modifierTypeOption.type.id).toEqual("MINT");
expect(modifierSelectHandler.options[5].modifierTypeOption.type.id).toEqual("MINT");
}); });
it("should leave encounter without battle", async () => { it("should leave encounter without battle", async () => {