internal static bool GetCanInheritMoves(int species) { if (FixedGenderFromBiGender.Contains(species)) // Nincada -> Shedinja loses gender causing 'false', edge case { return(true); } var pi = PKX.Personal[species]; if (!pi.Genderless && !pi.OnlyMale) { return(true); } if (MixedGenderBreeding.Contains(species)) { return(true); } return(false); }
public static int[] GetEggMoves(PersonalInfo pi, int species, int form, GameVersion version, int generation) { if (species > GetMaxSpeciesOrigin(generation)) { return(Array.Empty <int>()); } if (pi.Genderless && !FixedGenderFromBiGender.Contains(species)) { return(Array.Empty <int>()); } if (!Breeding.CanGameGenerateEggs(version)) { return(Array.Empty <int>()); } return(GetEggMoves(generation, species, form, version)); }
internal static int[] GetEggMoves(PKM pkm, int species, int formnum, GameVersion version) { int gen = pkm.Format <= 2 || pkm.VC ? 2 : pkm.GenNumber; if (!pkm.InhabitedGeneration(gen, species) || (pkm.PersonalInfo.Gender == 255 && !FixedGenderFromBiGender.Contains(species))) { return(Array.Empty <int>()); } if (pkm.Version == 15 || pkm.GG) { return(Array.Empty <int>()); } if (version == GameVersion.Any) { version = (GameVersion)pkm.Version; } return(GetEggMoves(gen, species, formnum, version)); }
internal static int[] GetEggMoves(PKM pkm, int species, int formnum, GameVersion version) { if (!pkm.InhabitedGeneration(pkm.GenNumber, species) || pkm.PersonalInfo.Gender == 255 && !FixedGenderFromBiGender.Contains(species)) { return(new int[0]); } if (version == GameVersion.Any) { version = (GameVersion)pkm.Version; } return(GetEggMoves(pkm.GenNumber, species, formnum, version)); }