diff --git a/PKHeX/Legality/Checks.cs b/PKHeX/Legality/Checks.cs index 096778248..89e1ac174 100644 --- a/PKHeX/Legality/Checks.cs +++ b/PKHeX/Legality/Checks.cs @@ -1817,7 +1817,7 @@ namespace PKHeX.Core if (ball == 26) { - if ((pkm.Species > 731 && pkm.Species <= 785) || Lineage.Any(e => Legal.PastGenAlolanNatives.Contains(e))) + if ((pkm.Species > 731 && pkm.Species <= 785) || Lineage.Any(e => Legal.PastGenAlolanNatives.Contains(e) && !Legal.PastGenAlolanNativesUncapturable.Contains(e))) { AddLine(Severity.Valid, V123, CheckIdentifier.Ball); return; diff --git a/PKHeX/Legality/Tables7.cs b/PKHeX/Legality/Tables7.cs index 51663fa52..97e7dedce 100644 --- a/PKHeX/Legality/Tables7.cs +++ b/PKHeX/Legality/Tables7.cs @@ -303,6 +303,11 @@ namespace PKHeX.Core 582, 583, 584, 587, 594, 627, 628, 629, 630, 661, 662, 663, 674, 675, 700, 703, 704, 705, 706, 707, 708, 709, 718 }; + public static readonly int[] PastGenAlolanNativesUncapturable = + { + 142, // Aerodacyl + 137, 233, 474 // Porygon++ + }; internal static readonly int[] PastGenAlolanScans = {