mirror of
https://github.com/kwsch/PKHeX.git
synced 2026-05-09 04:24:36 -05:00
Misc ec/pid tweaks
use the encryption constant (pk3-5 return PID on get), fix gen4 using gen5 correlation
This commit is contained in:
parent
99b243b4fa
commit
d05d6c44f4
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user