Exemple #1
0
        private void B_RandEvo_Click(object sender, EventArgs e)
        {
            SaveCurrent();
            var settings = (SpeciesSettings)PG_Evolution.SelectedObject;

            if (ROM.Info.GG)
            {
                settings.Gen2 = settings.Gen3 = settings.Gen4 = settings.Gen5 = settings.Gen6 = settings.Gen7 = settings.Gen8 = false;
            }
            var rand = new EvolutionRandomizer(ROM.Info, Editor.Evolve.LoadAll(), Editor.Personal);

            int[] ban = Array.Empty <int>();

            if (ROM.Info.SWSH)
            {
                var pt = ROM.Data.PersonalData;
                ban = pt.Table.Take(ROM.Info.MaxSpeciesID + 1)
                      .Select((z, i) => new { Species = i, Present = ((PersonalInfoSWSH)z).IsPresentInGame })
                      .Where(z => !z.Present).Select(z => z.Species).ToArray();
            }

            rand.RandSpec.Initialize(settings, ban);
            rand.Execute();
            LoadIndex(CB_Species.SelectedIndex);
            System.Media.SystemSounds.Asterisk.Play();
        }
Exemple #2
0
        private void B_TradeEvo_Click(object sender, EventArgs e)
        {
            SaveCurrent();
            var settings = (SpeciesSettings)PG_Evolution.SelectedObject;

            settings.Gen2 = settings.Gen3 = settings.Gen4 = settings.Gen5 = settings.Gen6 = settings.Gen7 = false;
            var rand = new EvolutionRandomizer(ROM.Info, Editor.Evolve.LoadAll(), Editor.Personal);

            rand.Randomizer.Initialize(settings);
            rand.ExecuteTrade();
            LoadIndex(CB_Species.SelectedIndex);
            System.Media.SystemSounds.Asterisk.Play();
        }
Exemple #3
0
        private void B_Trade_Click(object sender, EventArgs e)
        {
            if (DialogResult.Yes != WinFormsUtil.Prompt(MessageBoxButtons.YesNo, "Remove all trade evolutions?", "Evolution methods will be altered so that evolutions will be possible with only one game."))
            {
                return;
            }

            setList();
            var evos    = files.Select(z => new EvolutionSet6(z)).ToArray();
            var evoRand = new EvolutionRandomizer(Main.Config, evos);

            evoRand.Randomizer.Initialize();
            evoRand.ExecuteTrade();
            evos.Select(z => z.Write()).ToArray().CopyTo(files, 0);
            getList();

            WinFormsUtil.Alert("All trade evolutions have been removed!", "Trade evolutions will now occur after reaching a certain Level, or after leveling up while holding its appropriate trade item.");
        }
Exemple #4
0
        private void B_RandAll_Click(object sender, EventArgs e)
        {
            if (DialogResult.Yes != WinFormsUtil.Prompt(MessageBoxButtons.YesNo, "Randomize all resulting species?", "Evolution methods and parameters will stay the same."))
            {
                return;
            }

            setList();
            // Set up advanced randomization options
            var evos    = files.Select(z => new EvolutionSet6(z)).ToArray();
            var evoRand = new EvolutionRandomizer(Main.Config, evos);

            evoRand.Randomizer.rBST  = CHK_BST.Checked;
            evoRand.Randomizer.rEXP  = CHK_Exp.Checked;
            evoRand.Randomizer.rType = CHK_Type.Checked;
            evoRand.Randomizer.Initialize();
            evoRand.Execute();
            evos.Select(z => z.Write()).ToArray().CopyTo(files, 0);
            getList();

            WinFormsUtil.Alert("All Pokémon's Evolutions have been randomized!");
        }
Exemple #5
0
        private void B_EveryLevel_Click(object sender, EventArgs e)
        {
            if (DialogResult.Yes != WinFormsUtil.Prompt(MessageBoxButtons.YesNo, "Modify evolutions?", "This will make it to where your Pokémon will evolve into something random every time it levels up."))
            {
                return;
            }

            SetList();
            var evos    = files.Select(z => new EvolutionSet7(z)).ToArray();
            var evoRand = new EvolutionRandomizer(Main.Config, evos);

            evoRand.Randomizer.rBST  = CHK_BST.Checked;
            evoRand.Randomizer.rEXP  = CHK_Exp.Checked;
            evoRand.Randomizer.rType = CHK_Type.Checked;
            evoRand.Randomizer.L     = CHK_L.Checked;
            evoRand.Randomizer.E     = CHK_E.Checked;
            evoRand.Randomizer.Initialize();
            evoRand.ExecuteEvolveEveryLevel();
            evoRand.Execute(); // randomize right after
            evos.Select(z => z.Write()).ToArray().CopyTo(files, 0);
            GetList();
            SystemSounds.Asterisk.Play();
        }