diff --git a/core/src/main/java/me/filoghost/holographicdisplays/core/Utils.java b/core/src/main/java/me/filoghost/holographicdisplays/core/Utils.java index 9be5f85d..d0b36ebf 100644 --- a/core/src/main/java/me/filoghost/holographicdisplays/core/Utils.java +++ b/core/src/main/java/me/filoghost/holographicdisplays/core/Utils.java @@ -8,6 +8,10 @@ package me.filoghost.holographicdisplays.core; import me.filoghost.fcommons.Strings; public class Utils { + + public static double distanceSquared(double locX1, double locX2, double locZ1, double locZ2) { + return square(locX1 - locX2) + square(locZ1 - locZ2); + } public static double square(double num) { return num * num; diff --git a/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSArmorStand.java b/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSArmorStand.java index 42cae0e6..a829f988 100644 --- a/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSArmorStand.java +++ b/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSArmorStand.java @@ -215,12 +215,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSItem.java b/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSItem.java index 676525a6..016eed04 100644 --- a/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSItem.java +++ b/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSItem.java @@ -53,12 +53,12 @@ public class EntityNMSItem extends EntityItem implements NMSItem { // Send a packet near to "remind" players that the item is riding the armor stand (Spigot bug or client bug) PacketPlayOutMount mountPacket = new PacketPlayOutMount(vehicle); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 1024 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 32 * 32 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(mountPacket); } } diff --git a/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSSlime.java b/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSSlime.java index c9077875..c99bf286 100644 --- a/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSSlime.java +++ b/nms/v1_10_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_10_R1/EntityNMSSlime.java @@ -12,6 +12,7 @@ import net.minecraft.server.v1_10_R1.AxisAlignedBB; import net.minecraft.server.v1_10_R1.DamageSource; import net.minecraft.server.v1_10_R1.Entity; import net.minecraft.server.v1_10_R1.EntityDamageSource; +import net.minecraft.server.v1_10_R1.EntityHuman; import net.minecraft.server.v1_10_R1.EntityPlayer; import net.minecraft.server.v1_10_R1.EntitySlime; import net.minecraft.server.v1_10_R1.NBTTagCompound; @@ -55,12 +56,12 @@ public class EntityNMSSlime extends EntitySlime implements NMSSlime { // Send a packet near to "remind" players that the slime is riding the armor stand (Spigot bug or client bug) PacketPlayOutMount mountPacket = new PacketPlayOutMount(vehicle); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 1024 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 32 * 32 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(mountPacket); } } diff --git a/nms/v1_11_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_11_R1/EntityNMSArmorStand.java b/nms/v1_11_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_11_R1/EntityNMSArmorStand.java index ba392866..8bfe038f 100644 --- a/nms/v1_11_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_11_R1/EntityNMSArmorStand.java +++ b/nms/v1_11_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_11_R1/EntityNMSArmorStand.java @@ -215,12 +215,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_12_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_12_R1/EntityNMSArmorStand.java b/nms/v1_12_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_12_R1/EntityNMSArmorStand.java index 300054d9..c7d00156 100644 --- a/nms/v1_12_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_12_R1/EntityNMSArmorStand.java +++ b/nms/v1_12_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_12_R1/EntityNMSArmorStand.java @@ -215,12 +215,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_13_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_13_R1/EntityNMSArmorStand.java b/nms/v1_13_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_13_R1/EntityNMSArmorStand.java index c8d23b79..835cdb7e 100644 --- a/nms/v1_13_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_13_R1/EntityNMSArmorStand.java +++ b/nms/v1_13_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_13_R1/EntityNMSArmorStand.java @@ -217,12 +217,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_13_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_13_R2/EntityNMSArmorStand.java b/nms/v1_13_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_13_R2/EntityNMSArmorStand.java index 1ebefc39..a788056c 100644 --- a/nms/v1_13_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_13_R2/EntityNMSArmorStand.java +++ b/nms/v1_13_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_13_R2/EntityNMSArmorStand.java @@ -217,12 +217,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_14_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_14_R1/EntityNMSArmorStand.java b/nms/v1_14_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_14_R1/EntityNMSArmorStand.java index bb6476da..64be79aa 100644 --- a/nms/v1_14_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_14_R1/EntityNMSArmorStand.java +++ b/nms/v1_14_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_14_R1/EntityNMSArmorStand.java @@ -219,12 +219,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.getPlayers()) { + for (EntityHuman humanEntity : super.world.getPlayers()) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_15_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_15_R1/EntityNMSArmorStand.java b/nms/v1_15_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_15_R1/EntityNMSArmorStand.java index c0a29eab..be735eab 100644 --- a/nms/v1_15_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_15_R1/EntityNMSArmorStand.java +++ b/nms/v1_15_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_15_R1/EntityNMSArmorStand.java @@ -219,12 +219,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.getPlayers()) { + for (EntityHuman humanEntity : super.world.getPlayers()) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX() - super.locX()) + Utils.square(nmsPlayer.locZ() - super.locZ()); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX(), super.locX(), nmsPlayer.locZ(), super.locZ()); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_16_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R1/EntityNMSArmorStand.java b/nms/v1_16_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R1/EntityNMSArmorStand.java index 1a6bdfa9..79145b8b 100644 --- a/nms/v1_16_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R1/EntityNMSArmorStand.java +++ b/nms/v1_16_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R1/EntityNMSArmorStand.java @@ -219,12 +219,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.getPlayers()) { + for (EntityHuman humanEntity : super.world.getPlayers()) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX() - super.locX()) + Utils.square(nmsPlayer.locZ() - super.locZ()); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX(), super.locX(), nmsPlayer.locZ(), super.locZ()); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_16_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R2/EntityNMSArmorStand.java b/nms/v1_16_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R2/EntityNMSArmorStand.java index 259d489d..6a408668 100644 --- a/nms/v1_16_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R2/EntityNMSArmorStand.java +++ b/nms/v1_16_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R2/EntityNMSArmorStand.java @@ -219,12 +219,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.getPlayers()) { + for (EntityHuman humanEntity : super.world.getPlayers()) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX() - super.locX()) + Utils.square(nmsPlayer.locZ() - super.locZ()); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX(), super.locX(), nmsPlayer.locZ(), super.locZ()); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_16_r3/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R3/EntityNMSArmorStand.java b/nms/v1_16_r3/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R3/EntityNMSArmorStand.java index 231de2e4..6a2a329c 100644 --- a/nms/v1_16_r3/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R3/EntityNMSArmorStand.java +++ b/nms/v1_16_r3/src/main/java/me/filoghost/holographicdisplays/nms/v1_16_R3/EntityNMSArmorStand.java @@ -219,12 +219,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.getPlayers()) { + for (EntityHuman humanEntity : super.world.getPlayers()) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX() - super.locX()) + Utils.square(nmsPlayer.locZ() - super.locZ()); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX(), super.locX(), nmsPlayer.locZ(), super.locZ()); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_8_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_8_R2/EntityNMSArmorStand.java b/nms/v1_8_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_8_R2/EntityNMSArmorStand.java index 668ffbe5..1ea10d09 100644 --- a/nms/v1_8_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_8_R2/EntityNMSArmorStand.java +++ b/nms/v1_8_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_8_R2/EntityNMSArmorStand.java @@ -204,12 +204,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_8_r3/src/main/java/me/filoghost/holographicdisplays/nms/v1_8_R3/EntityNMSArmorStand.java b/nms/v1_8_r3/src/main/java/me/filoghost/holographicdisplays/nms/v1_8_R3/EntityNMSArmorStand.java index 508c2cee..56e34fe9 100644 --- a/nms/v1_8_r3/src/main/java/me/filoghost/holographicdisplays/nms/v1_8_R3/EntityNMSArmorStand.java +++ b/nms/v1_8_r3/src/main/java/me/filoghost/holographicdisplays/nms/v1_8_R3/EntityNMSArmorStand.java @@ -204,12 +204,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSArmorStand.java b/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSArmorStand.java index 2ce0aadc..9c65cd2f 100644 --- a/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSArmorStand.java +++ b/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSArmorStand.java @@ -216,12 +216,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSItem.java b/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSItem.java index 80823149..bb60d74e 100644 --- a/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSItem.java +++ b/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSItem.java @@ -53,12 +53,12 @@ public class EntityNMSItem extends EntityItem implements NMSItem { // Send a packet near to "remind" players that the item is riding the armor stand (Spigot bug or client bug) PacketPlayOutMount mountPacket = new PacketPlayOutMount(vehicle); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 1024 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 32 * 32 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(mountPacket); } } diff --git a/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSSlime.java b/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSSlime.java index 8ea9dd7d..5a2b3665 100644 --- a/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSSlime.java +++ b/nms/v1_9_r1/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R1/EntityNMSSlime.java @@ -12,6 +12,7 @@ import net.minecraft.server.v1_9_R1.AxisAlignedBB; import net.minecraft.server.v1_9_R1.DamageSource; import net.minecraft.server.v1_9_R1.Entity; import net.minecraft.server.v1_9_R1.EntityDamageSource; +import net.minecraft.server.v1_9_R1.EntityHuman; import net.minecraft.server.v1_9_R1.EntityPlayer; import net.minecraft.server.v1_9_R1.EntitySlime; import net.minecraft.server.v1_9_R1.NBTTagCompound; @@ -55,12 +56,12 @@ public class EntityNMSSlime extends EntitySlime implements NMSSlime { // Send a packet near to "remind" players that the slime is riding the armor stand (Spigot bug or client bug) PacketPlayOutMount mountPacket = new PacketPlayOutMount(vehicle); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 1024 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 32 * 32 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(mountPacket); } } diff --git a/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSArmorStand.java b/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSArmorStand.java index 634986ba..f80ef612 100644 --- a/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSArmorStand.java +++ b/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSArmorStand.java @@ -216,12 +216,12 @@ public class EntityNMSArmorStand extends EntityArmorStand implements NMSArmorSta private void broadcastLocationPacketNMS() { PacketPlayOutEntityTeleport teleportPacket = new PacketPlayOutEntityTeleport(this); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 8192 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 64 * 64 * 2 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(teleportPacket); } } diff --git a/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSItem.java b/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSItem.java index 32e93df8..2fa867ac 100644 --- a/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSItem.java +++ b/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSItem.java @@ -53,12 +53,12 @@ public class EntityNMSItem extends EntityItem implements NMSItem { // Send a packet near to "remind" players that the item is riding the armor stand (Spigot bug or client bug) PacketPlayOutMount mountPacket = new PacketPlayOutMount(vehicle); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 1024 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 32 * 32 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(mountPacket); } } diff --git a/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSSlime.java b/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSSlime.java index 959b340d..15c7b1e4 100644 --- a/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSSlime.java +++ b/nms/v1_9_r2/src/main/java/me/filoghost/holographicdisplays/nms/v1_9_R2/EntityNMSSlime.java @@ -12,6 +12,7 @@ import net.minecraft.server.v1_9_R2.AxisAlignedBB; import net.minecraft.server.v1_9_R2.DamageSource; import net.minecraft.server.v1_9_R2.Entity; import net.minecraft.server.v1_9_R2.EntityDamageSource; +import net.minecraft.server.v1_9_R2.EntityHuman; import net.minecraft.server.v1_9_R2.EntityPlayer; import net.minecraft.server.v1_9_R2.EntitySlime; import net.minecraft.server.v1_9_R2.NBTTagCompound; @@ -55,12 +56,12 @@ public class EntityNMSSlime extends EntitySlime implements NMSSlime { // Send a packet near to "remind" players that the slime is riding the armor stand (Spigot bug or client bug) PacketPlayOutMount mountPacket = new PacketPlayOutMount(vehicle); - for (Object humanEntity : super.world.players) { + for (EntityHuman humanEntity : super.world.players) { if (humanEntity instanceof EntityPlayer) { EntityPlayer nmsPlayer = (EntityPlayer) humanEntity; - double distanceSquared = Utils.square(nmsPlayer.locX - super.locX) + Utils.square(nmsPlayer.locZ - super.locZ); - if (distanceSquared < 1024 && nmsPlayer.playerConnection != null) { + double distanceSquared = Utils.distanceSquared(nmsPlayer.locX, super.locX, nmsPlayer.locZ, super.locZ); + if (distanceSquared < 32 * 32 && nmsPlayer.playerConnection != null) { nmsPlayer.playerConnection.sendPacket(mountPacket); } }