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)); } } }
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; }
public RbyPokemon(RbySpecies species, byte level) : this(species, level, 0x9888) { }