diff --git a/PKHeX.WinForms/MainWindow/Main.cs b/PKHeX.WinForms/MainWindow/Main.cs index a5a4b1911..8319db6a6 100644 --- a/PKHeX.WinForms/MainWindow/Main.cs +++ b/PKHeX.WinForms/MainWindow/Main.cs @@ -2438,9 +2438,8 @@ private void updateRandomEC(object sender, EventArgs e) uint evoVal; switch (pkm.GenNumber) { - case 3: evoVal = pkm.PID & 0xFFFF; break; case 4: - case 5: evoVal = pkm.PID >> 16; break; + case 3: evoVal = pkm.EncryptionConstant & 0xFFFF; break; default: evoVal = pkm.EncryptionConstant >> 16; break; } evoVal = evoVal%10/5; diff --git a/PKHeX/Legality/Checks.cs b/PKHeX/Legality/Checks.cs index 33bafed19..5bc74ed78 100644 --- a/PKHeX/Legality/Checks.cs +++ b/PKHeX/Legality/Checks.cs @@ -92,7 +92,7 @@ private void verifyGender() if (!PIDNature) return; - if (pkm.PID % 25 == pkm.Nature) + if (pkm.EncryptionConstant % 25 == pkm.Nature) AddLine(Severity.Valid, V252, CheckIdentifier.Nature); else AddLine(Severity.Invalid, V253, CheckIdentifier.Nature); @@ -152,9 +152,8 @@ private void verifyECPIDWurmple() uint evoVal; switch (pkm.GenNumber) { - case 3: evoVal = pkm.PID & 0xFFFF; break; case 4: - case 5: evoVal = pkm.PID >> 16; break; + case 3: evoVal = pkm.EncryptionConstant & 0xFFFF; break; default: evoVal = pkm.EncryptionConstant >> 16; break; } evoVal = evoVal%10/5; diff --git a/PKHeX/Legality/RNG/MethodFinder.cs b/PKHeX/Legality/RNG/MethodFinder.cs index a138e4fd4..5002d8fba 100644 --- a/PKHeX/Legality/RNG/MethodFinder.cs +++ b/PKHeX/Legality/RNG/MethodFinder.cs @@ -17,9 +17,7 @@ public static PIDIV Analyze(PKM pk) { if (pk.Format < 3) return AnalyzeGB(pk); - var pid = pk.Format >= 6 && pk.GenNumber >= 3 && pk.GenNumber < 6 - ? pk.EncryptionConstant // use unmodified PID, quicker than checking if bit was flipped - : pk.PID; // use actual PID + var pid = pk.EncryptionConstant; var top = pid >> 16; var bot = pid & 0xFFFF;