diff options
author | T00thpick1 <t00thpick1dirko@gmail.com> | 2013-07-28 18:52:07 -0400 |
---|---|---|
committer | Wesley Wolfe <weswolf@aol.com> | 2013-08-03 14:48:40 -0500 |
commit | f7ca953ff1db983a99678f00584628d6e786a1dd (patch) | |
tree | 8a74bfb1ff0b866656b382cbef2cf3fda14a12ce /src/main/java/net/minecraft/server/ItemLeash.java | |
parent | 8a7c582d546eac7554f96a884091266bad236830 (diff) | |
download | craftbukkit-f7ca953ff1db983a99678f00584628d6e786a1dd.tar craftbukkit-f7ca953ff1db983a99678f00584628d6e786a1dd.tar.gz craftbukkit-f7ca953ff1db983a99678f00584628d6e786a1dd.tar.lz craftbukkit-f7ca953ff1db983a99678f00584628d6e786a1dd.tar.xz craftbukkit-f7ca953ff1db983a99678f00584628d6e786a1dd.zip |
Add EntityLeash and ItemLeash for diff visibility
Diffstat (limited to 'src/main/java/net/minecraft/server/ItemLeash.java')
-rw-r--r-- | src/main/java/net/minecraft/server/ItemLeash.java | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/src/main/java/net/minecraft/server/ItemLeash.java b/src/main/java/net/minecraft/server/ItemLeash.java new file mode 100644 index 00000000..7be27431 --- /dev/null +++ b/src/main/java/net/minecraft/server/ItemLeash.java @@ -0,0 +1,53 @@ +package net.minecraft.server; + +import java.util.Iterator; +import java.util.List; + +public class ItemLeash extends Item { + + public ItemLeash(int i) { + super(i); + this.a(CreativeModeTab.i); + } + + public boolean interactWith(ItemStack itemstack, EntityHuman entityhuman, World world, int i, int j, int k, int l, float f, float f1, float f2) { + int i1 = world.getTypeId(i, j, k); + + if (Block.byId[i1] != null && Block.byId[i1].d() == 11) { + if (world.isStatic) { + return true; + } else { + a(entityhuman, world, i, j, k); + return true; + } + } else { + return false; + } + } + + public static boolean a(EntityHuman entityhuman, World world, int i, int j, int k) { + EntityLeash entityleash = EntityLeash.b(world, i, j, k); + boolean flag = false; + double d0 = 7.0D; + List list = world.a(EntityInsentient.class, AxisAlignedBB.a().a((double) i - d0, (double) j - d0, (double) k - d0, (double) i + d0, (double) j + d0, (double) k + d0)); + + if (list != null) { + Iterator iterator = list.iterator(); + + while (iterator.hasNext()) { + EntityInsentient entityinsentient = (EntityInsentient) iterator.next(); + + if (entityinsentient.bH() && entityinsentient.bI() == entityhuman) { + if (entityleash == null) { + entityleash = EntityLeash.a(world, i, j, k); + } + + entityinsentient.b(entityleash, true); + flag = true; + } + } + } + + return flag; + } +} |