From 5e55b916fa88acdcbed1529eaba2c202b24ffcb4 Mon Sep 17 00:00:00 2001 From: Kurt Date: Sat, 31 Mar 2018 21:55:59 -0700 Subject: [PATCH] Handle fixed gender statics Seems like a PID/Nature/Gender/Ability smart-setter is necessary for other encounters --- .../Legality/Encounters/EncounterStatic.cs | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/PKHeX.Core/Legality/Encounters/EncounterStatic.cs b/PKHeX.Core/Legality/Encounters/EncounterStatic.cs index d20a9f284..c594f228e 100644 --- a/PKHeX.Core/Legality/Encounters/EncounterStatic.cs +++ b/PKHeX.Core/Legality/Encounters/EncounterStatic.cs @@ -82,8 +82,18 @@ public PKM ConvertToPKM(ITrainerInfo SAV) pk.Language = lang; pk.CurrentLevel = level; pk.Version = (int)version; - pk.PID = Util.Rand32(); - pk.Gender = gender = pk.GetSaneGender(gender); + + if (3 <= pk.Format && pk.Format <= 5) + { + pk.SetPIDGender(gender); + pk.Gender = pk.GetSaneGender(gender); + } + else + { + pk.PID = Util.Rand32(); + pk.Gender = pk.GetSaneGender(gender); + pk.Nature = nature; + } pk.Nickname = PKX.GetSpeciesNameGeneration(Species, lang, Generation); pk.Ball = Ball; pk.Met_Level = level; @@ -95,7 +105,6 @@ public PKM ConvertToPKM(ITrainerInfo SAV) pk.EggMetDate = today; } - pk.Nature = nature; pk.AltForm = Form; pk.Language = lang; @@ -124,6 +133,7 @@ public PKM ConvertToPKM(ITrainerInfo SAV) if (this is EncounterStaticPID pid) { pk.PID = pid.PID; + pk.Gender = pk.GetSaneGender(gender); if (pk is PK5 pk5) pk5.NPokémon = pid.NSparkle; }