Exemplo n.º 1
0
 public void CalculateOriginalAbility()
 {
     Pokedex.PokemonForm pokemon = Pokedex.Pokedex.GetPokemonForm(Species, Form);
     Ability1 = pokemon.Ability1;
     Ability2 = pokemon.Ability2;
     Ability3 = pokemon.Ability3;
 }
Exemplo n.º 2
0
        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;
                }
            }
        }
Exemplo n.º 3
0
 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);
 }
Exemplo n.º 4
0
 public bool CanLearnTMMove(int moveNum)
 {
     Pokedex.PokemonForm pokemon = Pokedex.Pokedex.GetPokemonForm(Species, Form);
     if (pokemon != null)
     {
         return(pokemon.TMMoves.Contains(moveNum));
     }
     else
     {
         return(false);
     }
 }
Exemplo n.º 5
0
        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);
                }
            }
        }
Exemplo n.º 6
0
 public void CalculateOriginalType()
 {
     Pokedex.PokemonForm pokemon = Pokedex.Pokedex.GetPokemonForm(Species, Form);
     Type1 = pokemon.Type1;
     Type2 = pokemon.Type2;
 }