pogo-data-generator
Version:
Pokemon GO project data generator
71 lines (70 loc) • 2.53 kB
TypeScript
import { Rpc } from '@na-ji/pogo-protos';
import Masterfile from './Masterfile';
import { AllPokemon, TempEvolutions, Evolutions, SinglePokemon, AllForms } from '../typings/dataTypes';
import { NiaMfObj, Generation, TempEvo, EvoBranch, EvolutionQuest } from '../typings/general';
import { Options } from '../typings/inputs';
export default class Pokemon extends Masterfile {
parsedPokemon: AllPokemon;
parsedPokeForms: AllPokemon;
parsedForms: AllForms;
formsRef: {
[id: string]: string;
};
generations: Generation;
lcBanList: Set<string>;
evolvedPokemon: Set<number>;
options: Options;
formsToSkip: string[];
evolutionQuests: {
[id: string]: EvolutionQuest;
};
parsedCostumes: {
[id: string]: {
id: number;
name: string;
proto: string;
noEvolve: boolean;
};
};
jungleCupRules: {
types: number[];
banned: number[];
};
constructor(options: Options);
pokemonName(id: number): string;
formName(id: number, formName: string): string;
skipForms(formName: string): boolean;
lookupPokemon(name: string): string;
lookupForm(id: number | undefined): string;
getGeneration(id: number): {
genId?: number;
generation?: string;
};
getMoves(moves: (string | number)[]): number[];
getTypes(incomingTypes: (string | number)[]): number[];
getCostumeOverrides(costumes: string[]): {
costumeId: Rpc.PokemonDisplayProto.Costume;
costumeProto: string;
costumeName: string;
}[];
compileEvos(mfObject: EvoBranch[]): Evolutions[];
compileTempEvos(mfObject: TempEvo[], evoBranch: EvoBranch[], primaryForm: SinglePokemon): TempEvolutions[];
generateProtoForms(): void;
addExtendedStats(object: NiaMfObj): void;
cleanExtendedStats(): void;
addFormBaseStats(formId: number, hp: number, a: number, d: number, sa: number, sd: number, sp: number): void;
addEvolutionQuest(object: NiaMfObj): void;
addForm(object: NiaMfObj): void;
addPokemon(object: NiaMfObj): void;
addSourdoughMoveMappings({ data: { sourdoughMoveMappingSettings: { mappings } } }: NiaMfObj): void;
missingPokemon(): void;
sortForms(): void;
littleCup(): void;
jungleCup(object: NiaMfObj): void;
jungleEligibility(): void;
makeFormsSeparate(): void;
parseCostumes(): void;
parsePokeApi(baseStats: AllPokemon, tempEvos: {
[id: string]: AllPokemon;
}): void;
}