Exemple #1
0
 public BasicArmorComparator(List <ArmorType> armorTypeBlacklist = null, List <WeaponType> weaponTypeBlacklist = null) : base(armorTypeBlacklist, weaponTypeBlacklist)
 {
     GearscoreFactory = new GearscoreFactory(new Dictionary <string, double>()
     {
         { "ITEM_MOD_STAMINA_SHORT", 2.0 },
         { "RESISTANCE0_NAME", 2.5 },
     });
 }
Exemple #2
0
 public BasicAgilityComparator(List <ArmorType> armorTypeBlacklist = null, List <WeaponType> weaponTypeBlacklist = null) : base(armorTypeBlacklist, weaponTypeBlacklist)
 {
     GearscoreFactory = new GearscoreFactory(new Dictionary <string, double>()
     {
         { "ITEM_MOD_AGILITY_SHORT", 3.0 },
         { "ITEM_MOD_ATTACK_POWER_SHORT", 2.0 },
         { "ITEM_MOD_CRIT_RATING_SHORT", 2.2 },
         { "RESISTANCE0_NAME", 2.0 },
     });
 }
Exemple #3
0
 public BasicAgilityComparator()
 {
     GearscoreFactory = new GearscoreFactory(new Dictionary <string, double>()
     {
         { "ITEM_MOD_AGILITY_SHORT", 8 },
         { "ITEM_MOD_ATTACK_POWER_SHORT", 5 },
         { "ITEM_MOD_CRIT_RATING_SHORT", 3 },
         { "RESISTANCE0_NAME", 2 },
         { "ITEM_MOD_DAMAGE_PER_SECOND_SHORT", 1 },
     });
 }
Exemple #4
0
 public BasicStrengthComparator(List <ArmorType> armorTypeBlacklist = null, List <WeaponType> weaponTypeBlacklist = null) : base(armorTypeBlacklist, weaponTypeBlacklist)
 {
     GearscoreFactory = new GearscoreFactory(new Dictionary <string, double>()
     {
         { "ITEM_MOD_STRENGTH_SHORT", 3.0 },
         { "ITEM_MOD_ATTACK_POWER_SHORT", 3.0 },
         { "RESISTANCE0_NAME", 2.0 },
         { "ITEM_MOD_CRIT_RATING_SHORT", 2.0 },
         { "ITEM_MOD_DAMAGE_PER_SECOND_SHORT", 2.0 },
     });
 }
 public BasicSpiritComparator()
 {
     GearscoreFactory = new GearscoreFactory(new Dictionary <string, double>()
     {
         { "ITEM_MOD_INTELLECT_SHORT", 8 },
         { "ITEM_MOD_SPIRIT_SHORT ", 5 },
         { "ITEM_MOD_SPELL_POWER_SHORT ", 3 },
         { "ITEM_MOD_POWER_REGEN0_SHORT ", 2 },
         { "RESISTANCE0_NAME", 1 },
     });
 }
Exemple #6
0
 public BasicSpiritComparator(List <ArmorType> armorTypeBlacklist = null, List <WeaponType> weaponTypeBlacklist = null) : base(armorTypeBlacklist, weaponTypeBlacklist)
 {
     GearscoreFactory = new GearscoreFactory(new Dictionary <string, double>()
     {
         { "ITEM_MOD_INTELLECT_SHORT", 8 },
         { "ITEM_MOD_SPIRIT_SHORT ", 5 },
         { "ITEM_MOD_SPELL_POWER_SHORT ", 3 },
         { "ITEM_MOD_POWER_REGEN0_SHORT ", 2 },
         { "RESISTANCE0_NAME", 1 },
     });
 }
 public BasicIntellectComparator(List <ArmorType> armorTypeBlacklist = null, List <WeaponType> weaponTypeBlacklist = null) : base(armorTypeBlacklist, weaponTypeBlacklist)
 {
     GearscoreFactory = new GearscoreFactory(new Dictionary <string, double>()
     {
         { "ITEM_MOD_INTELLECT_SHORT", 2.5 },
         { "ITEM_MOD_SPELL_POWER_SHORT", 2.5 },
         { "RESISTANCE0_NAME", 2.0 },
         { "ITEM_MOD_POWER_REGEN0_SHORT", 2.0 },
         { "ITEM_MOD_HASTE_RATING_SHORT", 2.0 },
     });
 }
        public bool IsBetter(IWowItem current, IWowItem item)
        {
            if (!CharacterManager.IsAbleToUseItem(item))
            {
                return(false);
            }

            double scoreCurrent = GearscoreFactory.Calculate(current);
            double scoreNew     = GearscoreFactory.Calculate(item);

            return(scoreCurrent < scoreNew);
        }
Exemple #9
0
        public bool IsBetter(IWowInventoryItem current, IWowInventoryItem item)
        {
            if ((ArmorTypeBlacklist != null && item.GetType() == typeof(WowArmor) && ArmorTypeBlacklist.Contains(((WowArmor)item).ArmorType)) ||
                (WeaponTypeBlacklist != null && item.GetType() == typeof(WowWeapon) && WeaponTypeBlacklist.Contains(((WowWeapon)item).WeaponType)))
            {
                return(false);
            }

            double scoreCurrent = GearscoreFactory.Calculate(current);
            double scoreNew     = GearscoreFactory.Calculate(item);

            return(scoreCurrent < scoreNew);
        }
Exemple #10
0
 public ShamanElementalComparator(List <WowArmorType> armorTypeBlacklist = null, List <WowWeaponType> weaponTypeBlacklist = null) : base(armorTypeBlacklist, weaponTypeBlacklist)
 {
     GearscoreFactory = new GearscoreFactory(new Dictionary <string, double>
     {
         { WowStatType.HIT, 3.0 },         // Hard-cap 17%
         { WowStatType.HASTE, 3.0 },       // Soft-cap 1000 - 1200
         { WowStatType.CRIT, 2.5 },        // Soft-cap 48.3%
         { WowStatType.SPELL_POWER, 2.5 }, // uncapped
         { WowStatType.INTELLECT, 2.0 },   // uncapped
         { WowStatType.MP5, 2.0 },         // uncapped
         { WowStatType.STAMINA, 1.5 },     // uncapped
         { WowStatType.SPIRIT, 1.5 }       // uncapped
     });
 }
 public SimpleItemComparator(CharacterManager characterManager, Dictionary <string, double> statPriorities)
 {
     // This introduces a cyclic dependency. Are we fine with that?
     CharacterManager = characterManager;
     GearscoreFactory = new GearscoreFactory(statPriorities);
 }
 public BasicComparator(List <ArmorType> armorTypeBlacklist, List <WeaponType> weaponTypeBlacklist, Dictionary <string, double> statPriorities)
 {
     ArmorTypeBlacklist  = armorTypeBlacklist;
     WeaponTypeBlacklist = weaponTypeBlacklist;
     GearscoreFactory    = new GearscoreFactory(statPriorities);
 }