diff --git a/PKHeX.Core/Legality/Encounters/Generator/EncounterStaticGenerator.cs b/PKHeX.Core/Legality/Encounters/Generator/EncounterStaticGenerator.cs index b499971b7..9c670d65c 100644 --- a/PKHeX.Core/Legality/Encounters/Generator/EncounterStaticGenerator.cs +++ b/PKHeX.Core/Legality/Encounters/Generator/EncounterStaticGenerator.cs @@ -12,7 +12,8 @@ public static IEnumerable GetPossible(PKM pkm, GameVersion game if (gameSource == GameVersion.Any) gameSource = (GameVersion)pkm.Version; - return GetStaticEncounters(pkm, gameSource: gameSource); + var encs = GetStaticEncounters(pkm, gameSource: gameSource); + return encs.Where(e => AllowGBCartEra || !GameVersion.GBCartEraOnly.Contains(e.Version)); } public static IEnumerable GetValidStaticEncounter(PKM pkm, GameVersion gameSource = GameVersion.Any) { @@ -77,7 +78,7 @@ private static bool GetIsMatchStatic(PKM pkm, EncounterStatic e, int lvl) case 1 when pkm.Met_Location == 0: return false; default: - if (pkm.Met_Location == 0) + if (pkm.Met_Location == 0 && pkm.Met_Level != 0) return false; break; }