Advertisement
Creepinson

Syringe code 3

Feb 15th, 2017
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.88 KB | None | 0 0
  1. package me.creepinson.item;
  2.  
  3. import java.util.List;
  4.  
  5. import javax.swing.Icon;
  6. import me.creepinson.handlers.EnumHandler.SyringeTypes;
  7. import me.creepinson.handlers.EnumHandler;
  8. import me.creepinson.handlers.ItemHandler;
  9. import net.minecraft.client.Minecraft;
  10. import net.minecraft.creativetab.CreativeTabs;
  11. import net.minecraft.entity.EntityLiving;
  12. import net.minecraft.entity.EntityLivingBase;
  13. import net.minecraft.entity.effect.EntityLightningBolt;
  14. import net.minecraft.entity.monster.EntityZombie;
  15. import net.minecraft.entity.player.EntityPlayer;
  16. import net.minecraft.item.Item;
  17. import net.minecraft.item.ItemStack;
  18. import net.minecraft.util.ActionResult;
  19. import net.minecraft.util.EnumActionResult;
  20. import net.minecraft.util.EnumHand;
  21. import net.minecraft.util.math.RayTraceResult;
  22. import net.minecraft.util.math.Vec3d;
  23. import net.minecraft.world.World;
  24. import net.minecraftforge.common.ForgeHooks;
  25. import net.minecraftforge.event.entity.player.PlayerInteractEvent.EntityInteract;
  26. import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
  27. import net.minecraftforge.fml.relauncher.Side;
  28. import net.minecraftforge.fml.relauncher.SideOnly;
  29.  
  30. public class Syringe extends ModItems{
  31.  
  32. public Syringe(String name, CreativeTabs tab) {
  33. super(name, tab);
  34. this.setHasSubtypes(true)
  35.  
  36. }
  37.  
  38.  
  39. @Override
  40. public void getSubItems(Item item, CreativeTabs tab, List<ItemStack> items) {
  41. for(int i = 0; i < SyringeTypes.values().length; i++)
  42. items.add(new ItemStack(item, 1, i));
  43.  
  44.  
  45. super.getSubItems(item, tab, items);
  46. }
  47.  
  48. @Override
  49. public String getUnlocalizedName(ItemStack stack) {
  50. for(int i = 0; i < SyringeTypes.values().length; i++)
  51. {
  52. if(stack.getItemDamage() == i)
  53. return this.getUnlocalizedName() + "." + EnumHandler.SyringeTypes.values()[i].getName();
  54. }
  55. else{
  56. continue;
  57. }
  58.  
  59. return this.getUnlocalizedName() + "." + EnumHandler.SyringeTypes.EMPTY;
  60. }
  61. public boolean itemInteractionForEntity(ItemStack item, EntityPlayer user, EntityLivingBase target, EnumHand hand)
  62. {
  63.  
  64. if (target instanceof EntityZombie)
  65. {
  66. user.inventory.deleteStack(user.getHeldItem(hand));
  67. user.inventory.addItemStackToInventory(new ItemStack(ItemHandler.Syringe_Full_Zombie, 1));
  68.  
  69. return true;
  70. }
  71. else
  72. {
  73. return super.itemInteractionForEntity(item, user, target, hand);
  74. }
  75. }
  76.  
  77.  
  78. @Override
  79. public ActionResult<ItemStack> onItemRightClick(ItemStack item, World world, EntityPlayer user, EnumHand hand)
  80.  
  81. {
  82.  
  83. RayTraceResult raytrace = ForgeHooks.rayTraceEyes(user, 5);
  84.  
  85.  
  86.  
  87. user.inventory.deleteStack(item);
  88. user.inventory.addItemStackToInventory(new ItemStack(ItemHandler.Syringe_Full_Player, 1));
  89.  
  90. return new ActionResult<ItemStack>(EnumActionResult.SUCCESS, item);
  91. }
  92.  
  93. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement