private void MakeEvolveEveryLevel(EvolutionSet evo, int species)
        {
            var evos = evo.PossibleEvolutions;

            foreach (EvolutionMethod v in evos)
            {
                switch (Config.Generation)
                {
                case 6:
                    v.Argument = 1;
                    v.Method   = 4;
                    v.Species  = 1;
                    break;

                default:
                    v.Argument = 0;
                    v.Form     = 0;
                    v.Level    = 1;
                    v.Method   = 4;
                    v.Species  = 1;    // will be randomized after
                    break;
                }
            }

            if (evos[1].Species != 0) // has other branched evolutions; remove them
            {
                for (int i = 1; i < evos.Length; i++)
                {
                    evos[i] = new EvolutionMethod();
                }
            }
        }
Example #2
0
 private void ReplaceTradeMethods(EvolutionSet evos, int species)
 {
     for (var i = 0; i < evos.PossibleEvolutions.Length; i++)
     {
         var evo = evos.PossibleEvolutions[i];
         ReplaceTradeMethod(evo, species, i);
     }
 }
Example #3
0
 public void LoadEvolutions(EvolutionSet s)
 {
     cEvos = s;
     Debug.Assert(EvoRows.Length == s.PossibleEvolutions.Length);
     for (int i = 0; i < EvoRows.Length; i++)
     {
         var row = EvoRows[i];
         row.LoadEvolution(s.PossibleEvolutions[i]);
     }
 }
Example #4
0
 private void Randomize(EvolutionSet evos, int species)
 {
     foreach (var evo in evos.PossibleEvolutions)
     {
         if (evo.Method != 0)
         {
             evo.Species = Randomizer.GetRandomSpecies(evo.Species, species);
         }
     }
 }
Example #5
0
 private void Randomize(EvolutionSet evos, int species)
 {
     foreach (var evo in evos.PossibleEvolutions)
     {
         if (evo.Method != 0)
         {
             evo.Species = RandSpec.GetRandomSpecies(evo.Species, species);
             evo.Form    = RandForm.GetRandomForme(evo.Species, false, false, true, Game.SWSH, Personal.Table);
         }
     }
 }
Example #6
0
        private void Randomize(EvolutionSet evo, int i)
        {
            var evos = evo.PossibleEvolutions;

            foreach (EvolutionMethod v in evos)
            {
                if (v.Method > 0)
                {
                    v.Species = Randomizer.GetRandomSpecies(v.Species, i);
                }
            }
        }
Example #7
0
        public async Task <IEnumerable <EvolutionSet> > GetEvolutions(bool edited = false)
        {
            var garcEvolutions = await this.GetGarc(GarcNames.Evolutions, edited : edited);

            var files = await garcEvolutions.GetFiles();

            return(files.Select(f => {
                var evoSet = EvolutionSet.New(this.Version);
                evoSet.Read(f);
                return evoSet;
            }));
        }
Example #8
0
        private void Trade(EvolutionSet evo, int i)
        {
            var evos = evo.PossibleEvolutions;

            foreach (EvolutionMethod v in evos)
            {
                if (Config.Generation == 6 && v.Method == 5) // Gen 6 uses Argument rather than Level
                {
                    if (i == 708 || i == 710)                // Phantump/Pumpkaboo
                    {
                        v.Argument = 20;
                    }
                    else
                    {
                        v.Argument = 30;
                    }
                    v.Method = 4; // trade -> level up
                }

                else if (Config.Generation == 7 && v.Method == 5)
                {
                    if (i == 708 || i == 710 || i == 871 || i == 872 || i == 873 || i == 876 || i == 877 || i == 878) // Phantump/Pumpkaboo forms
                    {
                        v.Level = 20;
                    }
                    else
                    {
                        v.Level = 30;
                    }
                    v.Method = 4; // trade -> level up
                }

                if (v.Method == 6) // trade with held item -> level up with held item
                {
                    v.Method = 19;
                }

                if (v.Method == 7) // trade for opposite -> level up with party
                {
                    if (i == 588)
                    {
                        v.Argument = 616; // Karrablast with Shelmet
                    }
                    if (i == 616)
                    {
                        v.Argument = 588; // Shelmet with Karrablast
                    }
                    v.Method = 22;
                }
            }
        }
Example #9
0
        private static void MakeEvolveEveryLevel(EvolutionSet evos, int species)
        {
            var evoSet = evos.PossibleEvolutions;

            evoSet[0] = new EvolutionMethod
            {
                Argument = 0, // clear
                Form     = 0, // randomized later
                Level    = 1,
                Method   = EvolutionType.LevelUp,
                Species  = species, // randomized later
            };

            if (evoSet[1].HasData) // has other branched evolutions; remove them
            {
                for (int i = 1; i < evoSet.Length; i++)
                {
                    evoSet[i] = new EvolutionMethod();
                }
            }
        }