mirror of
https://github.com/pagefaultgames/pokerogue.git
synced 2025-07-10 18:32:16 +02:00
added opponent item helds override
This commit is contained in:
parent
9222a86f8f
commit
e1e7f8acfd
@ -19,7 +19,7 @@ import { VoucherType } from '../system/voucher';
|
||||
import { FormChangeItem, SpeciesFormChangeItemTrigger } from '../data/pokemon-forms';
|
||||
import { Nature } from '#app/data/nature';
|
||||
import { BattlerTagType } from '#app/data/enums/battler-tag-type';
|
||||
import { STARTING_HELD_ITEMS_OVERRIDE } from "../overrides";
|
||||
import { OPP_HELD_ITEMS_OVERRIDE, STARTING_HELD_ITEMS_OVERRIDE } from "../overrides";
|
||||
import { modifierTypes } from "./modifier-type";
|
||||
|
||||
type ModifierType = ModifierTypes.ModifierType;
|
||||
@ -2198,4 +2198,25 @@ export function startingItemHeldsOverride(pokemon: Pokemon): Modifier[] {
|
||||
ret.push(itemModifier);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
export function opponentItemHeldsOverride(pokemon: Pokemon): Modifier[] {
|
||||
const ret: Modifier[] = new Array();
|
||||
// if no override, do nothing
|
||||
if (!OPP_HELD_ITEMS_OVERRIDE || OPP_HELD_ITEMS_OVERRIDE.length === 0) return ret;
|
||||
// we loop through all the itemName given in the override file
|
||||
for (const itemName of OPP_HELD_ITEMS_OVERRIDE) {
|
||||
// if the item does not exist, we skip it
|
||||
if (!modifierTypes.hasOwnProperty(itemName)) continue;
|
||||
// we retrieve the item in the list
|
||||
const modifierType = modifierTypes[itemName]();
|
||||
// we create the item
|
||||
const itemModifier = modifierType.withIdFromFunc(modifierTypes[itemName]).newModifier((pokemon) as PersistentModifier) as PokemonHeldItemModifier;
|
||||
// we assign the created item to the pokemon
|
||||
itemModifier.pokemonId = pokemon.id;
|
||||
// we say how many items we want
|
||||
itemModifier.stackCount = 1;
|
||||
ret.push(itemModifier);
|
||||
}
|
||||
return ret;
|
||||
}
|
@ -6,7 +6,7 @@ import { allMoves, applyMoveAttrs, BypassSleepAttr, ChargeAttr, applyFilteredMov
|
||||
import { Mode } from './ui/ui';
|
||||
import { Command } from "./ui/command-ui-handler";
|
||||
import { Stat } from "./data/pokemon-stat";
|
||||
import { BerryModifier, ContactHeldItemTransferChanceModifier, EnemyAttackStatusEffectChanceModifier, EnemyPersistentModifier, EnemyStatusEffectHealChanceModifier, EnemyTurnHealModifier, ExpBalanceModifier, ExpBoosterModifier, ExpShareModifier, ExtraModifierModifier, FlinchChanceModifier, FusePokemonModifier, HealingBoosterModifier, HitHealModifier, LapsingPersistentModifier, MapModifier, Modifier, MultipleParticipantExpBonusModifier, PersistentModifier, PokemonExpBoosterModifier, PokemonHeldItemModifier, PokemonInstantReviveModifier, SwitchEffectTransferModifier, TempBattleStatBoosterModifier, TurnHealModifier, TurnHeldItemTransferModifier, MoneyMultiplierModifier, MoneyInterestModifier, IvScannerModifier, LapsingPokemonHeldItemModifier, PokemonMultiHitModifier, PokemonMoveAccuracyBoosterModifier, startingItemHeldsOverride } from "./modifier/modifier";
|
||||
import { BerryModifier, ContactHeldItemTransferChanceModifier, EnemyAttackStatusEffectChanceModifier, EnemyPersistentModifier, EnemyStatusEffectHealChanceModifier, EnemyTurnHealModifier, ExpBalanceModifier, ExpBoosterModifier, ExpShareModifier, ExtraModifierModifier, FlinchChanceModifier, FusePokemonModifier, HealingBoosterModifier, HitHealModifier, LapsingPersistentModifier, MapModifier, Modifier, MultipleParticipantExpBonusModifier, PersistentModifier, PokemonExpBoosterModifier, PokemonHeldItemModifier, PokemonInstantReviveModifier, SwitchEffectTransferModifier, TempBattleStatBoosterModifier, TurnHealModifier, TurnHeldItemTransferModifier, MoneyMultiplierModifier, MoneyInterestModifier, IvScannerModifier, LapsingPokemonHeldItemModifier, PokemonMultiHitModifier, PokemonMoveAccuracyBoosterModifier, startingItemHeldsOverride, opponentItemHeldsOverride } from "./modifier/modifier";
|
||||
import PartyUiHandler, { PartyOption, PartyUiMode } from "./ui/party-ui-handler";
|
||||
import { doPokeballBounceAnim, getPokeballAtlasKey, getPokeballCatchMultiplier, getPokeballTintColor, PokeballType } from "./data/pokeball";
|
||||
import { CommonAnim, CommonBattleAnim, MoveAnim, initMoveAnim, loadMoveAnimAssets } from "./data/battle-anims";
|
||||
@ -735,6 +735,13 @@ export class EncounterPhase extends BattlePhase {
|
||||
console.log(enemyPokemon.name, enemyPokemon.species.speciesId, enemyPokemon.stats);
|
||||
});
|
||||
|
||||
const itemHeldsOverride = opponentItemHeldsOverride(this.scene.getEnemyParty()[0]);
|
||||
if (itemHeldsOverride?.length) {
|
||||
for (const itemHeldOverride of itemHeldsOverride) {
|
||||
this.scene.addEnemyModifier(itemHeldOverride, true, false, false, true);
|
||||
}
|
||||
}
|
||||
|
||||
if (this.scene.getParty().filter(p => p.isShiny()).length === 6)
|
||||
this.scene.validateAchv(achvs.SHINY_PARTY);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user