Advertisement
hassansyyid

Untitled

Jul 1st, 2015
232
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.90 KB | None | 0 0
  1. package halocraft.items;
  2.  
  3. import halocraft.Main;
  4. import halocraft.entities.EntityBullet;
  5.  
  6. import java.util.Random;
  7.  
  8. import net.minecraft.block.Block;
  9. import net.minecraft.block.material.Material;
  10. import net.minecraft.creativetab.CreativeTabs;
  11. import net.minecraft.entity.player.EntityPlayer;
  12. import net.minecraft.entity.player.InventoryPlayer;
  13. import net.minecraft.item.Item;
  14. import net.minecraft.item.ItemStack;
  15. import net.minecraft.util.BlockPos;
  16. import net.minecraft.world.World;
  17.  
  18. public class ItemAssaultRifle extends Item{
  19.     //Following is so you can access it in pre-init
  20.     public static final ItemAssaultRifle instance = new ItemAssaultRifle();
  21.     public static final String name = "itemAssaultRifle";
  22.    
  23.     public ItemAssaultRifle(){
  24.         setCreativeTab(CreativeTabs.tabCombat);
  25.         setUnlocalizedName("halocraft:" + name.toLowerCase());
  26.         setMaxStackSize(1);
  27.         setMaxDamage(1000);
  28.     }
  29.     public ItemStack onItemRightClick(ItemStack itemStackIn, World worldIn, EntityPlayer playerIn){
  30.         if(playerIn.capabilities.isCreativeMode|| damageAmmo(playerIn.inventory, playerIn, worldIn)){
  31.              worldIn.playSoundAtEntity(playerIn, "random.bow", 0.5F, 0.4F / (itemRand.nextFloat() * 0.4F + 0.8F));
  32.             if (!worldIn.isRemote)
  33.              {
  34.                  worldIn.spawnEntityInWorld(new EntityBullet(worldIn, playerIn));
  35.                  itemStackIn.damageItem(1, playerIn);
  36.              }
  37.              return itemStackIn;
  38.        }
  39.        return itemStackIn;
  40.     }
  41.     public boolean damageAmmo(InventoryPlayer p, EntityPlayer playerIn, World worldIn)
  42.     {
  43.         if(p.hasItem(halocraft.Main.ammoAssaultRifle))
  44.         {
  45.             for(int i = 0; i <= p.getSizeInventory(); i++)
  46.             {
  47.                 ItemStack found = p.getStackInSlot(i);
  48.                 if(found.getItem() instanceof ItemAmmoAssaultRifle)
  49.                 {
  50.                     if(!worldIn.isRemote)
  51.                     {
  52.                         found.damageItem(1, playerIn);
  53.                     }
  54.                     break;
  55.                 }
  56.             }
  57.             return true;
  58.         }
  59.         return false;
  60.     }
  61. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement