private void VerifyIVsGoTransfer(LegalityAnalysis data) { var pkm = data.pkm; if (!IsGoIVSetValid(pkm)) { data.AddLine(GetInvalid(LIVNotCorrect)); } else if (data.EncounterMatch is EncounterSlot8GO g) { var minIV = EncountersGO.GetMinIVs(g.Species, g.Form, (Ball)pkm.Ball); if (!IsGoIVSetValid(pkm, minIV)) { data.AddLine(GetInvalid(LIVNotCorrect)); } } if (!pkm.IsShiny) { return; } var enc = data.EncounterMatch; bool shinyValid = EncountersGO.IsShinyValid(enc.Species, enc.Form, (Ball)pkm.Ball); if (!shinyValid) { data.AddLine(GetInvalid(LEncStaticPIDShiny, CheckIdentifier.PID)); } }
private static EncounterSlot8GO GetSlot(EncounterArea8g area, int species, int form, GameVersion baseOrigin) { var min = EncountersGO.GetMinLevel(species, form); return(new EncounterSlot8GO(area, species, form, baseOrigin, min, 40)); }