Beispiel #1
0
        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));
            }
        }
Beispiel #2
0
        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));
        }