95 lines
2.8 KiB
Java
95 lines
2.8 KiB
Java
|
|
package net.paladrill.paladrillmod.item;
|
|
|
|
import net.paladrill.paladrillmod.procedure.ProcedureStrenghStickRightClickedInAir;
|
|
import net.paladrill.paladrillmod.creativetab.TabPalaDrillMod;
|
|
import net.paladrill.paladrillmod.ElementsPaladrillmodMod;
|
|
|
|
import net.minecraftforge.fml.relauncher.SideOnly;
|
|
import net.minecraftforge.fml.relauncher.Side;
|
|
import net.minecraftforge.fml.common.registry.GameRegistry;
|
|
import net.minecraftforge.client.model.ModelLoader;
|
|
import net.minecraftforge.client.event.ModelRegistryEvent;
|
|
|
|
import net.minecraft.world.World;
|
|
import net.minecraft.util.EnumHand;
|
|
import net.minecraft.util.ActionResult;
|
|
import net.minecraft.item.ItemStack;
|
|
import net.minecraft.item.Item;
|
|
import net.minecraft.entity.player.EntityPlayer;
|
|
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
|
|
import net.minecraft.block.state.IBlockState;
|
|
|
|
import java.util.Map;
|
|
import java.util.HashMap;
|
|
|
|
@ElementsPaladrillmodMod.ModElement.Tag
|
|
public class ItemStrenghtStick extends ElementsPaladrillmodMod.ModElement {
|
|
@GameRegistry.ObjectHolder("paladrillmod:strenghtstick")
|
|
public static final Item block = null;
|
|
public ItemStrenghtStick(ElementsPaladrillmodMod instance) {
|
|
super(instance, 72);
|
|
}
|
|
|
|
@Override
|
|
public void initElements() {
|
|
elements.items.add(() -> new ItemCustom());
|
|
}
|
|
|
|
@SideOnly(Side.CLIENT)
|
|
@Override
|
|
public void registerModels(ModelRegistryEvent event) {
|
|
ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("paladrillmod:strenghtstick", "inventory"));
|
|
}
|
|
public static class ItemCustom extends Item {
|
|
public ItemCustom() {
|
|
setMaxDamage(8);
|
|
maxStackSize = 1;
|
|
setUnlocalizedName("strenghtstick");
|
|
setRegistryName("strenghtstick");
|
|
setCreativeTab(TabPalaDrillMod.tab);
|
|
}
|
|
|
|
@Override
|
|
public int getItemEnchantability() {
|
|
return 0;
|
|
}
|
|
|
|
@Override
|
|
public int getMaxItemUseDuration(ItemStack itemstack) {
|
|
return 8;
|
|
}
|
|
|
|
@Override
|
|
public float getDestroySpeed(ItemStack par1ItemStack, IBlockState par2Block) {
|
|
return 1F;
|
|
}
|
|
|
|
@Override
|
|
@SideOnly(Side.CLIENT)
|
|
public boolean hasEffect(ItemStack itemstack) {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public ActionResult<ItemStack> onItemRightClick(World world, EntityPlayer entity, EnumHand hand) {
|
|
ActionResult<ItemStack> ar = super.onItemRightClick(world, entity, hand);
|
|
ItemStack itemstack = ar.getResult();
|
|
int x = (int) entity.posX;
|
|
int y = (int) entity.posY;
|
|
int z = (int) entity.posZ;
|
|
{
|
|
Map<String, Object> $_dependencies = new HashMap<>();
|
|
$_dependencies.put("entity", entity);
|
|
$_dependencies.put("itemstack", itemstack);
|
|
$_dependencies.put("x", x);
|
|
$_dependencies.put("y", y);
|
|
$_dependencies.put("z", z);
|
|
$_dependencies.put("world", world);
|
|
ProcedureStrenghStickRightClickedInAir.executeProcedure($_dependencies);
|
|
}
|
|
return ar;
|
|
}
|
|
}
|
|
}
|