blob: c183ec1cb65ea1f28b2d16840baeec50b39d1836 [file] [log] [blame] [raw]
package com.legacy.aether.items.util;
import net.minecraft.block.Block;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.stats.StatList;
import com.legacy.aether.items.tools.ItemSkyrootTool;
public class DoubleDropHelper {
public static void dropBlock(EntityPlayer player, int x, int y, int z, Block block, int meta) {
player.addStat(StatList.mineBlockStatArray[Block.getIdFromBlock(block)], 1);
player.addExhaustion(0.025F);
int size = meta == 0 ? 2 : 1;
ItemStack stack = player.inventory.getCurrentItem();
boolean flag = true;
if (stack == null || !(stack.getItem() instanceof ItemSkyrootTool)) {
flag = false;
}
if (block.canSilkHarvest(player.worldObj, player, x, y, z, meta) && EnchantmentHelper.getEnchantmentLevel(Enchantment.silkTouch.effectId, stack) > 0) {
block.harvestBlock(player.worldObj, player, x, y, z, meta);
return;
}
if (!flag) {
block.dropBlockAsItem(player.worldObj, x, y, z, meta, EnchantmentHelper.getEnchantmentLevel(Enchantment.fortune.effectId, stack));
return;
}
ItemSkyrootTool skyrootTool = (ItemSkyrootTool) stack.getItem();
if (skyrootTool.getDigSpeed(stack, block, meta) == skyrootTool.getEffectiveSpeed()) {
for (int i = 0; i < size; ++i) {
block.dropBlockAsItem(player.worldObj, x, y, z, meta, EnchantmentHelper.getEnchantmentLevel(Enchantment.fortune.effectId, stack));
}
} else {
block.dropBlockAsItem(player.worldObj, x, y, z, meta, EnchantmentHelper.getEnchantmentLevel(Enchantment.fortune.effectId, stack));
}
}
}