public void CalculateOriginalAbility() { Pokedex.PokemonForm pokemon = Pokedex.Pokedex.GetPokemonForm(Species, Form); Ability1 = pokemon.Ability1; Ability2 = pokemon.Ability2; Ability3 = pokemon.Ability3; }
public void GenerateMoveset() { Npcs.Npc npc = Npcs.NpcManager.Npcs[Num]; Pokedex.PokemonForm pokemon = null; List <int> validLevelUpMoves = new List <int>(); for (int i = 0; i < Moves.Length; i++) { if (npc.Moves[i] == -1) { if (npc.Species > -1) { pokemon = Pokedex.Pokedex.GetPokemonForm(npc.Species, Form); } else { return; } if (pokemon != null) { if (validLevelUpMoves.Count == 0) { for (int n = 0; n < pokemon.LevelUpMoves.Count; n++) { if (pokemon.LevelUpMoves[n].Level <= this.Level) { validLevelUpMoves.Add(n); } } } } break; } } for (int i = 0; i < Moves.Length; i++) { if (npc.Moves[i] == -1) { if (validLevelUpMoves.Count > 0) { int levelUpMoveSelected = Server.Math.Rand(0, validLevelUpMoves.Count); Moves[i].MoveNum = pokemon.LevelUpMoves[validLevelUpMoves[levelUpMoveSelected]].Move; if (Moves[i].MoveNum > -1) { Moves[i].MaxPP = Server.Moves.MoveManager.Moves[Moves[i].MoveNum].MaxPP; Moves[i].CurrentPP = Moves[i].MaxPP; } validLevelUpMoves.RemoveAt(levelUpMoveSelected); } } else if (npc.Moves[i] > 0) { // Move is preset in the npc editor Moves[i].MoveNum = npc.Moves[i]; Moves[i].MaxPP = Server.Moves.MoveManager.Moves[Moves[i].MoveNum].MaxPP; Moves[i].CurrentPP = Moves[i].MaxPP; } } }
public void CalculateOriginalStats() { Pokedex.PokemonForm pokemon = Pokedex.Pokedex.GetPokemonForm(Species, Form); BaseMaxHP = pokemon.GetMaxHP(Level); BaseAtk = pokemon.GetAtt(Level); BaseDef = pokemon.GetDef(Level); BaseSpclAtk = pokemon.GetSpAtt(Level); BaseSpclDef = pokemon.GetSpDef(Level); BaseSpd = pokemon.GetSpd(Level); }
public bool CanLearnTMMove(int moveNum) { Pokedex.PokemonForm pokemon = Pokedex.Pokedex.GetPokemonForm(Species, Form); if (pokemon != null) { return(pokemon.TMMoves.Contains(moveNum)); } else { return(false); } }
public void GenerateMoveset() { Pokedex.PokemonForm pokemon = null; List <int> validLevelUpMoves = new List <int>(); if (Species < 0) { return; } pokemon = Pokedex.Pokedex.GetPokemonForm(Species, Form); if (pokemon != null) { if (validLevelUpMoves.Count == 0) { for (int n = 0; n < pokemon.LevelUpMoves.Count; n++) { if (pokemon.LevelUpMoves[n].Level <= this.Level) { validLevelUpMoves.Add(n); } } } } for (int i = 0; i < Moves.Length; i++) { if (validLevelUpMoves.Count > 0) { int levelUpMoveSelected = Server.Math.Rand(0, validLevelUpMoves.Count); Moves[i].MoveNum = pokemon.LevelUpMoves[validLevelUpMoves[levelUpMoveSelected]].Move; if (Moves[i].MoveNum > -1) { Moves[i].MaxPP = Server.Moves.MoveManager.Moves[Moves[i].MoveNum].MaxPP; Moves[i].CurrentPP = Moves[i].MaxPP; } validLevelUpMoves.RemoveAt(levelUpMoveSelected); } } }
public void CalculateOriginalType() { Pokedex.PokemonForm pokemon = Pokedex.Pokedex.GetPokemonForm(Species, Form); Type1 = pokemon.Type1; Type2 = pokemon.Type2; }