From 7013d4f0c8ecbfe2cd589f0368fa84d15fa6cb3f Mon Sep 17 00:00:00 2001 From: Kurt Date: Tue, 24 Sep 2019 23:28:05 -0700 Subject: [PATCH] add 7->8 transfer legality check currently flags anything transferred as illegal, which is the right thing to do until home is released. --- PKHeX.Core/Legality/Analysis.cs | 2 ++ PKHeX.Core/Legality/Tables/Tables8.cs | 4 ++++ PKHeX.Core/Legality/Verifiers/TransferVerifier.cs | 10 ++++++++++ 3 files changed, 16 insertions(+) diff --git a/PKHeX.Core/Legality/Analysis.cs b/PKHeX.Core/Legality/Analysis.cs index 543e83af6..5b4435345 100644 --- a/PKHeX.Core/Legality/Analysis.cs +++ b/PKHeX.Core/Legality/Analysis.cs @@ -232,6 +232,8 @@ private void ParsePK8() if (pkm.VC) UpdateVCTransferInfo(); UpdateChecks(); + if (Info.Generation <= 7) + Transfer.VerifyTransferLegalityG8(this); } /// diff --git a/PKHeX.Core/Legality/Tables/Tables8.cs b/PKHeX.Core/Legality/Tables/Tables8.cs index 1cd996bcc..e2d5caf3c 100644 --- a/PKHeX.Core/Legality/Tables/Tables8.cs +++ b/PKHeX.Core/Legality/Tables/Tables8.cs @@ -105,6 +105,10 @@ public static partial class Legal { }; + internal static readonly HashSet TransferrableGalar = new HashSet + { + }; + #region Unreleased Items internal static readonly HashSet UnreleasedHeldItems_8 = new HashSet { diff --git a/PKHeX.Core/Legality/Verifiers/TransferVerifier.cs b/PKHeX.Core/Legality/Verifiers/TransferVerifier.cs index 3f4230df6..a8861eb9d 100644 --- a/PKHeX.Core/Legality/Verifiers/TransferVerifier.cs +++ b/PKHeX.Core/Legality/Verifiers/TransferVerifier.cs @@ -101,6 +101,16 @@ public void VerifyTransferLegalityG4(LegalityAnalysis data) } } + public void VerifyTransferLegalityG8(LegalityAnalysis data) + { + var pkm = data.pkm; + int species = pkm.Species; + if (!Legal.TransferrableGalar.Contains(species)) + data.AddLine(GetInvalid(LTransferBad)); + + // todo: alternate forms disallowed? + } + public IEnumerable VerifyVCEncounter(PKM pkm, IEncounterable encounter, ILocation transfer, IList Moves) { // Check existing EncounterMatch