import { Species } from './data/enums/species'; import { Abilities } from "./data/enums/abilities"; import { Biome } from "./data/enums/biome"; import { Moves } from "./data/enums/moves"; import { WeatherType } from "./data/weather"; import { Variant } from './data/variant'; import { BerryType } from './data/berry'; import { TempBattleStat } from './data/temp-battle-stat'; import { Nature } from './data/nature'; import { Type } from './data/type'; import { Stat } from './data/pokemon-stat'; import { PokeballCounts } from './battle-scene'; import { PokeballType } from './data/pokeball'; /** * Overrides for testing different in game situations * if an override name starts with "STARTING", it will apply when a new run begins */ /** * OVERALL OVERRIDES */ // a specific seed (default: a random string of 24 characters) export const SEED_OVERRIDE: string = ''; export const WEATHER_OVERRIDE: WeatherType = WeatherType.NONE; export const DOUBLE_BATTLE_OVERRIDE: boolean = false; export const STARTING_WAVE_OVERRIDE: integer = 0; export const STARTING_BIOME_OVERRIDE: Biome = Biome.TOWN; // default 1000 export const STARTING_MONEY_OVERRIDE: integer = 0; export const POKEBALL_OVERRIDE: { active: boolean, pokeballs: PokeballCounts } = { active: false, pokeballs: { [PokeballType.POKEBALL]: 5, [PokeballType.GREAT_BALL]: 0, [PokeballType.ULTRA_BALL]: 0, [PokeballType.ROGUE_BALL]: 0, [PokeballType.MASTER_BALL]: 0, } } /** * PLAYER OVERRIDES */ // forms can be found in pokemon-species.ts export const STARTER_FORM_OVERRIDE: integer = 0; // default 5 or 20 for Daily export const STARTING_LEVEL_OVERRIDE: integer = 0; /** * SPECIES OVERRIDE * will only apply to the first starter in your party or each enemy pokemon * default is 0 to not override * @example SPECIES_OVERRIDE = Species.Bulbasaur; */ export const STARTER_SPECIES_OVERRIDE: Species | integer = 0; export const ABILITY_OVERRIDE: Abilities = Abilities.NONE; export const PASSIVE_ABILITY_OVERRIDE: Abilities = Abilities.NONE; export const MOVESET_OVERRIDE: Array = []; export const SHINY_OVERRIDE: boolean = false; export const VARIANT_OVERRIDE: Variant = 0; /** * OPPONENT / ENEMY OVERRIDES */ export const OPP_SPECIES_OVERRIDE: Species | integer = 0; export const OPP_ABILITY_OVERRIDE: Abilities = Abilities.NONE; export const OPP_PASSIVE_ABILITY_OVERRIDE = Abilities.NONE; export const OPP_MOVESET_OVERRIDE: Array = []; export const OPP_SHINY_OVERRIDE: boolean = false; export const OPP_VARIANT_OVERRIDE: Variant = 0; /** * MODIFIER / ITEM OVERRIDES * if count is not provided, it will default to 1 * @example Modifier Override [{name: "EXP_SHARE", count: 2}] * @example Held Item Override [{name: "LUCKY_EGG"}] * * Some items are generated based on a sub-type (i.e. berries), to override those: * @example [{name: "BERRY", count: 5, type: BerryType.SITRUS}] * types are listed in interface below * - TempBattleStat is for TEMP_STAT_BOOSTER / X Items (Dire hit is separate) * - Stat is for BASE_STAT_BOOSTER / Vitamin * - Nature is for MINT * - Type is for TERA_SHARD or ATTACK_TYPE_BOOSTER (type boosting items i.e Silk Scarf) * - BerryType is for BERRY */ interface ModifierOverride { name: string, count?: integer type?: TempBattleStat|Stat|Nature|Type|BerryType } export const STARTING_MODIFIER_OVERRIDE: Array = []; export const OPP_MODIFIER_OVERRIDE: Array = []; export const STARTING_HELD_ITEMS_OVERRIDE: Array = []; export const OPP_HELD_ITEMS_OVERRIDE: Array = [];