Advertisement
Guest User

Untitled

a guest
Dec 12th, 2015
87
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. package com.ethcad.ultimatearmory.items;
  2.  
  3. import net.minecraft.creativetab.CreativeTabs;
  4. import net.minecraft.entity.Entity;
  5. import net.minecraft.entity.EntityLivingBase;
  6. import net.minecraft.entity.effect.EntityLightningBolt;
  7. import net.minecraft.entity.item.EntityEnderPearl;
  8. import net.minecraft.entity.monster.EntityEndermite;
  9. import net.minecraft.entity.player.EntityPlayer;
  10. import net.minecraft.entity.player.EntityPlayerMP;
  11. import net.minecraft.item.Item;
  12. import net.minecraft.item.ItemStack;
  13. import net.minecraft.util.DamageSource;
  14. import net.minecraft.util.EnumParticleTypes;
  15. import net.minecraft.util.MathHelper;
  16. import net.minecraft.util.MovingObjectPosition;
  17. import net.minecraft.util.Vec3;
  18. import net.minecraft.world.World;
  19. import net.minecraftforge.fml.common.registry.GameRegistry;
  20.  
  21. import com.ethcad.ultimatearmory.Reference;
  22.  
  23. public class TeleporterGun extends Item {
  24. MovingObjectPosition mop = null;
  25. public static final String name = "teleporterGun";
  26.  
  27. public TeleporterGun() {
  28. super();
  29. GameRegistry.registerItem(this, name);
  30. setUnlocalizedName(Reference.MODID + "_" + name);
  31. setCreativeTab(CreativeTabs.tabTransport);
  32. setMaxDamage(100);
  33. setMaxStackSize(1);
  34. }
  35.  
  36. public String getName() {
  37. return name;
  38. }
  39.  
  40. @Override
  41. public ItemStack onItemRightClick(ItemStack itemStack, World world, EntityPlayer entityPlayer) {
  42. int x, y, z;
  43. if (itemStack.getItemDamage() == 0) {
  44. if (world.isRemote) {
  45. // server ray trace doesn't return right value
  46. mop = entityPlayer.rayTrace(1000.0d, 1.0f);
  47. }
  48. if (mop != null) {
  49. Vec3 vec3 = mop.hitVec;
  50. x = MathHelper.floor_double(vec3.xCoord);
  51. y = MathHelper.floor_double(vec3.yCoord);
  52. z = MathHelper.floor_double(vec3.zCoord);
  53. itemStack.damageItem(99, entityPlayer);
  54. entityPlayer.setPositionAndUpdate(x, y, z);
  55. }
  56. }
  57. return itemStack;
  58. }
  59.  
  60. @Override
  61. public void onUpdate(ItemStack itemStack, World world, Entity entity, int parInt, boolean parBoolean) {
  62. itemStack.setItemDamage(itemStack.getItemDamage() - 1);
  63. }
  64.  
  65. @Override
  66. public boolean hasEffect(ItemStack par1ItemStack) {
  67. return true;
  68. }
  69. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement