package net.geforcemods.securitycraft.items;
import net.geforcemods.securitycraft.entity.EntityTaserBullet;
import net.geforcemods.securitycraft.main.mod_SecurityCraft;
import net.geforcemods.securitycraft.misc.SCSounds;
import net.geforcemods.securitycraft.network.packets.PacketCPlaySoundAtPos;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ActionResult;
import net.minecraft.util.EnumActionResult;
import net.minecraft.util.EnumHand;
import net.minecraft.world.World;
public class ItemTaser extends Item {
public ItemTaser(){
super();
this.setMaxDamage(151);
}
@Override
public boolean isFull3D(){
return true;
}
@Override
public ActionResult<ItemStack> onItemRightClick(ItemStack itemStackIn, World worldIn, EntityPlayer playerIn, EnumHand hand){
if(!worldIn.isRemote){
if(!itemStackIn.isItemDamaged()){
worldIn.spawnEntityInWorld(new EntityTaserBullet(worldIn, playerIn));
mod_SecurityCraft.network.sendToAll(new PacketCPlaySoundAtPos(playerIn.posX, playerIn.posY, playerIn.posZ, SCSounds.TASERFIRED.path, 1.0F));
if(!playerIn.capabilities.isCreativeMode){
itemStackIn.damageItem(150, playerIn);
}
}
}
return ActionResult.newResult(EnumActionResult.PASS, itemStackIn);
}
@Override
public void onUpdate(ItemStack par1ItemStack, World par2World, Entity par3Entity, int par4, boolean par5){
if(!par2World.isRemote){
if(par1ItemStack.getItemDamage() >= 1){
par1ItemStack.setItemDamage(par1ItemStack.getItemDamage() - 1);
}
}
}
}