瀏覽代碼

Check vanilla's maxDurability here as well, just to be safe.

Fixes #1504
GJ 11 年之前
父節點
當前提交
a0ef0d5708
共有 1 個文件被更改,包括 3 次插入1 次删除
  1. 3 1
      src/main/java/com/gmail/nossr50/skills/axes/AxesManager.java

+ 3 - 1
src/main/java/com/gmail/nossr50/skills/axes/AxesManager.java

@@ -1,5 +1,6 @@
 package com.gmail.nossr50.skills.axes;
 package com.gmail.nossr50.skills.axes;
 
 
+import org.bukkit.Material;
 import org.bukkit.enchantments.Enchantment;
 import org.bukkit.enchantments.Enchantment;
 import org.bukkit.entity.LivingEntity;
 import org.bukkit.entity.LivingEntity;
 import org.bukkit.entity.Player;
 import org.bukkit.entity.Player;
@@ -97,9 +98,10 @@ public class AxesManager extends SkillManager {
 
 
         for (ItemStack armor : target.getEquipment().getArmorContents()) {
         for (ItemStack armor : target.getEquipment().getArmorContents()) {
             if (ItemUtils.isArmor(armor) && Axes.impactChance > Misc.getRandom().nextInt(getActivationChance())) {
             if (ItemUtils.isArmor(armor) && Axes.impactChance > Misc.getRandom().nextInt(getActivationChance())) {
+                Material armorType = armor.getType();
                 double durabilityModifier = 1 / (armor.getEnchantmentLevel(Enchantment.DURABILITY) + 1); // Modifier to simulate the durability enchantment behavior
                 double durabilityModifier = 1 / (armor.getEnchantmentLevel(Enchantment.DURABILITY) + 1); // Modifier to simulate the durability enchantment behavior
                 double modifiedDurabilityDamage = durabilityDamage * durabilityModifier;
                 double modifiedDurabilityDamage = durabilityDamage * durabilityModifier;
-                short maxDurability = mcMMO.getRepairableManager().getRepairable(armor.getType()).getMaximumDurability();
+                short maxDurability = (short) Math.max(armorType.getMaxDurability(), mcMMO.getRepairableManager().getRepairable(armorType).getMaximumDurability());
                 double maxDurabilityDamage = maxDurability * Axes.impactMaxDurabilityModifier;
                 double maxDurabilityDamage = maxDurability * Axes.impactMaxDurabilityModifier;
 
 
                 armor.setDurability((short) (Math.min(modifiedDurabilityDamage, maxDurabilityDamage) + armor.getDurability()));
                 armor.setDurability((short) (Math.min(modifiedDurabilityDamage, maxDurabilityDamage) + armor.getDurability()));