mirror of
https://github.com/kwsch/PKHeX.git
synced 2026-10-01 14:38:14 -05:00
Reference original encounter for sensitive checks
https://projectpokemon.org/home/forums/topic/46143-bug-in-last-update/?do=findComment&comment=234360 thanks paf!
This commit is contained in:
@@ -12,7 +12,7 @@ public sealed class LevelVerifier : Verifier
|
||||
public override void Verify(LegalityAnalysis data)
|
||||
{
|
||||
var pkm = data.pkm;
|
||||
var EncounterMatch = data.EncounterMatch;
|
||||
var EncounterMatch = data.EncounterOriginal;
|
||||
if (EncounterMatch is MysteryGift gift)
|
||||
{
|
||||
if (gift.Level != pkm.Met_Level && pkm.HasOriginalMetLocation)
|
||||
@@ -64,7 +64,7 @@ public override void Verify(LegalityAnalysis data)
|
||||
public void VerifyG1(LegalityAnalysis data)
|
||||
{
|
||||
var pkm = data.pkm;
|
||||
var EncounterMatch = data.EncounterMatch;
|
||||
var EncounterMatch = data.EncounterOriginal;
|
||||
if (pkm.IsEgg)
|
||||
{
|
||||
int elvl = Legal.GetEggHatchLevel(pkm);
|
||||
|
||||
@@ -181,7 +181,7 @@ private static void VerifyMiscEggCommon(LegalityAnalysis data)
|
||||
if (pkm.Move1_PP != pkm.GetMovePP(pkm.Move1, 0) || pkm.Move2_PP != pkm.GetMovePP(pkm.Move2, 0) || pkm.Move3_PP != pkm.GetMovePP(pkm.Move3, 0) || pkm.Move4_PP != pkm.GetMovePP(pkm.Move4, 0))
|
||||
data.AddLine(GetInvalid(V420, CheckIdentifier.Egg));
|
||||
|
||||
var EncounterMatch = data.EncounterMatch;
|
||||
var EncounterMatch = data.EncounterOriginal;
|
||||
var HatchCycles = (EncounterMatch as EncounterStatic)?.EggCycles;
|
||||
if (HatchCycles == 0 || HatchCycles == null)
|
||||
HatchCycles = pkm.PersonalInfo.HatchCycles;
|
||||
|
||||
@@ -13,7 +13,7 @@ public sealed class NicknameVerifier : Verifier
|
||||
public override void Verify(LegalityAnalysis data)
|
||||
{
|
||||
var pkm = data.pkm;
|
||||
var EncounterMatch = data.EncounterMatch;
|
||||
var EncounterMatch = data.EncounterOriginal;
|
||||
|
||||
// If the Pokémon is not nicknamed, it should match one of the language strings.
|
||||
if (pkm.Nickname.Length == 0)
|
||||
@@ -84,7 +84,7 @@ private bool VerifyUnNicknamedEncounter(LegalityAnalysis data, PKM pkm, string n
|
||||
}
|
||||
else
|
||||
{
|
||||
var EncounterMatch = data.EncounterMatch;
|
||||
var EncounterMatch = data.EncounterOriginal;
|
||||
// Can't have another language name if it hasn't evolved or wasn't a language-traded egg.
|
||||
bool evolved = EncounterMatch.Species != pkm.Species;
|
||||
bool match = PKX.GetSpeciesNameGeneration(pkm.Species, pkm.Language, pkm.Format) == nickname;
|
||||
@@ -394,7 +394,7 @@ private void VerifyTradeOTNick(LegalityAnalysis data, string[] validOT, int inde
|
||||
string OT = validOT[(validOT.Length / 2) + index];
|
||||
|
||||
var pkm = data.pkm;
|
||||
var EncounterMatch = data.EncounterMatch;
|
||||
var EncounterMatch = data.EncounterOriginal;
|
||||
if (!IsNicknameMatch(nick, pkm, EncounterMatch)) // trades that are not nicknamed (but are present in a table with others being named)
|
||||
data.AddLine(GetInvalid(V9, CheckIdentifier.Nickname));
|
||||
else
|
||||
|
||||
Binary file not shown.
Reference in New Issue
Block a user