diff --git a/PKHeX.Core/Legality/Checks.cs b/PKHeX.Core/Legality/Checks.cs index 86973c9de..4019c3685 100644 --- a/PKHeX.Core/Legality/Checks.cs +++ b/PKHeX.Core/Legality/Checks.cs @@ -95,9 +95,7 @@ private void verifyECPIDWurmple() if (pkm.Species == 265) AddLine(Severity.Valid, string.Format(V212, evoVal == 0 ? specieslist[267] : specieslist[269]), CheckIdentifier.EC); - - int wIndex = Array.IndexOf(Legal.WurmpleEvolutions, pkm.Species) / 2; - if (evoVal != wIndex) + else if (evoVal != Array.IndexOf(Legal.WurmpleEvolutions, pkm.Species) / 2) AddLine(Severity.Invalid, V210, CheckIdentifier.EC); } private void verifyEC() diff --git a/PKHeX.Core/Legality/Encounters/EncounterGenerator.cs b/PKHeX.Core/Legality/Encounters/EncounterGenerator.cs index d44d6aa4a..84354121b 100644 --- a/PKHeX.Core/Legality/Encounters/EncounterGenerator.cs +++ b/PKHeX.Core/Legality/Encounters/EncounterGenerator.cs @@ -154,10 +154,10 @@ private static IEnumerable GenerateRawEncounters(PKM pkm) foreach (var z in getValidFriendSafari(pkm)) { yield return z; ++ctr; } - if (ctr != 0) yield break; + if (ctr != 0 && !gen3egg) yield break; foreach (var z in getValidWildEncounters(pkm)) { yield return z; ++ctr; } - if (ctr != 0) yield break; + if (ctr != 0 && !gen3egg) yield break; foreach (var z in getValidEncounterTrade(pkm)) { yield return z; ++ctr; } // if (ctr != 0) yield break; diff --git a/PKHeX.Core/Legality/Encounters/VerifyEncounter.cs b/PKHeX.Core/Legality/Encounters/VerifyEncounter.cs index 09eca4821..91735f217 100644 --- a/PKHeX.Core/Legality/Encounters/VerifyEncounter.cs +++ b/PKHeX.Core/Legality/Encounters/VerifyEncounter.cs @@ -10,8 +10,6 @@ public static CheckResult verifyEncounter(PKM pkm, IEncounterable encounter) if (encounter is EncounterEgg e) { pkm.WasEgg = true; - if (pkm.GenNumber == 3) - return verifyEncounterEgg3Transfer(pkm); return verifyEncounterEgg(pkm, e); } if (encounter is EncounterLink l) @@ -55,7 +53,7 @@ private static CheckResult verifyEncounterEgg(PKM pkm, IEncounterable egg) { case 1: case 2: return new CheckResult(CheckIdentifier.Encounter); // no met location info - case 3: return verifyEncounterEgg3(pkm); + case 3: return pkm.Format != 3 ? verifyEncounterEgg3Transfer(pkm) : verifyEncounterEgg3(pkm); case 4: return pkm.IsEgg ? verifyUnhatchedEgg(pkm, 02002) : verifyEncounterEgg4(pkm); case 5: return pkm.IsEgg ? verifyUnhatchedEgg(pkm, 30002) : verifyEncounterEgg5(pkm); case 6: return pkm.IsEgg ? verifyUnhatchedEgg(pkm, 30002) : verifyEncounterEgg6(pkm);