Don't yield SV version eggs, egg OT gender check

This commit is contained in:
Kurt 2022-12-06 21:34:14 -08:00
parent 16595d2af8
commit 650ee8ae40
2 changed files with 4 additions and 2 deletions

View file

@ -29,7 +29,8 @@ internal static class EncounterGenerator9
if (ctr != 0) yield break;
}
if (Locations.IsEggLocationBred9(pk.Egg_Location))
// While an unhatched picnic egg, the Version remains 0.
if (Locations.IsEggLocationBred9(pk.Egg_Location) && !(pk.IsEgg && pk.Version != 0))
{
foreach (var z in GenerateEggs(pk, 9))
{ yield return z; ++ctr; }

View file

@ -539,7 +539,7 @@ public sealed class PK9 : PKM, ISanityChecksum, ITeraType, IMoveReset, ITechReco
{
// Apply link trade data, only if it left the OT (ignore if dumped & imported, or cloned, etc)
// If not matching the trainer details, mark as a traded egg.
if (!IsTradedEgg && tr.Gender == Gender && tr.Language == Language && tr.OT == OT_Name)
if (!IsTradedEgg && tr.Gender == OT_Gender && tr.Language == Language && tr.OT == OT_Name)
{
OT_Trash.Clear();
Nickname_Trash.Clear();
@ -553,6 +553,7 @@ public sealed class PK9 : PKM, ISanityChecksum, ITeraType, IMoveReset, ITechReco
else
{
HT_Name = tr.OT;
HT_Gender = tr.Gender;
HT_Language = (byte)tr.Language;
SetLinkTradeEgg(Day, Month, Year, Locations.LinkTrade6);
CurrentHandler = 1;