Beispiel #1
0
    private void LoadSpecies()
    {
        const int maxIndexNumber = 190;

        int numBaseStats = IsYellow ? 151 : 150;

        byte[]     pokedex = ROM.Subarray(SYM["PokedexOrder"], maxIndexNumber);
        ReadStream data    = ROM.From("BaseStats");

        for (int i = 0; i < numBaseStats; i++)
        {
            byte indexNumber = (byte)Array.IndexOf(pokedex, data.Peek());
            Species.Add(new RbySpecies(this, ++indexNumber, data));
        }

        if (this is RedBlue)
        {
            Species.Add(new RbySpecies(this, 21, ROM.From(SYM["MewBaseStats"])));
        }

        // Add MISSINGNO data
        for (int i = 1; i <= maxIndexNumber; i++)
        {
            if (pokedex[i - 1] == 0)
            {
                RbySpecies species = new RbySpecies(this, (byte)i);
                Species.Add(new RbySpecies(this, (byte)i));
            }
        }
    }
Beispiel #2
0
 public RbyPokemon(RbySpecies species, byte level, ushort dvs)
 {
     (Species, Level, DVs) = (species, level, dvs);
     CalculateUnmodifiedStats();
     MaxHP             = UnmodifiedMaxHP;
     Attack            = UnmodifiedAttack;
     Defense           = UnmodifiedDefense;
     Speed             = UnmodifiedSpeed;
     Special           = UnmodifiedSpecial;
     AttackModifider   = 7;
     DefenseModifider  = 7;
     SpeedModifider    = 7;
     SpecialModifider  = 7;
     AccuracyModifider = 7;
     EvasionModifider  = 7;
 }
Beispiel #3
0
 public RbyPokemon(RbySpecies species, byte level) : this(species, level, 0x9888)
 {
 }