public void TestViolentEnchantedGemFilter() { // Take rare HP%, DEF%, SPD EnchantedGem rareHPEnchantedGem = new EnchantedGem(RUNESET.VIOLENT, "HP%", RARITY.RARE); EnchantedGem rareDEFEnchantedGem = new EnchantedGem(RUNESET.VIOLENT, "DEF%", RARITY.RARE); EnchantedGem rareSPDEnchantedGem = new EnchantedGem(RUNESET.VIOLENT, "SPD", RARITY.RARE); Assert.IsTrue(riftFilter.ShouldGet(rareHPEnchantedGem)); Assert.IsTrue(riftFilter.ShouldGet(rareDEFEnchantedGem)); Assert.IsTrue(riftFilter.ShouldGet(rareSPDEnchantedGem)); // Take hero and legend for all EnchantedGem heroCRateEnchantedGem = new EnchantedGem(RUNESET.VIOLENT, "CRate", RARITY.HERO); EnchantedGem lendaryCDmgEnchantedGem = new EnchantedGem(RUNESET.VIOLENT, "CDmg", RARITY.LEGENDARY); EnchantedGem heroAccEnchantedGem = new EnchantedGem(RUNESET.VIOLENT, "ACC", RARITY.HERO); Assert.IsTrue(riftFilter.ShouldGet(heroCRateEnchantedGem)); Assert.IsTrue(riftFilter.ShouldGet(lendaryCDmgEnchantedGem)); Assert.IsTrue(riftFilter.ShouldGet(heroAccEnchantedGem)); // Ignore trash stuffs EnchantedGem rareRESEnchantedGem = new EnchantedGem(RUNESET.VIOLENT, "RES", RARITY.RARE); EnchantedGem rareHPFlatEnchantedGem = new EnchantedGem(RUNESET.VIOLENT, "HP flat", RARITY.RARE); Assert.IsFalse(riftFilter.ShouldGet(rareRESEnchantedGem)); Assert.IsFalse(riftFilter.ShouldGet(rareHPFlatEnchantedGem)); }
public static Reward GetReward(RunResult runResult) { Reward reward = null; REWARDTYPE type = GetRewardType(runResult.Drop); switch (type) { case REWARDTYPE.RUNE: reward = new Rune.RuneBuilder().Grade(runResult.Grade).Set(runResult.Set).Slot(runResult.Slot). Rarity(runResult.Rarity).MainStat(runResult.MainStat).PrefixStat(runResult.PrefixStat). SubStat1(runResult.SubStat1).SubStat2(runResult.SubStat2).SubStat3(runResult.SubStat3). SubStat4(runResult.SubStat4).Build(); break; case REWARDTYPE.GRINDSTONE: reward = new GrindStone(runResult.Set, runResult.MainStat, runResult.SubStat1, runResult.SubStat2); break; case REWARDTYPE.ENCHANTEDGEM: reward = new EnchantedGem(runResult.Set, runResult.MainStat, runResult.SubStat1, runResult.SubStat2); break; default: //throw new NotImplementedException(); reward = new Reward(runResult.Drop, type); break; } return(reward); }
private void BtnAddGemStoneFilter_Click(object sender, RoutedEventArgs e) { REWARDTYPE type = (REWARDTYPE)cbType.SelectedItem; RUNESET set = (RUNESET)cbSet.SelectedItem; string mainStat = (string)cbMainStat.SelectedItem; RARITY rarity = (RARITY)cbRarity.SelectedItem; List <GemStone> list = (List <GemStone>)lvGemStoneList.ItemsSource; if (type == REWARDTYPE.GRINDSTONE) { GrindStone grindStone = new GrindStone(set, mainStat, rarity); list.Add(grindStone); } else { EnchantedGem enchantedGem = new EnchantedGem(set, mainStat, rarity); list.Add(enchantedGem); } lvGemStoneList.ItemsSource = null; lvGemStoneList.ItemsSource = list; }
private bool ShouldGetGem(EnchantedGem gem) { // TODO return(true); }