Optional
allowLegendaries: booleanReturns the derived trainer type for a given trainer type.
The trainer type to derive from. (If null, the this.trainerType property will be used.)
Retrieves the title for the trainer based on the provided trainer slot and variant.
The slot to determine which title to use. Defaults to TrainerSlot.NONE.
The variant of the trainer to determine the specific title.
Initializes the trainer configuration for a Champion.
Whether the Champion is Male or Female (for localization of the title).
The updated TrainerConfig instance.
Initializes the trainer configuration for an Elite Four member.
The signature species for the Elite Four member.
Whether the Elite Four Member is Male or Female (for localization of the title).
Optional
specialtyType: Type{Type} The specialty type for the Elite Four member.
Optional
teraSlot: numberOptional, sets the party member in this slot to Terastallize.
The updated TrainerConfig instance.
Initializes the trainer configuration for an evil team admin.
The updated TrainerConfig instance. *
Initializes the trainer configuration for an evil team leader. Temporarily hardcoding evil leader teams though.
The updated TrainerConfig instance. *
Initializes the trainer configuration for a Gym Leader.
The signature species for the Gym Leader. Added to party in reverse order.
Whether the Gym Leader is Male or Not (for localization of the title).
The specialty type for the Gym Leader.
Whether the Gym Leader always uses Tera (true), or only Teras after GYM_LEADER_TERA_WAVE (false). Defaults to false.
Optional
teraSlot: numberOptional, sets the party member in this slot to Terastallize. Wraps based on party size.
The updated TrainerConfig instance. *
Initializes the trainer configuration for a Stat Trainer, as part of the Trainer's Test Mystery Encounter.
Whether the stat trainer is Male or Female (for localization of the title).
The updated TrainerConfig instance.
Sets the title for double trainers
The key for the title in the i18n file. (e.g., "champion_double").
The updated TrainerConfig instance.
Sets the trainer type for double battles.
The TrainerType of the partner in a double battle.
The updated TrainerConfig instance.
Rest
...modifierTypeFuncs: (() => ModifierTypeFunc)[]Sets the configuration for trainers with double battles, including the name of the double trainer and the encounter BGM.
The name of the double trainer (e.g., "Ace Duo" for Trainer Class Doubles or "red_blue_double" for NAMED trainer doubles).
Optional
doubleEncounterBgm: string | TrainerTypeThe encounter BGM for the double trainer, which can be a TrainerType or a string.
The updated TrainerConfig instance.
Sets the configuration for trainers with genders, including the female name and encounter background music (BGM).
Optional
nameFemale: stringThe name of the female trainer. If 'Ivy', a localized name will be assigned.
Optional
femaleEncounterBgm: string | TrainerTypeThe encounter BGM for the female trainer, which can be a TrainerType or a string.
The updated TrainerConfig instance.
Sets a specific pokemon to instantly Tera
The index within the team to have instant Tera.
this
Sets a localized name for the trainer. This should only be used for trainers that dont use a "initFor" function and are considered "named" trainers
The name of the trainer.
The updated TrainerConfig instance.
Rest
...modifierTypeFuncs: (() => ModifierTypeFunc)[]Rest
...partyTemplates: TrainerPartyTemplate[]Sets random pokemon from the trainer's team to instant tera. Also sets Tera type to specialty type and checks for Shedinja as appropriate.
A callback (yucky) to see how many teras should be used
Optional
slot: numberOptional, a specified slot that should be terastallized. Wraps to match party size (-1 will get the last slot and so on).
this
Optional
allowLegendaries: booleanReturns the pool of species for an evil team admin
The evil team the admin belongs to.
Creates a shallow copy of a trainer config so that it can be modified without affecting the trainerConfigs source map