001 package net.minecraft.enchantment;
002
003 import java.util.Random;
004 import net.minecraft.item.ItemArmor;
005 import net.minecraft.item.ItemStack;
006
007 public class EnchantmentDurability extends Enchantment
008 {
009 protected EnchantmentDurability(int par1, int par2)
010 {
011 super(par1, par2, EnumEnchantmentType.digger);
012 this.setName("durability");
013 }
014
015 /**
016 * Returns the minimal value of enchantability needed on the enchantment level passed.
017 */
018 public int getMinEnchantability(int par1)
019 {
020 return 5 + (par1 - 1) * 8;
021 }
022
023 /**
024 * Returns the maximum value of enchantability nedded on the enchantment level passed.
025 */
026 public int getMaxEnchantability(int par1)
027 {
028 return super.getMinEnchantability(par1) + 50;
029 }
030
031 /**
032 * Returns the maximum level that the enchantment can have.
033 */
034 public int getMaxLevel()
035 {
036 return 3;
037 }
038
039 public boolean func_92037_a(ItemStack par1ItemStack)
040 {
041 return par1ItemStack.isItemStackDamageable() ? true : super.func_92037_a(par1ItemStack);
042 }
043
044 public static boolean func_92045_a(ItemStack par0ItemStack, int par1, Random par2Random)
045 {
046 return par0ItemStack.getItem() instanceof ItemArmor && par2Random.nextFloat() < 0.6F ? false : par2Random.nextInt(par1 + 1) > 0;
047 }
048 }