hassansyyid

aa

Jul 1st, 2015
237
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 2.00 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 (!worldIn.isRemote)
  31.         {
  32.             if(playerIn.capabilities.isCreativeMode|| damageAmmo(playerIn.inventory, playerIn, worldIn)){
  33.                 worldIn.playSoundAtEntity(playerIn, "random.bow", 0.5F, 0.4F / (itemRand.nextFloat() * 0.4F + 0.8F));
  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 (!worldIn.isRemote)
  44.         {
  45.             if(p.hasItem(halocraft.Main.ammoAssaultRifle))
  46.             {
  47.                 for(int i = 0; i <= p.getSizeInventory(); i++)
  48.                 {
  49.                     ItemStack found = p.getStackInSlot(i);
  50.                     if(found.getItem() instanceof ItemAmmoAssaultRifle)
  51.                     {
  52.                         if(found.getItem().getDamage(found) > 0){
  53.                             found.damageItem(1, playerIn);
  54.                             return true;
  55.                         }
  56.                         else
  57.                         {
  58.                             p.consumeInventoryItem(found.getItem());
  59.                         }
  60.                     }
  61.                 }
  62.             }
  63.         }
  64.         return false;
  65.     }
  66. }
Advertisement
Add Comment
Please, Sign In to add comment