diff --git a/PKHeX.Core/Legality/Core.cs b/PKHeX.Core/Legality/Core.cs index 2a5b9ce4c..cbc145edb 100644 --- a/PKHeX.Core/Legality/Core.cs +++ b/PKHeX.Core/Legality/Core.cs @@ -2046,7 +2046,7 @@ internal static IEnumerable GetTutorMoves(PKM pkm, int species, int form, b break; case 4: - info = PersonalTable.HGSS[species]; + info = PersonalTable.HGSS.GetFormeEntry(species, form); moves.AddRange(Tutors_4.Where((t, i) => info.TypeTutors[i])); moves.AddRange(SpecialTutors_4.Where((t, i) => SpecialTutors_Compatibility_4[i].Any(e => e == species))); break; diff --git a/PKHeX.Core/Legality/Encounters/EncounterGenerator.cs b/PKHeX.Core/Legality/Encounters/EncounterGenerator.cs index 47bce082a..a36075b23 100644 --- a/PKHeX.Core/Legality/Encounters/EncounterGenerator.cs +++ b/PKHeX.Core/Legality/Encounters/EncounterGenerator.cs @@ -76,6 +76,9 @@ private static IEnumerable GetEncounters4(PKM pkm, LegalInfo inf else deferred.Add(z); } + if (deferred.Count == 0) + yield break; + info.PIDIVMatches = false; foreach (var z in deferred) yield return z; diff --git a/PKHeX.Core/PersonalInfo/PersonalTable.cs b/PKHeX.Core/PersonalInfo/PersonalTable.cs index 8c7453bc6..4def67f46 100644 --- a/PKHeX.Core/PersonalInfo/PersonalTable.cs +++ b/PKHeX.Core/PersonalInfo/PersonalTable.cs @@ -111,7 +111,7 @@ private static void PopulateGen3Tutors() private static void PopulateGen4Tutors() { var tutors = Data.UnpackMini(Util.GetBinaryResource("tutors_g4.pkl"), "g4"); - for (int i = 0; i <= Legal.MaxSpeciesID_4; i++) + for (int i = 0; i < tutors.Length; i++) HGSS[i].AddTypeTutors(tutors[i]); }