diff --git a/src/data/ability.ts b/src/data/ability.ts index 7d8220a629f..5bf02cabf6c 100644 --- a/src/data/ability.ts +++ b/src/data/ability.ts @@ -1285,6 +1285,9 @@ export class MoveEffectChanceMultiplierAbAttr extends AbAttr { * @see {@linkcode applyPreDefend} */ export class IgnoreMoveEffectsAbAttr extends PreDefendAbAttr { + constructor(showAbility: boolean = false) { + super(showAbility); + } override canApplyPreDefend(pokemon: Pokemon, passive: boolean, simulated: boolean, attacker: Pokemon, move: Move | null, cancelled: Utils.BooleanHolder | null, args: any[]): boolean { return (args[0] as Utils.NumberHolder).value > 0; @@ -4711,7 +4714,7 @@ export class ForceSwitchOutImmunityAbAttr extends AbAttr { export class ReduceBerryUseThresholdAbAttr extends AbAttr { constructor() { - super(); + super(false); } override canApply(pokemon: Pokemon, passive: boolean, simulated: boolean, args: any[]): boolean { diff --git a/src/modifier/modifier-type.ts b/src/modifier/modifier-type.ts index b5574c02c8b..f9770e9c6cc 100644 --- a/src/modifier/modifier-type.ts +++ b/src/modifier/modifier-type.ts @@ -2000,7 +2000,7 @@ export const modifierTypes = { }), MYSTICAL_ROCK: () => - new ModifierType( + new PokemonHeldItemModifierType( "modifierType:ModifierType.MYSTICAL_ROCK", "mystical_rock", (type, args) => new FieldEffectModifier(type, (args[0] as Pokemon).id), diff --git a/src/ui/pokedex-ui-handler.ts b/src/ui/pokedex-ui-handler.ts index 1f79d7006b0..d55b278a148 100644 --- a/src/ui/pokedex-ui-handler.ts +++ b/src/ui/pokedex-ui-handler.ts @@ -37,11 +37,10 @@ import { addWindow } from "./ui-theme"; import type { OptionSelectConfig } from "./abstact-option-select-ui-handler"; import { FilterText, FilterTextRow } from "./filter-text"; import { allAbilities } from "#app/data/ability"; -import type { PassiveAbilities } from "#app/data/balance/passives"; import { starterPassiveAbilities } from "#app/data/balance/passives"; import { allMoves } from "#app/data/moves/move"; import { speciesTmMoves } from "#app/data/balance/tms"; -import { pokemonStarters } from "#app/data/balance/pokemon-evolutions"; +import { pokemonPrevolutions, pokemonStarters } from "#app/data/balance/pokemon-evolutions"; import { Biome } from "#enums/biome"; import { globalScene } from "#app/global-scene"; @@ -1404,7 +1403,12 @@ export default class PokedexUiHandler extends MessageUiHandler { // Ability filter const abilities = [species.ability1, species.ability2, species.abilityHidden].map(a => allAbilities[a].name); - const passives = starterPassiveAbilities[starterId] ?? ({} as PassiveAbilities); + const passiveId = starterPassiveAbilities.hasOwnProperty(species.speciesId) + ? species.speciesId + : starterPassiveAbilities.hasOwnProperty(starterId) + ? starterId + : pokemonPrevolutions[starterId]; + const passives = starterPassiveAbilities[passiveId]; const selectedAbility1 = this.filterText.getValue(FilterTextRow.ABILITY_1); const fitsFormAbility1 = species.forms.some(form =>