blob: 9ca1b29c874a90d90fa7b09c5ddd78d0098903a5 [file] [log] [blame] [raw]
package com.legacy.aether.items.tools;
import net.minecraft.block.Block;
import net.minecraft.item.ItemStack;
import com.legacy.aether.items.ItemsAether;
import com.legacy.aether.items.util.EnumAetherToolType;
public class ItemZaniteTool extends ItemAetherTool {
public float[] level = new float[]{2F, 4F, 6F, 8F, 12F};
public ItemZaniteTool(EnumAetherToolType toolType) {
super(ToolMaterial.IRON, toolType);
}
@Override
public boolean getIsRepairable(ItemStack toRepair, ItemStack repair) {
return repair.getItem() == ItemsAether.zanite_gemstone;
}
@Override
public float getDigSpeed(ItemStack stack, Block block, int meta) {
return this.calculateIncrease(stack, this.toolType.getStrVsBlock(stack, block));
}
private float calculateIncrease(ItemStack tool, float original) {
boolean AllowedCalculations = original != 4.0F ? false : true;
int current = tool.getItemDamage();
if (AllowedCalculations) {
if (isBetween(tool.getMaxDamage(), current, tool.getMaxDamage() - 50)) {
return level[4];
} else if (isBetween(tool.getMaxDamage() - 51, current, tool.getMaxDamage() - 110)) {
return level[3];
} else if (isBetween(tool.getMaxDamage() - 111, current, tool.getMaxDamage() - 200)) {
return level[2];
} else if (isBetween(tool.getMaxDamage() - 201, current, tool.getMaxDamage() - 239)) {
return level[1];
} else {
return level[0];
}
} else {
return 1.0F;
}
}
private boolean isBetween(int max, int origin, int min) {
return origin <= max && origin >= min ? true : false;
}
}