Ejemplo n.º 1
0
        public void CalcBestDPS(Weapon myWeapon, int[] iSelectedPerk, PerkQuality[] perkLvLSelected)
        {
            double dDPSHigh = 0;

            int[]       iPerkBest         = new int[5];
            List <Perk> listPerkCommon    = new Perk(PerkQuality.Common).PicList();
            List <Perk> listPerkRare      = new Perk(PerkQuality.Rare).PicList();
            List <Perk> listPerkLegendary = new Perk(PerkQuality.Legendary).PicList();
            int         iTempSelectedPerk = 0;
            PerkQuality perkTempQuality   = PerkQuality.Common;

            for (int iCurrentReroll = 0; iCurrentReroll < 5; iCurrentReroll++)
            {
                iTempSelectedPerk = iSelectedPerk[iCurrentReroll];
                perkTempQuality   = perkLvLSelected[iCurrentReroll];
                for (int iListPerks = 0; iListPerks < listPerkLegendary.Count; iListPerks++)
                {
                    iSelectedPerk[iCurrentReroll]   = iListPerks;
                    perkLvLSelected[iCurrentReroll] = PerkQuality.Legendary;

                    Perk[] perkSelected = new Perk[5];
                    for (int iPerksCalc = 0; iPerksCalc < 5; iPerksCalc++)
                    {
                        switch (perkLvLSelected[iPerksCalc])
                        {
                        case PerkQuality.Common:
                            perkSelected[iPerksCalc] = listPerkCommon[iSelectedPerk[iPerksCalc]];
                            break;

                        case PerkQuality.Rare:
                            perkSelected[iPerksCalc] = listPerkRare[iSelectedPerk[iPerksCalc]];
                            break;

                        case PerkQuality.Legendary:
                            perkSelected[iPerksCalc] = listPerkLegendary[iSelectedPerk[iPerksCalc]];
                            break;
                        }
                    }
                    Perk   perkSum = perkSelected[0].SummuaryPerk(perkSelected[0], perkSelected[1], perkSelected[2], perkSelected[3], perkSelected[4]);
                    double dDPS    = DPS.TrueDPS(myWeapon, perkSum);
                    if (dDPS > dDPSHigh)
                    {
                        dDPSHigh = dDPS;
                        iSelectedPerk.CopyTo(iPerkBest, 0);
                    }
                }
                iSelectedPerk[iCurrentReroll]   = iTempSelectedPerk;
                perkLvLSelected[iCurrentReroll] = perkTempQuality;
            }
        }
Ejemplo n.º 2
0
        private void ShowPerkName(string sNameLvlPicker, PerkQuality perkQuality)
        {
            List <Perk> listPerk = new List <Perk>();

            switch (perkQuality)
            {
            case PerkQuality.Common:
                listPerk = new Perk(PerkQuality.Common).PicList();
                break;

            case PerkQuality.Rare:
                listPerk = new Perk(PerkQuality.Rare).PicList();
                break;

            case PerkQuality.Legendary:
                listPerk = new Perk(PerkQuality.Legendary).PicList();
                break;
            }


            switch (sNameLvlPicker)
            {
            case "cobLvL1":
                cobPerk1.ItemsSource       = listPerk;
                cobPerk1.DisplayMemberPath = "Name";
                break;

            case "cobLvL2":
                cobPerk2.ItemsSource       = listPerk;
                cobPerk2.DisplayMemberPath = "Name";
                break;

            case "cobLvL3":
                cobPerk3.ItemsSource       = listPerk;
                cobPerk3.DisplayMemberPath = "Name";
                break;

            case "cobLvL4":
                cobPerk4.ItemsSource       = listPerk;
                cobPerk4.DisplayMemberPath = "Name";
                break;

            case "cobLvL5":
                cobPerk5.ItemsSource       = listPerk;
                cobPerk5.DisplayMemberPath = "Name";
                break;
            }
        }
Ejemplo n.º 3
0
        public BisPerks(Weapon bisWeapon)
        {
            //string[] Variationen = GetPermutation(3, new char[] { '1', '2', '3' });
            //string[] Variationen = GetPermutation(3, new char[] { '1', '2', '3', '4', '5' });
            Perk        myPerk   = new Perk(PerkQuality.Legendary);
            List <Perk> listPerk = myPerk.PicList();

            int[] iCombos = new int[listPerk.Count];
            for (int i = 0; i < listPerk.Count; i++)
            {
                iCombos[i] = i;
            }
            //string[] sVariationen = GetPermutation(4, iCombos);

            //CalcDPS(bisWeapon, sVariationen);
        }
Ejemplo n.º 4
0
        private void cobPerkX_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            Perk perk1 = cobPerk1.SelectedItem as Perk;
            Perk perk2 = cobPerk2.SelectedItem as Perk;
            Perk perk3 = cobPerk3.SelectedItem as Perk;
            Perk perk4 = cobPerk4.SelectedItem as Perk;
            Perk perk5 = cobPerk5.SelectedItem as Perk;

            if (perk1 == null)
            {
                perk1 = new Perk(PerkQuality.OnlyOneValue);
            }

            DPS.PerkPacket1    = perk1.SummuaryPerk(perk1, perk2, perk3, perk4, perk5);
            dagDPS.ItemsSource = new DPSValueList();
        }
Ejemplo n.º 5
0
        private void CalcDPS(Weapon myWeapon, string[] sVariatonen)
        {
            Perk        myPerk     = new Perk(PerkQuality.Legendary);
            Perk        myPerkLvL1 = new Perk(PerkQuality.Legendary);
            List <Perk> listPerk   = myPerk.PicList();

            char[] charSplit = new char[] { ',' };
            double dDPSHigh  = 0;

            int[] iComboHigh = new int[5];

            foreach (string sCombo in sVariatonen)
            {
                string[] sComboArray = sCombo.Split(charSplit, StringSplitOptions.RemoveEmptyEntries);
                int[]    iCombo      = new int[5];

                for (int i = 0; i < sComboArray.Length; i++)
                {
                    iCombo[i] = System.Convert.ToInt32(sComboArray[i]);
                }

                Perk perk1 = listPerk[iCombo[0]];
                Perk perk2 = listPerk[iCombo[1]];
                Perk perk3 = listPerk[iCombo[2]];
                Perk perk4 = listPerk[iCombo[3]];
                //Perk perk5 = listPerk[iCombo[4]];
                Perk perk5 = myPerkLvL1.PicList()[13];
                //Perk perk6 = new Perk(HeroMain.UrbanAssault);
                //Perk perk7 = new Perk(HeroSup.AssaultCritDamage);
                //Perk perk6 = new Perk(HeroMain.Nothing);
                //Perk perk7 = new Perk(HeroMain.Nothing);

                Perk   PerkSum = perk1.SummuaryPerk(perk1, perk2, perk3, perk4, perk5);
                double dDPS    = DPS.TrueDPS(myWeapon, PerkSum);

                if (dDPS > dDPSHigh)
                {
                    dDPSHigh   = dDPS;
                    iComboHigh = iCombo;
                }
            }
        }
Ejemplo n.º 6
0
        private void SelectWeaponAndPerks()
        {
            LoadWeaponWebsite weaponWebsite = (LoadWeaponWebsite)dgvInventory.SelectedItem;

            List <Perk> listPerkCommon    = new Perk(PerkQuality.Common).PicList();
            List <Perk> listPerkRare      = new Perk(PerkQuality.Rare).PicList();
            List <Perk> listPerkLegendary = new Perk(PerkQuality.Legendary).PicList();

            List <PerkLvlPicker> listcobLvLX = new List <PerkLvlPicker>();

            listcobLvLX.Add(cobLvL1);
            listcobLvLX.Add(cobLvL2);
            listcobLvLX.Add(cobLvL3);
            listcobLvLX.Add(cobLvL4);
            listcobLvLX.Add(cobLvL5);
            List <ComboBox> listcobPerkX = new List <ComboBox>();

            listcobPerkX.Add(cobPerk1);
            listcobPerkX.Add(cobPerk2);
            listcobPerkX.Add(cobPerk3);
            listcobPerkX.Add(cobPerk4);
            listcobPerkX.Add(cobPerk5);

            //Selected Weapon
            string   sWeaponName = weaponWebsite.sWeapon;
            DataView dvWeapon    = (DataView)cobWeapon.ItemsSource;

            dvWeapon.Sort           = "Name";
            cobWeapon.SelectedIndex = dvWeapon.Find(sWeaponName);

            string[] asPerks = new string[5];
            asPerks[0] = weaponWebsite.sPerk1;
            asPerks[1] = weaponWebsite.sPerk2;
            asPerks[2] = weaponWebsite.sPerk3;
            asPerks[3] = weaponWebsite.sPerk4;
            asPerks[4] = weaponWebsite.sPerk5;

            for (int iPerkWeapon = 0; iPerkWeapon < 5; iPerkWeapon++)
            {
                string sPerk = asPerks[iPerkWeapon];
                if (!sPerk.Equals(""))
                {
                    for (int i = 0; i < listPerkCommon.Count; i++)
                    {
                        if (listPerkCommon[i].Name.Equals(sPerk))
                        {
                            listcobLvLX[iPerkWeapon].SelectedColor  = Colors.LightGray;
                            listcobPerkX[iPerkWeapon].SelectedIndex = i;
                        }
                    }
                    for (int i = 0; i < listPerkRare.Count; i++)
                    {
                        if (listPerkRare[i].Name.Equals(sPerk))
                        {
                            listcobLvLX[iPerkWeapon].SelectedColor  = Colors.DodgerBlue;
                            listcobPerkX[iPerkWeapon].SelectedIndex = i;
                        }
                    }
                    for (int i = 0; i < listPerkLegendary.Count; i++)
                    {
                        if (listPerkLegendary[i].Name.Equals(sPerk))
                        {
                            listcobLvLX[iPerkWeapon].SelectedColor  = Colors.DarkOrange;
                            listcobPerkX[iPerkWeapon].SelectedIndex = i;
                        }
                    }
                }
                else
                {
                    listcobLvLX[iPerkWeapon].SelectedColor  = Colors.LightGray;
                    listcobPerkX[iPerkWeapon].SelectedIndex = 0;
                }
            }
        }
Ejemplo n.º 7
0
        public Perk SummuaryPerk(Perk Perk1, Perk Perk2, Perk Perk3, Perk Perk4, Perk Perk5)
        {
            Perk Perk6 = new Perk(PerkQuality.OnlyOneValue);
            Perk Perk7 = new Perk(PerkQuality.OnlyOneValue);

            if (Perk2 == null)
            {
                Perk2 = new Perk(PerkQuality.OnlyOneValue);
            }
            if (Perk3 == null)
            {
                Perk3 = new Perk(PerkQuality.OnlyOneValue);
            }
            if (Perk4 == null)
            {
                Perk4 = new Perk(PerkQuality.OnlyOneValue);
            }
            if (Perk5 == null)
            {
                Perk5 = new Perk(PerkQuality.OnlyOneValue);
            }
            if (Perk6 == null)
            {
                Perk6 = new Perk(PerkQuality.OnlyOneValue);
            }
            if (Perk7 == null)
            {
                Perk7 = new Perk(PerkQuality.OnlyOneValue);
            }

            Perk perkSum = new Perk(PerkQuality.OnlyOneValue);

            perkSum.CHC            = Perk1.CHC + Perk2.CHC + Perk3.CHC + Perk4.CHC + Perk5.CHC + Perk6.CHC + Perk7.CHC;
            perkSum.CHD            = Perk1.CHD + Perk2.CHD + Perk3.CHD + Perk4.CHD + Perk5.CHD + Perk6.CHD + Perk7.CHD;
            perkSum.DMG            = Perk1.DMG + Perk2.DMG + Perk3.DMG + Perk4.DMG + Perk5.DMG + Perk6.DMG + Perk7.DMG;
            perkSum.Durability     = Perk1.Durability + Perk2.Durability + Perk3.Durability + Perk4.Durability + Perk5.Durability + Perk6.Durability + Perk7.Durability;
            perkSum.FireRate       = Perk1.FireRate + Perk2.FireRate + Perk3.FireRate + Perk4.FireRate + Perk5.FireRate + Perk6.FireRate + Perk7.FireRate;
            perkSum.Headshot       = Perk1.Headshot + Perk2.Headshot + Perk3.Headshot + Perk4.Headshot + Perk5.Headshot + Perk6.Headshot + Perk7.Headshot;
            perkSum.MagSize        = Perk1.MagSize + Perk2.MagSize + Perk3.MagSize + Perk4.MagSize + Perk5.MagSize + Perk6.MagSize + Perk7.MagSize;
            perkSum.Recoil         = Perk1.Recoil + Perk2.Recoil + Perk3.Recoil + Perk4.Recoil + Perk5.Recoil + Perk6.Recoil + Perk7.Recoil;
            perkSum.Reload         = Perk1.Reload + Perk2.Reload + Perk3.Reload + Perk4.Reload + Perk5.Reload + Perk6.Reload + Perk7.Reload;
            perkSum.DMGRequirement = Perk1.DMGRequirement + Perk2.DMGRequirement + Perk3.DMGRequirement + Perk4.DMGRequirement + Perk5.DMGRequirement + Perk6.DMGRequirement + Perk7.DMGRequirement;
            perkSum.DMGElement     = Perk1.DMGElement + Perk2.DMGElement + Perk3.DMGElement + Perk4.DMGElement + Perk5.DMGElement + Perk6.DMGElement + Perk7.DMGElement;

            //Set DamageType
            perkSum.DMGType = Perk1.DMGType;
            if (Perk2.DMGType != null)
            {
                perkSum.DMGType = Perk2.DMGType;
            }
            else if (Perk3.DMGType != null)
            {
                perkSum.DMGType = Perk3.DMGType;
            }
            else if (Perk4.DMGType != null)
            {
                perkSum.DMGType = Perk4.DMGType;
            }
            else if (Perk5.DMGType != null)
            {
                perkSum.DMGType = Perk5.DMGType;
            }

            return(perkSum);
        }