Example #1
0
        void btnEdit_Click(object sender, EventArgs e)

        {
            if (this.lvSets.SelectedIndices.Count <= 0)
            {
                return;
            }
            bool   flag           = false;
            string uidOld         = "";
            int    selectedIndex1 = this.lvSets.SelectedIndices[0];
            EnhancementSetCollection enhancementSets = DatabaseAPI.Database.EnhancementSets;
            int            selectedIndex2            = this.lvSets.SelectedIndices[0];
            EnhancementSet iSet = enhancementSets[selectedIndex2];

            enhancementSets[selectedIndex2] = iSet;
            frmSetEdit frmSetEdit = new frmSetEdit(ref iSet);
            int        num        = (int)frmSetEdit.ShowDialog();

            if (frmSetEdit.DialogResult == DialogResult.OK)
            {
                if (frmSetEdit.mySet.Uid != DatabaseAPI.Database.EnhancementSets[this.lvSets.SelectedIndices[0]].Uid)
                {
                    flag   = true;
                    uidOld = DatabaseAPI.Database.EnhancementSets[this.lvSets.SelectedIndices[0]].Uid;
                }
                DatabaseAPI.Database.EnhancementSets[this.lvSets.SelectedIndices[0]] = new EnhancementSet(frmSetEdit.mySet);
                this.ImageUpdate();
                this.UpdateListItem(selectedIndex1);
                if (flag)
                {
                    frmSetListing.RenameIOSet(uidOld, frmSetEdit.mySet.Uid);
                    DatabaseAPI.MatchEnhancementIDs();
                }
            }
        }
Example #2
0
        public void AddListItem(int Index)
        {
            string[]       items          = new string[6];
            EnhancementSet enhancementSet = DatabaseAPI.Database.EnhancementSets[Index];

            items[0] = enhancementSet.DisplayName + " (" + enhancementSet.ShortName + ")";
            items[1] = Enum.GetName(enhancementSet.SetType.GetType(), enhancementSet.SetType);
            items[2] = Conversions.ToString(enhancementSet.LevelMin + 1);
            items[3] = Conversions.ToString(enhancementSet.LevelMax + 1);
            items[4] = Conversions.ToString(enhancementSet.Enhancements.Length);
            int num1 = 0;
            int num2 = enhancementSet.Bonus.Length - 1;

            for (int index = 0; index <= num2; ++index)
            {
                if (enhancementSet.Bonus[index].Index.Length > 0)
                {
                    ++num1;
                }
            }
            items[5] = Conversions.ToString(num1);
            this.lvSets.Items.Add(new ListViewItem(items, Index));
            this.lvSets.Items[this.lvSets.Items.Count - 1].Selected = true;
            this.lvSets.Items[this.lvSets.Items.Count - 1].EnsureVisible();
        }
Example #3
0
        void btnUp_Click(object sender, EventArgs e)

        {
            if (this.lvSets.SelectedIndices.Count <= 0)
            {
                return;
            }
            int selectedIndex = this.lvSets.SelectedIndices[0];

            if (selectedIndex >= 1)
            {
                EnhancementSet[] enhancementSetArray = new EnhancementSet[2]
                {
                    new EnhancementSet(DatabaseAPI.Database.EnhancementSets[selectedIndex]),
                    new EnhancementSet(DatabaseAPI.Database.EnhancementSets[selectedIndex - 1])
                };
                DatabaseAPI.Database.EnhancementSets[selectedIndex - 1] = new EnhancementSet(enhancementSetArray[0]);
                DatabaseAPI.Database.EnhancementSets[selectedIndex]     = new EnhancementSet(enhancementSetArray[1]);
                DatabaseAPI.MatchEnhancementIDs();
                ListViewItem listViewItem1 = (ListViewItem)this.lvSets.Items[selectedIndex].Clone();
                ListViewItem listViewItem2 = (ListViewItem)this.lvSets.Items[selectedIndex - 1].Clone();
                this.lvSets.Items[selectedIndex]              = listViewItem2;
                this.lvSets.Items[selectedIndex - 1]          = listViewItem1;
                this.lvSets.Items[selectedIndex - 1].Selected = true;
                this.lvSets.Items[selectedIndex - 1].EnsureVisible();
            }
        }
Example #4
0
    public bool ImportFromCSV(string iCSV)
    {
        bool flag;

        if (iCSV == null)
        {
            flag = false;
        }
        else if (string.IsNullOrEmpty(iCSV))
        {
            flag = false;
        }
        else
        {
            string[] array = CSV.ToArray(iCSV);
            this.DisplayName = array[1];
            this.ShortName   = EnhancementSet.GenerateShortName(this.DisplayName);
            this.Uid         = array[0];
            this.LevelMin    = int.Parse(array[3]) - 1;
            this.LevelMax    = int.Parse(array[4]) - 1;
            string str = array[2];
            for (int index = 0; index < DatabaseAPI.Database.SetTypeStringLong.Length; ++index)
            {
                if (str == DatabaseAPI.Database.SetTypeStringLong[index])
                {
                    this.SetType = (Enums.eSetType)index;
                }
            }
            flag = true;
        }
        return(flag);
    }
Example #5
0
        public void UpdateListItem(int Index)
        {
            string[]       strArray       = new string[6];
            EnhancementSet enhancementSet = DatabaseAPI.Database.EnhancementSets[Index];

            strArray[0] = enhancementSet.DisplayName + " (" + enhancementSet.ShortName + ")";
            strArray[1] = Enum.GetName(enhancementSet.SetType.GetType(), enhancementSet.SetType);
            strArray[2] = Conversions.ToString(enhancementSet.LevelMin + 1);
            strArray[3] = Conversions.ToString(enhancementSet.LevelMax + 1);
            strArray[4] = Conversions.ToString(enhancementSet.Enhancements.Length);
            int num1 = 0;
            int num2 = enhancementSet.Bonus.Length - 1;

            for (int index = 0; index <= num2; ++index)
            {
                if (enhancementSet.Bonus[index].Index.Length > 0)
                {
                    ++num1;
                }
            }
            strArray[5] = Conversions.ToString(num1);
            int num3 = strArray.Length - 1;

            for (int index = 0; index <= num3; ++index)
            {
                this.lvSets.Items[Index].SubItems[index].Text = strArray[index];
            }
            this.lvSets.Items[Index].ImageIndex = Index;
            this.lvSets.Refresh();
        }
Example #6
0
        void FillImageList()
        {
            ExtendedBitmap extendedBitmap = new ExtendedBitmap(this.ilSet.ImageSize.Width, this.ilSet.ImageSize.Height);

            this.ilSet.Images.Clear();
            int num = MidsContext.Character.CurrentBuild.SetBonus.Count - 1;

            for (int index = 0; index <= num; index++)
            {
                int num2 = MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo.Length - 1;
                for (int index2 = 0; index2 <= num2; index2++)
                {
                    if (MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].SetIDX > -1)
                    {
                        EnhancementSet enhancementSet = DatabaseAPI.Database.EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].SetIDX];
                        if (enhancementSet.ImageIdx > -1)
                        {
                            extendedBitmap.Graphics.Clear(Color.White);
                            Graphics graphics = extendedBitmap.Graphics;
                            I9Gfx.DrawEnhancementSet(ref graphics, enhancementSet.ImageIdx);
                            this.ilSet.Images.Add(extendedBitmap.Bitmap);
                        }
                        else
                        {
                            this.ilSet.Images.Add(new Bitmap(this.ilSet.ImageSize.Width, this.ilSet.ImageSize.Height));
                        }
                    }
                }
            }
        }
Example #7
0
        void btnAdd_Click(object sender, EventArgs e)
        {
            IEnhancement iEnh       = new Enhancement();
            frmEnhData   frmEnhData = new frmEnhData(ref iEnh, DatabaseAPI.Database.Enhancements[DatabaseAPI.Database.Enhancements.Length - 1].StaticIndex + 1);
            int          num        = (int)frmEnhData.ShowDialog();

            if (frmEnhData.DialogResult != DialogResult.OK)
            {
                return;
            }
            IDatabase database = DatabaseAPI.Database;

            IEnhancement[] enhancementArray = (IEnhancement[])Utils.CopyArray(database.Enhancements, new IEnhancement[DatabaseAPI.Database.Enhancements.Length + 1]);
            database.Enhancements = enhancementArray;
            Enhancement newEnhancement = new Enhancement(frmEnhData.myEnh)
            {
                IsNew = true
            };

            DatabaseAPI.Database.Enhancements[DatabaseAPI.Database.Enhancements.Length - 1] = newEnhancement;
            if (newEnhancement.nIDSet > 0)
            {
                EnhancementSet es = DatabaseAPI.Database.EnhancementSets[newEnhancement.nIDSet];
                Array.Resize(ref es.Enhancements, es.Enhancements.Length + 1);
                es.Enhancements[es.Enhancements.Length - 1] = newEnhancement.StaticIndex;
            }
            ImageUpdate();
            AddListItem(DatabaseAPI.Database.Enhancements.Length - 1);
        }
 public frmSetEdit(ref EnhancementSet iSet)
 {
     base.Load           += this.frmSetEdit_Load;
     this.SetBonusList    = new int[0];
     this.SetBonusListPVP = new int[0];
     this.Loading         = true;
     this.InitializeComponent();
     this.mySet = new EnhancementSet(iSet);
 }
Example #9
0
        public frmSetEditPvPNEW(ref EnhancementSet iSet)
        {
            Load        += frmSetEdit_Load;
            SetBonusList = new int[0];
            Loading      = true;
            InitializeComponent();
            Name = nameof(frmSetEditPvPNEW);
            var componentResourceManager = new ComponentResourceManager(typeof(frmSetEditPvPNEW));

            Icon           = Resources.reborn;
            btnImage.Image = Resources.enhData;
            mySet          = new EnhancementSet(iSet);
        }
Example #10
0
        public frmSetEdit(ref EnhancementSet iSet)
        {
            Load        += new EventHandler(frmSetEdit_Load);
            SetBonusList = new int[0];
            Loading      = true;
            InitializeComponent();
            Name = nameof(frmSetEdit);
            var componentResourceManager = new ComponentResourceManager(typeof(frmSetEdit));

            Icon           = (Icon)componentResourceManager.GetObject("$this.Icon");
            btnImage.Image = (Image)componentResourceManager.GetObject("btnImage.Image");
            mySet          = new EnhancementSet(iSet);
        }
Example #11
0
 public static EnhancementSetDto FromEntityToDto(EnhancementSet entity, List <Enhancement> enhancements)
 {
     return(new EnhancementSetDto
     {
         Id = entity.Id,
         SetName = entity.SetName,
         Threshold = entity.Threshold,
         Power = enhancements?.Count > 0 ? enhancements.Sum(e => e.Power) : 0,
         Endurance = enhancements?.Count > 0 ? enhancements.Sum(e => e.Endurance) : 0,
         IsInvalid = entity.IsInvalid,
         Enhancements = enhancements?.Count > 0 ? enhancements.Select(EnhancementDtoConvertor.FromEntityToDto).ToList() : null,
         CalculationTaskId = entity.CalculationTaskId,
         CalculationTask = entity.CalculationTask != null?CalculationTaskDtoConvertor.FromEntityToDto(entity.CalculationTask, null) : null
     });
 }
Example #12
0
        void btnAdd_Click(object sender, EventArgs e)

        {
            EnhancementSet iSet       = new EnhancementSet();
            frmSetEdit     frmSetEdit = new frmSetEdit(ref iSet);
            int            num        = (int)frmSetEdit.ShowDialog();

            if (frmSetEdit.DialogResult != DialogResult.OK)
            {
                return;
            }
            DatabaseAPI.Database.EnhancementSets.Add(new EnhancementSet(frmSetEdit.mySet));
            this.ImageUpdate();
            this.AddListItem(DatabaseAPI.Database.EnhancementSets.Count - 1);
        }
        private void btnAdd_Click(object sender, EventArgs e)

        {
            var iSet = new EnhancementSet();

            using var frmSetEditPvP = new frmSetEditPvPNEW(ref iSet);
            var num = (int)frmSetEditPvP.ShowDialog();

            if (frmSetEditPvP.DialogResult != DialogResult.OK)
            {
                return;
            }
            DatabaseAPI.Database.EnhancementSets.Add(new EnhancementSet(frmSetEditPvP.mySet));
            ImageUpdate();
            AddListItem(DatabaseAPI.Database.EnhancementSets.Count - 1);
        }
 public void Apply()
 {
     if (this.IsValid)
     {
         if (this.IsNew)
         {
             EnhancementSet enhancementSet = new EnhancementSet();
             enhancementSet.ImportFromCSV(this._csvString);
             DatabaseAPI.Database.EnhancementSets.Add(enhancementSet);
         }
         else if (this.Index > -1)
         {
             DatabaseAPI.Database.EnhancementSets[this.Index].ImportFromCSV(this._csvString);
         }
     }
 }
 public void Apply()
 {
     if (!IsValid)
     {
         return;
     }
     if (IsNew)
     {
         EnhancementSet enhancementSet = new EnhancementSet();
         enhancementSet.ImportFromCSV(_csvString);
         DatabaseAPI.Database.EnhancementSets.Add(enhancementSet);
     }
     else if (Index > -1)
     {
         DatabaseAPI.Database.EnhancementSets[Index].ImportFromCSV(_csvString);
     }
 }
        void FillImageList()
        {
            Size imageSize1 = ilSet.ImageSize;
            int  width1     = imageSize1.Width;

            imageSize1 = ilSet.ImageSize;
            int            height1        = imageSize1.Height;
            ExtendedBitmap extendedBitmap = new ExtendedBitmap(width1, height1);

            ilSet.Images.Clear();
            int setBonusCount = MidsContext.Character.CurrentBuild.SetBonus.Count - 1;

            for (int index1 = 0; index1 <= setBonusCount; ++index1)
            {
                int num2 = MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo.Length - 1;
                for (int index2 = 0; index2 <= num2; ++index2)
                {
                    if (MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2].SetIDX <= -1)
                    {
                        continue;
                    }
                    EnhancementSet enhancementSet =
                        DatabaseAPI.Database.EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2].SetIDX];
                    if (enhancementSet.ImageIdx > -1)
                    {
                        extendedBitmap.Graphics.Clear(Color.White);
                        Graphics graphics = extendedBitmap.Graphics;
                        I9Gfx.DrawEnhancementSet(ref graphics, enhancementSet.ImageIdx);
                        ilSet.Images.Add(extendedBitmap.Bitmap);
                    }
                    else
                    {
                        ImageList.ImageCollection images = ilSet.Images;
                        Size imageSize2 = ilSet.ImageSize;
                        int  width2     = imageSize2.Width;
                        imageSize2 = ilSet.ImageSize;
                        int    height2 = imageSize2.Height;
                        Bitmap bitmap  = new Bitmap(width2, height2);
                        images.Add(bitmap);
                    }
                }
            }
        }
Example #17
0
 public EnhSetData(string iString)
 {
     if (string.IsNullOrEmpty(iString))
     {
         return;
     }
     this._csvString = iString;
     this.Data       = new EnhancementSet();
     this.IsValid    = this.Data.ImportFromCSV(iString);
     this.IsNew      = true;
     for (int index = 0; index < DatabaseAPI.Database.EnhancementSets.Count; ++index)
     {
         if (!string.IsNullOrEmpty(DatabaseAPI.Database.EnhancementSets[index].Uid) && string.Equals(DatabaseAPI.Database.EnhancementSets[index].Uid, this.Data.Uid, StringComparison.OrdinalIgnoreCase))
         {
             this.IsNew = false;
             this.Index = index;
             break;
         }
     }
 }
Example #18
0
        void btnClone_Click(object sender, EventArgs e)

        {
            if (this.lvSets.SelectedIndices.Count <= 0)
            {
                return;
            }
            EnhancementSet iSet = new EnhancementSet(DatabaseAPI.Database.EnhancementSets[this.lvSets.SelectedIndices[0]]);

            iSet.DisplayName += " Copy";
            frmSetEdit frmSetEdit = new frmSetEdit(ref iSet);
            int        num        = (int)frmSetEdit.ShowDialog();

            if (frmSetEdit.DialogResult == DialogResult.OK)
            {
                DatabaseAPI.Database.EnhancementSets.Add(new EnhancementSet(frmSetEdit.mySet));
                this.ImageUpdate();
                this.AddListItem(DatabaseAPI.Database.EnhancementSets.Count - 1);
            }
        }
        private void btnClone_Click(object sender, EventArgs e)

        {
            if (lvSets.SelectedIndices.Count <= 0)
            {
                return;
            }
            var iSet = new EnhancementSet(DatabaseAPI.Database.EnhancementSets[lvSets.SelectedIndices[0]]);

            iSet.DisplayName       += " Copy";
            using var frmSetEditPvP = new frmSetEditPvPNEW(ref iSet);
            var num = (int)frmSetEditPvP.ShowDialog();

            if (frmSetEditPvP.DialogResult != DialogResult.OK)
            {
                return;
            }
            DatabaseAPI.Database.EnhancementSets.Add(new EnhancementSet(frmSetEditPvP.mySet));
            ImageUpdate();
            AddListItem(DatabaseAPI.Database.EnhancementSets.Count - 1);
        }
Example #20
0
        void btnEdit_Click(object sender, EventArgs e)

        {
            if (lvSets.SelectedIndices.Count <= 0)
            {
                return;
            }
            bool   flag           = false;
            string uidOld         = "";
            int    selectedIndex1 = lvSets.SelectedIndices[0];
            EnhancementSetCollection enhancementSets = DatabaseAPI.Database.EnhancementSets;
            int selectedIndex2 = this.lvSets.SelectedIndices[0];

            /*string setName = Regex.Replace(lvSets.SelectedItems[0].Text, @"( \(\w+\))", "");
             * var setNameIndex = enhancementSets.FindIndex(x => x.DisplayName == setName);*/
            EnhancementSet iSet = enhancementSets[selectedIndex2];

            enhancementSets[selectedIndex2] = iSet;
            frmSetEdit frmSetEdit = new frmSetEdit(ref iSet);
            int        num        = (int)frmSetEdit.ShowDialog();

            if (frmSetEdit.DialogResult != DialogResult.OK)
            {
                return;
            }
            if (frmSetEdit.mySet.Uid != DatabaseAPI.Database.EnhancementSets[lvSets.SelectedIndices[0]].Uid)
            {
                flag   = true;
                uidOld = DatabaseAPI.Database.EnhancementSets[lvSets.SelectedIndices[0]].Uid;
            }
            DatabaseAPI.Database.EnhancementSets[lvSets.SelectedIndices[0]] = new EnhancementSet(frmSetEdit.mySet);
            ImageUpdate();
            UpdateListItem(selectedIndex1);
            if (!flag)
            {
                return;
            }
            RenameIOSet(uidOld, frmSetEdit.mySet.Uid);
            DatabaseAPI.MatchEnhancementIDs();
        }
Example #21
0
 public EnhancementSet(EnhancementSet iIOSet)
 {
     this.DisplayName  = iIOSet.DisplayName;
     this.ShortName    = iIOSet.ShortName;
     this.Desc         = iIOSet.Desc;
     this.SetType      = iIOSet.SetType;
     this.Image        = iIOSet.Image;
     this.LevelMin     = iIOSet.LevelMin;
     this.LevelMax     = iIOSet.LevelMax;
     this.Enhancements = (int[])iIOSet.Enhancements.Clone();
     this.Bonus        = new EnhancementSet.BonusItem[iIOSet.Bonus.Length];
     for (int index = 0; index <= this.Bonus.Length - 1; ++index)
     {
         this.Bonus[index].Assign(iIOSet.Bonus[index]);
     }
     this.SpecialBonus = new EnhancementSet.BonusItem[iIOSet.SpecialBonus.Length];
     for (int index = 0; index <= this.SpecialBonus.Length - 1; ++index)
     {
         this.SpecialBonus[index].Assign(iIOSet.SpecialBonus[index]);
     }
     this.Uid = iIOSet.Uid;
 }
Example #22
0
 public EnhancementSet(EnhancementSet iIOSet)
 {
     DisplayName  = iIOSet.DisplayName;
     ShortName    = iIOSet.ShortName;
     Desc         = iIOSet.Desc;
     SetType      = iIOSet.SetType;
     Image        = iIOSet.Image;
     LevelMin     = iIOSet.LevelMin;
     LevelMax     = iIOSet.LevelMax;
     Enhancements = (int[])iIOSet.Enhancements.Clone();
     Bonus        = new BonusItem[iIOSet.Bonus.Length];
     for (int index = 0; index <= Bonus.Length - 1; ++index)
     {
         Bonus[index].Assign(iIOSet.Bonus[index]);
     }
     SpecialBonus = new BonusItem[iIOSet.SpecialBonus.Length];
     for (int index = 0; index <= SpecialBonus.Length - 1; ++index)
     {
         SpecialBonus[index].Assign(iIOSet.SpecialBonus[index]);
     }
     Uid = iIOSet.Uid;
 }
Example #23
0
        public void FillImageList()
        {
            ExtendedBitmap extendedBitmap = new ExtendedBitmap(this.ilSets.ImageSize.Width, this.ilSets.ImageSize.Height);

            this.ilSets.Images.Clear();
            int num = DatabaseAPI.Database.EnhancementSets.Count - 1;

            for (int index = 0; index <= num; index++)
            {
                EnhancementSet enhancementSet = DatabaseAPI.Database.EnhancementSets[index];
                if (enhancementSet.ImageIdx > -1)
                {
                    extendedBitmap.Graphics.Clear(Color.White);
                    Graphics graphics = extendedBitmap.Graphics;
                    I9Gfx.DrawEnhancementSet(ref graphics, DatabaseAPI.Database.EnhancementSets[index].ImageIdx);
                    this.ilSets.Images.Add(extendedBitmap.Bitmap);
                }
                else
                {
                    this.ilSets.Images.Add(new Bitmap(this.ilSets.ImageSize.Width, this.ilSets.ImageSize.Height));
                }
            }
        }
Example #24
0
 public EnhSetData(string iString)
 {
     if (string.IsNullOrEmpty(iString))
     {
         return;
     }
     _csvString = iString;
     Data       = new EnhancementSet();
     IsValid    = Data.ImportFromCSV(iString);
     IsNew      = true;
     for (var index = 0; index < DatabaseAPI.Database.EnhancementSets.Count; ++index)
     {
         if (string.IsNullOrEmpty(DatabaseAPI.Database.EnhancementSets[index].Uid) ||
             !string.Equals(DatabaseAPI.Database.EnhancementSets[index].Uid, Data.Uid,
                            StringComparison.OrdinalIgnoreCase))
         {
             continue;
         }
         IsNew = false;
         Index = index;
         break;
     }
 }
Example #25
0
        void FillEffectView()
        {
            string str9 = "";

            int[]  numArray = new int[DatabaseAPI.NidPowers("set_bonus", "").Length - 1 + 1];
            bool   flag     = false;
            int    num      = MidsContext.Character.CurrentBuild.SetBonus.Count - 1;
            string str10;

            for (int index = 0; index <= num; index++)
            {
                int num2 = MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo.Length - 1;
                for (int index2 = 0; index2 <= num2; index2++)
                {
                    if (MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].Powers.Length > 0)
                    {
                        I9SetData.sSetInfo[] setInfo  = MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo;
                        int            index3         = index2;
                        EnhancementSet enhancementSet = DatabaseAPI.Database.EnhancementSets[setInfo[index3].SetIDX];
                        str9 = str9 + RTF.Color(RTF.ElementID.Invention) + RTF.Underline(RTF.Bold(enhancementSet.DisplayName));
                        if (MidsContext.Character.CurrentBuild.Powers[MidsContext.Character.CurrentBuild.SetBonus[index].PowerIndex].NIDPowerset > -1)
                        {
                            str9 = string.Concat(new string[]
                            {
                                str9,
                                RTF.Crlf(),
                                RTF.Color(RTF.ElementID.Faded),
                                "(",
                                DatabaseAPI.Database.Powersets[MidsContext.Character.CurrentBuild.Powers[MidsContext.Character.CurrentBuild.SetBonus[index].PowerIndex].NIDPowerset].Powers[MidsContext.Character.CurrentBuild.Powers[MidsContext.Character.CurrentBuild.SetBonus[index].PowerIndex].IDXPower].DisplayName,
                                ")"
                            });
                        }
                        str9  = str9 + RTF.Crlf() + RTF.Color(RTF.ElementID.Text);
                        str10 = "";
                        int num3 = enhancementSet.Bonus.Length - 1;
                        for (int index4 = 0; index4 <= num3; index4++)
                        {
                            if (setInfo[index3].SlottedCount >= enhancementSet.Bonus[index4].Slotted & (enhancementSet.Bonus[index4].PvMode == Enums.ePvX.Any | (enhancementSet.Bonus[index4].PvMode == Enums.ePvX.PvE & MidsContext.Config.Inc.PvE) | (enhancementSet.Bonus[index4].PvMode == Enums.ePvX.PvP & !MidsContext.Config.Inc.PvE)))
                            {
                                if (str10 != "")
                                {
                                    str10 += RTF.Crlf();
                                }
                                bool   flag2 = false;
                                string str11 = "  " + enhancementSet.GetEffectString(index4, false, true);
                                int    num4  = enhancementSet.Bonus[index4].Index.Length - 1;
                                for (int index5 = 0; index5 <= num4; index5++)
                                {
                                    if (enhancementSet.Bonus[index4].Index[index5] > -1)
                                    {
                                        int[] array  = numArray;
                                        int[] array2 = enhancementSet.Bonus[index4].Index;
                                        int   num8   = index5;
                                        array[array2[num8]]++;
                                        if (numArray[enhancementSet.Bonus[index4].Index[index5]] > 5)
                                        {
                                            flag2 = true;
                                        }
                                    }
                                }
                                if (flag2)
                                {
                                    str11 = RTF.Italic(RTF.Color(RTF.ElementID.Warning) + str11 + " >Cap" + RTF.Color(RTF.ElementID.Text));
                                }
                                if (flag2)
                                {
                                    flag = true;
                                }
                                str10 += str11;
                            }
                        }
                        int num5 = MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].EnhIndexes.Length - 1;
                        for (int index4 = 0; index4 <= num5; index4++)
                        {
                            int index6 = DatabaseAPI.IsSpecialEnh(MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].EnhIndexes[index4]);
                            if (index6 > -1)
                            {
                                if (str10 != "")
                                {
                                    str10 += RTF.Crlf();
                                }
                                str10 += RTF.Color(RTF.ElementID.Enhancement);
                                bool   flag2 = false;
                                string str12 = "  " + DatabaseAPI.Database.EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].SetIDX].GetEffectString(index6, true, true);
                                int    num6  = DatabaseAPI.Database.EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].SetIDX].SpecialBonus[index6].Index.Length - 1;
                                for (int index5 = 0; index5 <= num6; index5++)
                                {
                                    if (DatabaseAPI.Database.EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].SetIDX].SpecialBonus[index6].Index[index5] > -1)
                                    {
                                        int[] array2 = numArray;
                                        int[] array  = DatabaseAPI.Database.EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].SetIDX].SpecialBonus[index6].Index;
                                        int   num8   = index5;
                                        array2[array[num8]]++;
                                        if (numArray[DatabaseAPI.Database.EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index].SetInfo[index2].SetIDX].SpecialBonus[index6].Index[index5]] > 5)
                                        {
                                            flag2 = true;
                                        }
                                    }
                                }
                                if (flag2)
                                {
                                    str12 = RTF.Italic(RTF.Color(RTF.ElementID.Warning) + str12 + " >Cap" + RTF.Color(RTF.ElementID.Text));
                                }
                                if (flag2)
                                {
                                    flag = true;
                                }
                                str10 += str12;
                            }
                        }
                        str9 = str9 + str10 + RTF.Crlf() + RTF.Crlf();
                    }
                }
            }
            if (flag)
            {
                str10 = RTF.Color(RTF.ElementID.Invention) + RTF.Underline(RTF.Bold("Information:")) + RTF.Crlf() + RTF.Color(RTF.ElementID.Text);
                str10 = string.Concat(new string[]
                {
                    str10,
                    "One or more set bonuses have exceeded the 5 bonus cap, and will not affect your stats. Scroll down this list to find bonuses marked as '",
                    RTF.Italic(RTF.Color(RTF.ElementID.Warning) + ">Cap"),
                    RTF.Color(RTF.ElementID.Text),
                    "'",
                    RTF.Crlf(),
                    RTF.Crlf()
                });
            }
            else
            {
                str10 = "";
            }
            str9 = RTF.StartRTF() + str10 + str9 + RTF.EndRTF();
            if (this.rtxtFX.Rtf != str9)
            {
                this.rtxtFX.Rtf = str9;
            }
            IEffect[] cumulativeSetBonuses = MidsContext.Character.CurrentBuild.GetCumulativeSetBonuses();
            Array.Sort <IEffect>(cumulativeSetBonuses);
            str9 = "";
            int num7 = cumulativeSetBonuses.Length - 1;

            for (int index = 0; index <= num7; index++)
            {
                if (str9 != "")
                {
                    str9 += RTF.Crlf();
                }
                string str13 = cumulativeSetBonuses[index].BuildEffectString(true, "", false, false, false);
                if (!str13.StartsWith("+"))
                {
                    str13 = "+" + str13;
                }
                if (str13.IndexOf("Endurance") > -1)
                {
                    str13 = str13.Replace("Endurance", "Max Endurance");
                }
                str9 += str13;
            }
            str9 = RTF.StartRTF() + RTF.ToRTF(str9) + RTF.EndRTF();
            if (this.rtApplied.Rtf != str9)
            {
                this.rtApplied.Rtf = str9;
            }
        }
        void FillEffectView()
        {
            string str1 = "";

            int[] numArray   = new int[DatabaseAPI.NidPowers("set_bonus").Length - 1 + 1];
            bool  hasOvercap = false;
            int   num1       = MidsContext.Character.CurrentBuild.SetBonus.Count - 1;

            for (int index1 = 0; index1 <= num1; ++index1)
            {
                int num2 = MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo.Length - 1;
                for (int index2 = 0; index2 <= num2; ++index2)
                {
                    if (MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2].Powers.Length <= 0)
                    {
                        continue;
                    }
                    I9SetData.sSetInfo[] setInfo  = MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo;
                    int            index3         = index2;
                    EnhancementSet enhancementSet = DatabaseAPI.Database.EnhancementSets[setInfo[index3].SetIDX];
                    string         str2           = str1 + RTF.Color(RTF.ElementID.Invention) + RTF.Underline(RTF.Bold(enhancementSet.DisplayName));
                    if (MidsContext.Character.CurrentBuild.Powers[MidsContext.Character.CurrentBuild.SetBonus[index1].PowerIndex].NIDPowerset >
                        -1)
                    {
                        str2 = str2 + RTF.Crlf() + RTF.Color(RTF.ElementID.Faded) + "(" + DatabaseAPI.Database
                               .Powersets[
                            MidsContext.Character.CurrentBuild
                            .Powers[MidsContext.Character.CurrentBuild.SetBonus[index1].PowerIndex].NIDPowerset]
                               .Powers[
                            MidsContext.Character.CurrentBuild
                            .Powers[MidsContext.Character.CurrentBuild.SetBonus[index1].PowerIndex].IDXPower].DisplayName + ")";
                    }
                    string str3 = str2 + RTF.Crlf() + RTF.Color(RTF.ElementID.Text);
                    string str4 = "";
                    int    num3 = enhancementSet.Bonus.Length - 1;
                    for (int index4 = 0; index4 <= num3; ++index4)
                    {
                        if (!(setInfo[index3].SlottedCount >= enhancementSet.Bonus[index4].Slotted &
                              (enhancementSet.Bonus[index4].PvMode == Enums.ePvX.Any |
                               enhancementSet.Bonus[index4].PvMode == Enums.ePvX.PvE & !MidsContext.Config.Inc.DisablePvE |
                               enhancementSet.Bonus[index4].PvMode == Enums.ePvX.PvP & MidsContext.Config.Inc.DisablePvE)))
                        {
                            continue;
                        }
                        if (str4 != "")
                        {
                            str4 += RTF.Crlf();
                        }
                        bool   localOverCap = false;
                        string str5         = "  " + enhancementSet.GetEffectString(index4, false, true);
                        int    num4         = enhancementSet.Bonus[index4].Index.Length - 1;
                        for (int index5 = 0; index5 <= num4; ++index5)
                        {
                            if (enhancementSet.Bonus[index4].Index[index5] <= -1)
                            {
                                continue;
                            }
                            ++numArray[enhancementSet.Bonus[index4].Index[index5]];
                            if (numArray[enhancementSet.Bonus[index4].Index[index5]] > 5)
                            {
                                localOverCap = true;
                            }
                        }

                        if (localOverCap)
                        {
                            str5 = RTF.Italic(RTF.Color(RTF.ElementID.Warning) + str5 + " >Cap" + RTF.Color(RTF.ElementID.Text));
                        }
                        if (localOverCap)
                        {
                            hasOvercap = true;
                        }
                        str4 += str5;
                    }

                    int num5 = MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2].EnhIndexes.Length - 1;
                    for (int index4 = 0; index4 <= num5; ++index4)
                    {
                        int index5 = DatabaseAPI.IsSpecialEnh(MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2]
                                                              .EnhIndexes[index4]);
                        if (index5 <= -1)
                        {
                            continue;
                        }
                        if (str4 != "")
                        {
                            str4 += RTF.Crlf();
                        }
                        string str5         = str4 + RTF.Color(RTF.ElementID.Enhancement);
                        bool   localOverCap = false;
                        string str6         = "  " + DatabaseAPI.Database
                                              .EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2].SetIDX]
                                              .GetEffectString(index5, true, true);
                        int num4 = DatabaseAPI.Database
                                   .EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2].SetIDX]
                                   .SpecialBonus[index5].Index.Length - 1;
                        for (int index6 = 0; index6 <= num4; ++index6)
                        {
                            if (DatabaseAPI.Database
                                .EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2].SetIDX]
                                .SpecialBonus[index5].Index[index6] <= -1)
                            {
                                continue;
                            }
                            ++numArray[
                                DatabaseAPI.Database
                                .EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2].SetIDX]
                                .SpecialBonus[index5].Index[index6]];
                            if (numArray[
                                    DatabaseAPI.Database
                                    .EnhancementSets[MidsContext.Character.CurrentBuild.SetBonus[index1].SetInfo[index2].SetIDX]
                                    .SpecialBonus[index5].Index[index6]] > 5)
                            {
                                localOverCap = true;
                            }
                        }

                        if (localOverCap)
                        {
                            str6 = RTF.Italic(RTF.Color(RTF.ElementID.Warning) + str6 + " >Cap" + RTF.Color(RTF.ElementID.Text));
                        }
                        if (localOverCap)
                        {
                            hasOvercap = true;
                        }
                        str4 = str5 + str6;
                    }

                    str1 = str3 + str4 + RTF.Crlf() + RTF.Crlf();
                }
            }

            string str7;

            if (hasOvercap)
            {
                str7 = RTF.Color(RTF.ElementID.Invention) + RTF.Underline(RTF.Bold("Information:")) + RTF.Crlf() +
                       RTF.Color(RTF.ElementID.Text) +
                       "One or more set bonuses have exceeded the 5 bonus cap, and will not affect your stats. Scroll down this list to find bonuses marked as '" +
                       RTF.Italic(RTF.Color(RTF.ElementID.Warning) + ">Cap") + RTF.Color(RTF.ElementID.Text) + "'" + RTF.Crlf() + RTF.Crlf();
            }
            else
            {
                str7 = "";
            }
            string str8 = RTF.StartRTF() + str7 + str1 + RTF.EndRTF();

            if (rtxtFX.Rtf != str8)
            {
                rtxtFX.Rtf = str8;
            }
            IEffect[] cumulativeSetBonuses = MidsContext.Character.CurrentBuild.GetCumulativeSetBonuses();
            Array.Sort(cumulativeSetBonuses);
            string iStr = "";
            int    num6 = cumulativeSetBonuses.Length - 1;

            for (int index = 0; index <= num6; ++index)
            {
                if (iStr != "")
                {
                    iStr += RTF.Crlf();
                }
                string str2 = cumulativeSetBonuses[index].BuildEffectString(true);
                if (!str2.StartsWith("+"))
                {
                    str2 = "+" + str2;
                }
                if (str2.IndexOf("Endurance", StringComparison.Ordinal) > -1)
                {
                    str2 = str2.Replace("Endurance", "Max Endurance");
                }
                iStr += str2;
            }

            string str9 = RTF.StartRTF() + RTF.ToRTF(iStr) + RTF.EndRTF();

            if (rtApplied.Rtf == str9)
            {
                return;
            }
            rtApplied.Rtf = str9;
        }