mirror of
https://github.com/kwsch/PKHeX
synced 2025-02-17 05:48:44 +00:00
parent
dfa951d76c
commit
506e64186a
1 changed files with 23 additions and 5 deletions
|
@ -97,11 +97,6 @@ namespace PKHeX.Core
|
|||
{
|
||||
var pkm = data.pkm;
|
||||
var Info = data.Info;
|
||||
if (Info.Generation < 6 || pkm.IsEgg || (pkm.Format == 7 && (pkm.GG || pkm.OT_Memory != 4)))
|
||||
{
|
||||
VerifyOTMemoryIs(data, 0, 0, 0, 0); // empty
|
||||
return;
|
||||
}
|
||||
|
||||
switch (data.EncounterMatch)
|
||||
{
|
||||
|
@ -123,6 +118,12 @@ namespace PKHeX.Core
|
|||
int memoryGen = Info.Generation;
|
||||
int memory = pkm.OT_Memory;
|
||||
|
||||
if (!CanHaveMemory(pkm, memoryGen, memory))
|
||||
{
|
||||
VerifyOTMemoryIs(data, 0, 0, 0, 0); // empty
|
||||
return;
|
||||
}
|
||||
|
||||
// Bounds checking
|
||||
switch (memoryGen)
|
||||
{
|
||||
|
@ -170,6 +171,23 @@ namespace PKHeX.Core
|
|||
data.AddLine(VerifyCommonMemory(pkm, 0, Info.Generation));
|
||||
}
|
||||
|
||||
private static bool CanHaveMemory(PKM pkm, int origin, int memory)
|
||||
{
|
||||
if (pkm.GG) // LGPE never assigns memories
|
||||
return false;
|
||||
|
||||
if ((pkm.VC || pkm.Gen7) && memory != 4) // Generation 7 - Trade memory or nothing
|
||||
return memory == 4;
|
||||
|
||||
if (origin < 6) // NDS/3DS
|
||||
return false;
|
||||
|
||||
if (pkm.IsEgg) // Eggs should not have memories
|
||||
return false;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private void VerifyHTMemory(LegalityAnalysis data)
|
||||
{
|
||||
var pkm = data.pkm;
|
||||
|
|
Loading…
Add table
Reference in a new issue