From a7b9fafb69c797bf23d44d7b32a072e973aa667a Mon Sep 17 00:00:00 2001 From: Kurt Date: Fri, 1 Jan 2021 19:45:40 -0800 Subject: [PATCH] Remove unnecessary logic Encounters are thoroughly checked for their origins; don't need to check again if it's possible to have it in an egg. --- .../Encounters/Verifiers/EncounterVerifier.cs | 29 +++++++------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/PKHeX.Core/Legality/Encounters/Verifiers/EncounterVerifier.cs b/PKHeX.Core/Legality/Encounters/Verifiers/EncounterVerifier.cs index 5e5f4a7bf..6094f787c 100644 --- a/PKHeX.Core/Legality/Encounters/Verifiers/EncounterVerifier.cs +++ b/PKHeX.Core/Legality/Encounters/Verifiers/EncounterVerifier.cs @@ -86,24 +86,17 @@ private static CheckResult VerifyWildEncounterCrystalHeadbutt(ITrainerID tr, Enc } // Eggs - private static CheckResult VerifyEncounterEgg(PKM pkm, int gen, bool checkSpecies = true) + private static CheckResult VerifyEncounterEgg(PKM pkm, int gen) => gen switch { - // Check Species - if (checkSpecies && !Breeding.CanHatchAsEgg(pkm.Species)) - return new CheckResult(Severity.Invalid, LEggSpecies, CheckIdentifier.Encounter); - - return gen switch - { - 2 => new CheckResult(CheckIdentifier.Encounter), // valid -- no met location info - 3 => pkm.Format != 3 ? VerifyEncounterEgg3Transfer(pkm) : VerifyEncounterEgg3(pkm), - 4 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade4) : VerifyEncounterEgg4(pkm), - 5 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade5) : VerifyEncounterEgg5(pkm), - 6 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade6) : VerifyEncounterEgg6(pkm), - 7 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade6) : VerifyEncounterEgg7(pkm), - 8 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade6) : VerifyEncounterEgg8(pkm), - _ => new CheckResult(Severity.Invalid, LEggLocationInvalid, CheckIdentifier.Encounter) - }; - } + 2 => new CheckResult(CheckIdentifier.Encounter), // valid -- no met location info + 3 => pkm.Format != 3 ? VerifyEncounterEgg3Transfer(pkm) : VerifyEncounterEgg3(pkm), + 4 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade4) : VerifyEncounterEgg4(pkm), + 5 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade5) : VerifyEncounterEgg5(pkm), + 6 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade6) : VerifyEncounterEgg6(pkm), + 7 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade6) : VerifyEncounterEgg7(pkm), + 8 => pkm.IsEgg ? VerifyUnhatchedEgg(pkm, Locations.LinkTrade6) : VerifyEncounterEgg8(pkm), + _ => new CheckResult(Severity.Invalid, LEggLocationInvalid, CheckIdentifier.Encounter) + }; private static CheckResult VerifyEncounterEgg3(PKM pkm) { @@ -317,7 +310,7 @@ private static CheckResult VerifyEncounterEvent(PKM pkm, MysteryGift gift) } if (!pkm.IsEgg && gift.IsEgg) // hatched { - var hatchCheck = VerifyEncounterEgg(pkm, gift.Generation, false); + var hatchCheck = VerifyEncounterEgg(pkm, gift.Generation); if (!hatchCheck.Valid) return hatchCheck; }