fBaseXtensions.Settings.SettingsForm.btn_CharacterControl_Setup_Click C# (CSharp) Method

btn_CharacterControl_Setup_Click() private method

private btn_CharacterControl_Setup_Click ( object sender, EventArgs e ) : void
sender object
e System.EventArgs
return void
        private void btn_CharacterControl_Setup_Click(object sender, EventArgs e)
        {
            if (BotMain.IsRunning || BotMain.IsPaused) return;

            if (ZetaDia.IsInGame) return;

            if (!UI.ValidateUIElement(UI.GameMenu.SwitchHeroButton)) return;

            int MaxHeroSlots = ZetaDia.Service.GameAccount.MaxHeroSlots;

            if (curIndex == MaxHeroSlots)
            {
                Logger.DBLog.InfoFormat("Creating file with a total of {0} hero entries", CharacterControl.HeroIndexInfo.Characters.Count);
                BnetCharacterIndexInfo.SerializeToXML(CharacterControl.HeroIndexInfo, BnetCharacterIndexInfo.BnetCharacterInfoSettingsPath);
                curIndex = 0;
                groupBox_BnetControl_Setup.Enabled = false;
                groupBox_BnetControl_AltHero.Enabled = true;
                UpdateBnetHeroComboBox();
                return;
            }

            Logger.DBLog.InfoFormat("Switching to index {0}", curIndex);
            ZetaDia.Service.GameAccount.SwitchHero(curIndex);
            Thread.Sleep(1500);

            //Clear Cache -- and get hero info
            ZetaDia.Memory.ClearCache();
            CharacterControl.HeroInfo hinfo = new CharacterControl.HeroInfo(ZetaDia.Service.Hero);
            BnetCharacterIndexInfo.BnetCharacterEntry entry = new BnetCharacterIndexInfo.BnetCharacterEntry(curIndex,hinfo.Name, hinfo.Class);
            //Add entry
            CharacterControl.HeroIndexInfo.Characters.Add(entry);
            Logger.DBLog.InfoFormat("Recording hero info for index {0}\r\n{1}", curIndex, hinfo.ToString());

            if (curIndex == 0)
            {
                btn_CharacterControl_Setup.Text = "Next";
            }

            curIndex++;
        }
SettingsForm