Prevent using Pokeballs in the last biome

pull/1/head
Flashfyre 2023-04-29 16:26:09 -04:00
parent 842ea5af40
commit 3fc213bc73
3 changed files with 29 additions and 24 deletions

View File

@ -7,7 +7,7 @@ import { Command } from "./ui/command-ui-handler";
import { Stat } from "./data/pokemon-stat"; import { Stat } from "./data/pokemon-stat";
import { BerryModifier, ExpBalanceModifier, ExpBoosterModifier, ExpShareModifier, ExtraModifierModifier, FlinchChanceModifier, HealingBoosterModifier, HeldItemTransferModifier, HitHealModifier, MapModifier, MultipleParticipantExpBonusModifier, PokemonExpBoosterModifier, PokemonHeldItemModifier, SwitchEffectTransferModifier, TempBattleStatBoosterModifier, TurnHealModifier } from "./modifier/modifier"; import { BerryModifier, ExpBalanceModifier, ExpBoosterModifier, ExpShareModifier, ExtraModifierModifier, FlinchChanceModifier, HealingBoosterModifier, HeldItemTransferModifier, HitHealModifier, MapModifier, MultipleParticipantExpBonusModifier, PokemonExpBoosterModifier, PokemonHeldItemModifier, SwitchEffectTransferModifier, TempBattleStatBoosterModifier, TurnHealModifier } from "./modifier/modifier";
import PartyUiHandler, { PartyOption, PartyUiMode } from "./ui/party-ui-handler"; import PartyUiHandler, { PartyOption, PartyUiMode } from "./ui/party-ui-handler";
import { doPokeballBounceAnim, getPokeballAtlasKey, getPokeballCatchMultiplier, getPokeballTintColor, PokeballType } from "./data/pokeball"; import { doPokeballBounceAnim, getPokeballAtlasKey, getPokeballCatchMultiplier, getPokeballName, getPokeballTintColor, PokeballType } from "./data/pokeball";
import { CommonAnim, CommonBattleAnim, MoveAnim, initMoveAnim, loadMoveAnimAssets } from "./data/battle-anims"; import { CommonAnim, CommonBattleAnim, MoveAnim, initMoveAnim, loadMoveAnimAssets } from "./data/battle-anims";
import { StatusEffect, getStatusEffectActivationText, getStatusEffectCatchRateMultiplier, getStatusEffectHealText, getStatusEffectObtainText, getStatusEffectOverlapText } from "./data/status-effect"; import { StatusEffect, getStatusEffectActivationText, getStatusEffectCatchRateMultiplier, getStatusEffectHealText, getStatusEffectObtainText, getStatusEffectOverlapText } from "./data/status-effect";
import { SummaryUiMode } from "./ui/summary-ui-handler"; import { SummaryUiMode } from "./ui/summary-ui-handler";
@ -658,7 +658,13 @@ export class CommandPhase extends FieldPhase {
break; break;
case Command.BALL: case Command.BALL:
if (cursor < 4) { if (this.scene.arena.biomeType === Biome.END) {
this.scene.ui.setMode(Mode.MESSAGE);
this.scene.ui.showText(`A strange force\nprevents using ${getPokeballName(PokeballType.POKEBALL)}s.`, null, () => {
this.scene.ui.clearText();
this.scene.ui.setMode(Mode.COMMAND);
}, null, true);
} else if (cursor < 4) {
this.scene.unshiftPhase(new AttemptCapturePhase(this.scene, cursor as PokeballType)); this.scene.unshiftPhase(new AttemptCapturePhase(this.scene, cursor as PokeballType));
success = true; success = true;
} }

View File

@ -310,7 +310,7 @@ export const biomePools: BiomePools = {
Species.SHELMET Species.SHELMET
], ],
[BiomePoolTier.SUPER_RARE]: [ Species.CHATOT, Species.DURANT ], [BiomePoolTier.SUPER_RARE]: [ Species.CHATOT, Species.DURANT ],
[BiomePoolTier.ULTRA_RARE]: [ Species.CELEBI, Species.VIRIZION ], [BiomePoolTier.ULTRA_RARE]: [ Species.CELEBI ],
[BiomePoolTier.BOSS]: [ [BiomePoolTier.BOSS]: [
Species.VENOMOTH, Species.VENOMOTH,
Species.VICTREEBEL, Species.VICTREEBEL,
@ -340,7 +340,7 @@ export const biomePools: BiomePools = {
], ],
[BiomePoolTier.BOSS_RARE]: [ Species.HERACROSS, Species.STANTLER, Species.SCEPTILE, Species.SLAKING, Species.LEAFEON, Species.ESCAVALIER, Species.FERROTHORN, Species.ACCELGOR, Species.DURANT ], [BiomePoolTier.BOSS_RARE]: [ Species.HERACROSS, Species.STANTLER, Species.SCEPTILE, Species.SLAKING, Species.LEAFEON, Species.ESCAVALIER, Species.FERROTHORN, Species.ACCELGOR, Species.DURANT ],
[BiomePoolTier.BOSS_SUPER_RARE]: [ Species.SCIZOR ], [BiomePoolTier.BOSS_SUPER_RARE]: [ Species.SCIZOR ],
[BiomePoolTier.BOSS_ULTRA_RARE]: [ Species.CELEBI, Species.VIRIZION ] [BiomePoolTier.BOSS_ULTRA_RARE]: [ Species.CELEBI, Species.GENESECT ]
}, },
[Biome.SEA]: { [Biome.SEA]: {
[BiomePoolTier.COMMON]: [ [BiomePoolTier.COMMON]: [
@ -508,11 +508,11 @@ export const biomePools: BiomePools = {
[BiomePoolTier.UNCOMMON]: [ { 1: [ Species.GEODUDE ], 25: [ Species.GRAVELER ] }, { 1: [ Species.MAKUHITA ], 24: [ Species.HARIYAMA ] }, Species.NOSEPASS ], [BiomePoolTier.UNCOMMON]: [ { 1: [ Species.GEODUDE ], 25: [ Species.GRAVELER ] }, { 1: [ Species.MAKUHITA ], 24: [ Species.HARIYAMA ] }, Species.NOSEPASS ],
[BiomePoolTier.RARE]: [ Species.ONIX ], [BiomePoolTier.RARE]: [ Species.ONIX ],
[BiomePoolTier.SUPER_RARE]: [ Species.SHUCKLE ], [BiomePoolTier.SUPER_RARE]: [ Species.SHUCKLE ],
[BiomePoolTier.ULTRA_RARE]: [ Species.REGISTEEL, Species.UXIE, Species.COBALION ], [BiomePoolTier.ULTRA_RARE]: [ Species.REGISTEEL, Species.UXIE ],
[BiomePoolTier.BOSS]: [ Species.PARASECT, Species.ONIX, Species.CROBAT, Species.URSARING, Species.EXPLOUD, Species.MAWILE, Species.PROBOPASS, Species.GIGALITH, Species.SWOOBAT ], [BiomePoolTier.BOSS]: [ Species.PARASECT, Species.ONIX, Species.CROBAT, Species.URSARING, Species.EXPLOUD, Species.MAWILE, Species.PROBOPASS, Species.GIGALITH, Species.SWOOBAT ],
[BiomePoolTier.BOSS_RARE]: [ Species.SHUCKLE ], [BiomePoolTier.BOSS_RARE]: [ Species.SHUCKLE ],
[BiomePoolTier.BOSS_SUPER_RARE]: [ Species.REGISTEEL, Species.UXIE, Species.COBALION ], [BiomePoolTier.BOSS_SUPER_RARE]: [ Species.REGISTEEL, Species.UXIE ],
[BiomePoolTier.BOSS_ULTRA_RARE]: [] [BiomePoolTier.BOSS_ULTRA_RARE]: [ Species.MEWTWO ]
}, },
[Biome.DESERT]: { [Biome.DESERT]: {
[BiomePoolTier.COMMON]: [ [BiomePoolTier.COMMON]: [
@ -526,11 +526,11 @@ export const biomePools: BiomePools = {
[BiomePoolTier.UNCOMMON]: [ { 1: [ Species.BALTOY ], 36: [ Species.CLAYDOL ] }, Species.MARACTUS ], [BiomePoolTier.UNCOMMON]: [ { 1: [ Species.BALTOY ], 36: [ Species.CLAYDOL ] }, Species.MARACTUS ],
[BiomePoolTier.RARE]: [ { 1: [ Species.VIBRAVA ], 45: [ Species.FLYGON ] }, { 1: [ Species.DARUMAKA ], 35: [ Species.DARMANITAN ] }, { 1: [ Species.YAMASK ], 34: [ Species.COFAGRIGUS ] } ], [BiomePoolTier.RARE]: [ { 1: [ Species.VIBRAVA ], 45: [ Species.FLYGON ] }, { 1: [ Species.DARUMAKA ], 35: [ Species.DARMANITAN ] }, { 1: [ Species.YAMASK ], 34: [ Species.COFAGRIGUS ] } ],
[BiomePoolTier.SUPER_RARE]: [ { 1: [ Species.LILEEP ], 40: [ Species.CRADILY ] }, { 1: [ Species.ANORITH ], 40: [ Species.ARMALDO ] } ], [BiomePoolTier.SUPER_RARE]: [ { 1: [ Species.LILEEP ], 40: [ Species.CRADILY ] }, { 1: [ Species.ANORITH ], 40: [ Species.ARMALDO ] } ],
[BiomePoolTier.ULTRA_RARE]: [ Species.REGIROCK, Species.TERRAKION ], [BiomePoolTier.ULTRA_RARE]: [ Species.REGIROCK ],
[BiomePoolTier.BOSS]: [ Species.SANDSLASH, Species.CACTURNE, Species.HIPPOWDON, Species.DRAPION, Species.KROOKODILE, Species.DARMANITAN, Species.MARACTUS ], [BiomePoolTier.BOSS]: [ Species.SANDSLASH, Species.CACTURNE, Species.HIPPOWDON, Species.DRAPION, Species.KROOKODILE, Species.DARMANITAN, Species.MARACTUS ],
[BiomePoolTier.BOSS_RARE]: [ Species.CRADILY, Species.ARMALDO ], [BiomePoolTier.BOSS_RARE]: [ Species.CRADILY, Species.ARMALDO ],
[BiomePoolTier.BOSS_SUPER_RARE]: [ Species.REGIROCK ], [BiomePoolTier.BOSS_SUPER_RARE]: [ Species.REGIROCK ],
[BiomePoolTier.BOSS_ULTRA_RARE]: [ Species.TERRAKION ] [BiomePoolTier.BOSS_ULTRA_RARE]: []
}, },
[Biome.ICE_CAVE]: { [Biome.ICE_CAVE]: {
[BiomePoolTier.COMMON]: [ [BiomePoolTier.COMMON]: [
@ -640,10 +640,10 @@ export const biomePools: BiomePools = {
[BiomePoolTier.UNCOMMON]: [ { 1: [ Species.CROAGUNK ], 37: [ Species.TOXICROAK ] }, { 1: [ Species.SCRAGGY ], 39: [ Species.SCRAFTY ] }, { 1: [ Species.MIENFOO ], 50: [ Species.MIENSHAO ] } ], [BiomePoolTier.UNCOMMON]: [ { 1: [ Species.CROAGUNK ], 37: [ Species.TOXICROAK ] }, { 1: [ Species.SCRAGGY ], 39: [ Species.SCRAFTY ] }, { 1: [ Species.MIENFOO ], 50: [ Species.MIENSHAO ] } ],
[BiomePoolTier.RARE]: [ { 1: [ Species.TYROGUE ], 20: [ Species.HITMONLEE ] }, Species.HITMONCHAN, Species.LUCARIO, Species.THROH, Species.SAWK ], [BiomePoolTier.RARE]: [ { 1: [ Species.TYROGUE ], 20: [ Species.HITMONLEE ] }, Species.HITMONCHAN, Species.LUCARIO, Species.THROH, Species.SAWK ],
[BiomePoolTier.SUPER_RARE]: [ Species.HITMONTOP, Species.GALLADE ], [BiomePoolTier.SUPER_RARE]: [ Species.HITMONTOP, Species.GALLADE ],
[BiomePoolTier.ULTRA_RARE]: [ Species.KELDEO ], [BiomePoolTier.ULTRA_RARE]: [ Species.COBALION, Species.TERRAKION, Species.VIRIZION ],
[BiomePoolTier.BOSS]: [ Species.PRIMEAPE, Species.MACHAMP, Species.HITMONLEE, Species.HITMONCHAN, Species.HARIYAMA, Species.MEDICHAM, Species.LUCARIO, Species.TOXICROAK, Species.CONKELDURR, Species.THROH, Species.SAWK, Species.SCRAFTY, Species.MIENSHAO ], [BiomePoolTier.BOSS]: [ Species.PRIMEAPE, Species.MACHAMP, Species.HITMONLEE, Species.HITMONCHAN, Species.HARIYAMA, Species.MEDICHAM, Species.LUCARIO, Species.TOXICROAK, Species.CONKELDURR, Species.THROH, Species.SAWK, Species.SCRAFTY, Species.MIENSHAO ],
[BiomePoolTier.BOSS_RARE]: [ Species.HITMONTOP, Species.GALLADE ], [BiomePoolTier.BOSS_RARE]: [ Species.HITMONTOP, Species.GALLADE ],
[BiomePoolTier.BOSS_SUPER_RARE]: [ Species.COBALION, Species.TERRAKION, Species.VIRIZION, Species.KELDEO ], [BiomePoolTier.BOSS_SUPER_RARE]: [ Species.COBALION, Species.TERRAKION, Species.VIRIZION ],
[BiomePoolTier.BOSS_ULTRA_RARE]: [] [BiomePoolTier.BOSS_ULTRA_RARE]: []
}, },
[Biome.RUINS]: { [Biome.RUINS]: {
@ -701,13 +701,13 @@ export const biomePools: BiomePools = {
[BiomePoolTier.BOSS]: [ Species.CLEFABLE, Species.LUNATONE, Species.SOLROCK, Species.CHIMECHO, Species.BRONZONG, Species.MUSHARNA, Species.REUNICLUS ], [BiomePoolTier.BOSS]: [ Species.CLEFABLE, Species.LUNATONE, Species.SOLROCK, Species.CHIMECHO, Species.BRONZONG, Species.MUSHARNA, Species.REUNICLUS ],
[BiomePoolTier.BOSS_RARE]: [ Species.METAGROSS, Species.PORYGON_Z ], [BiomePoolTier.BOSS_RARE]: [ Species.METAGROSS, Species.PORYGON_Z ],
[BiomePoolTier.BOSS_SUPER_RARE]: [ Species.JIRACHI, Species.DEOXYS, Species.CRESSELIA ], [BiomePoolTier.BOSS_SUPER_RARE]: [ Species.JIRACHI, Species.DEOXYS, Species.CRESSELIA ],
[BiomePoolTier.BOSS_ULTRA_RARE]: [] [BiomePoolTier.BOSS_ULTRA_RARE]: [ Species.RAYQUAZA ]
}, },
[Biome.END]: { [Biome.END]: {
[BiomePoolTier.COMMON]: [ Species.ARCANINE, Species.DRAGONITE, Species.TYRANITAR, Species.SALAMENCE, Species.GARCHOMP, Species.HYDREIGON, Species.VOLCARONA ], [BiomePoolTier.COMMON]: [ Species.ARCANINE, Species.DRAGONITE, Species.TYRANITAR, Species.SALAMENCE, Species.GARCHOMP, Species.HYDREIGON, Species.VOLCARONA ],
[BiomePoolTier.UNCOMMON]: [ Species.KINGDRA, Species.METAGROSS, Species.MAGNEZONE, Species.RHYPERIOR, Species.TANGROWTH, Species.ELECTIVIRE, Species.MAGMORTAR, Species.TOGEKISS, Species.MAMOSWINE ], [BiomePoolTier.UNCOMMON]: [ Species.KINGDRA, Species.METAGROSS, Species.MAGNEZONE, Species.RHYPERIOR, Species.TANGROWTH, Species.ELECTIVIRE, Species.MAGMORTAR, Species.TOGEKISS, Species.MAMOSWINE ],
[BiomePoolTier.RARE]: [ Species.BLISSEY, Species.PORYGON_Z ], [BiomePoolTier.RARE]: [ Species.BLISSEY, Species.PORYGON_Z ],
[BiomePoolTier.SUPER_RARE]: [ Species.GENESECT ], [BiomePoolTier.SUPER_RARE]: [ Species.REGIGIGAS, Species.GENESECT ],
[BiomePoolTier.ULTRA_RARE]: [ Species.MEWTWO, Species.RAYQUAZA, Species.ARCEUS ], [BiomePoolTier.ULTRA_RARE]: [ Species.MEWTWO, Species.RAYQUAZA, Species.ARCEUS ],
[BiomePoolTier.BOSS]: [ Species.ETERNATUS ], [BiomePoolTier.BOSS]: [ Species.ETERNATUS ],
[BiomePoolTier.BOSS_RARE]: [], [BiomePoolTier.BOSS_RARE]: [],
@ -1435,6 +1435,7 @@ export const biomePools: BiomePools = {
] ]
], ],
[ Species.MEWTWO, Type.PSYCHIC, -1, [ [ Species.MEWTWO, Type.PSYCHIC, -1, [
[ Biome.CAVE, BiomePoolTier.BOSS_ULTRA_RARE ],
[ Biome.END, BiomePoolTier.ULTRA_RARE ] [ Biome.END, BiomePoolTier.ULTRA_RARE ]
] ]
], ],
@ -2536,6 +2537,7 @@ export const biomePools: BiomePools = {
] ]
], ],
[ Species.RAYQUAZA, Type.DRAGON, Type.FLYING, [ [ Species.RAYQUAZA, Type.DRAGON, Type.FLYING, [
[ Biome.SPACE, BiomePoolTier.BOSS_ULTRA_RARE ],
[ Biome.END, BiomePoolTier.ULTRA_RARE ] [ Biome.END, BiomePoolTier.ULTRA_RARE ]
] ]
], ],
@ -3026,7 +3028,8 @@ export const biomePools: BiomePools = {
] ]
], ],
[ Species.REGIGIGAS, Type.NORMAL, -1, [ [ Species.REGIGIGAS, Type.NORMAL, -1, [
[ Biome.RUINS, BiomePoolTier.BOSS_ULTRA_RARE ] [ Biome.RUINS, BiomePoolTier.BOSS_ULTRA_RARE ],
[ Biome.END, BiomePoolTier.SUPER_RARE ]
] ]
], ],
[ Species.GIRATINA, Type.GHOST, Type.DRAGON, [ [ Species.GIRATINA, Type.GHOST, Type.DRAGON, [
@ -3732,20 +3735,17 @@ export const biomePools: BiomePools = {
] ]
], ],
[ Species.COBALION, Type.STEEL, Type.FIGHTING, [ [ Species.COBALION, Type.STEEL, Type.FIGHTING, [
[ Biome.CAVE, BiomePoolTier.ULTRA_RARE ], [ Biome.DOJO, BiomePoolTier.ULTRA_RARE ],
[ Biome.CAVE, BiomePoolTier.BOSS_SUPER_RARE ],
[ Biome.DOJO, BiomePoolTier.BOSS_SUPER_RARE ] [ Biome.DOJO, BiomePoolTier.BOSS_SUPER_RARE ]
] ]
], ],
[ Species.TERRAKION, Type.ROCK, Type.FIGHTING, [ [ Species.TERRAKION, Type.ROCK, Type.FIGHTING, [
[ Biome.DESERT, BiomePoolTier.ULTRA_RARE ], [ Biome.DOJO, BiomePoolTier.ULTRA_RARE ],
[ Biome.DESERT, BiomePoolTier.BOSS_ULTRA_RARE ],
[ Biome.DOJO, BiomePoolTier.BOSS_SUPER_RARE ] [ Biome.DOJO, BiomePoolTier.BOSS_SUPER_RARE ]
] ]
], ],
[ Species.VIRIZION, Type.GRASS, Type.FIGHTING, [ [ Species.VIRIZION, Type.GRASS, Type.FIGHTING, [
[ Biome.FOREST, BiomePoolTier.ULTRA_RARE ], [ Biome.DOJO, BiomePoolTier.ULTRA_RARE ],
[ Biome.FOREST, BiomePoolTier.BOSS_ULTRA_RARE ],
[ Biome.DOJO, BiomePoolTier.BOSS_SUPER_RARE ] [ Biome.DOJO, BiomePoolTier.BOSS_SUPER_RARE ]
] ]
], ],
@ -3778,9 +3778,7 @@ export const biomePools: BiomePools = {
], ],
[ Species.KELDEO, Type.WATER, Type.FIGHTING, [ [ Species.KELDEO, Type.WATER, Type.FIGHTING, [
[ Biome.BEACH, BiomePoolTier.ULTRA_RARE ], [ Biome.BEACH, BiomePoolTier.ULTRA_RARE ],
[ Biome.BEACH, BiomePoolTier.BOSS_SUPER_RARE ], [ Biome.BEACH, BiomePoolTier.BOSS_SUPER_RARE ]
[ Biome.DOJO, BiomePoolTier.ULTRA_RARE ],
[ Biome.DOJO, BiomePoolTier.BOSS_SUPER_RARE ]
] ]
], ],
[ Species.MELOETTA, Type.NORMAL, Type.PSYCHIC, [ [ Species.MELOETTA, Type.NORMAL, Type.PSYCHIC, [
@ -3789,6 +3787,7 @@ export const biomePools: BiomePools = {
] ]
], ],
[ Species.GENESECT, Type.BUG, Type.STEEL, [ [ Species.GENESECT, Type.BUG, Type.STEEL, [
[ Biome.FOREST, BiomePoolTier.BOSS_ULTRA_RARE ],
[ Biome.END, BiomePoolTier.SUPER_RARE ] [ Biome.END, BiomePoolTier.SUPER_RARE ]
] ]
], ],

View File

@ -28,7 +28,7 @@ export function getPokeballName(type: PokeballType): string {
let ret: string; let ret: string;
switch (type) { switch (type) {
case PokeballType.POKEBALL: case PokeballType.POKEBALL:
ret = 'Poké ball'; ret = 'Poké Ball';
break; break;
case PokeballType.GREAT_BALL: case PokeballType.GREAT_BALL:
ret = 'Great Ball'; ret = 'Great Ball';