summaryrefslogtreecommitdiffstats
path: root/nms-patches/WorldBorder.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nms-patches/WorldBorder.patch')
-rw-r--r--nms-patches/WorldBorder.patch25
1 files changed, 25 insertions, 0 deletions
diff --git a/nms-patches/WorldBorder.patch b/nms-patches/WorldBorder.patch
new file mode 100644
index 00000000..37416ef7
--- /dev/null
+++ b/nms-patches/WorldBorder.patch
@@ -0,0 +1,25 @@
+--- ../work/decompile-bb26c12b/net/minecraft/server/WorldBorder.java 2014-11-27 08:59:46.925420860 +1100
++++ src/main/java/net/minecraft/server/WorldBorder.java 2014-11-27 08:42:10.168850880 +1100
+@@ -32,9 +32,21 @@
+ return (double) (blockposition.getX() + 1) > this.b() && (double) blockposition.getX() < this.d() && (double) (blockposition.getZ() + 1) > this.c() && (double) blockposition.getZ() < this.e();
+ }
+
++ // CraftBukkit start - split method
+ public boolean isInBounds(ChunkCoordIntPair chunkcoordintpair) {
+- return (double) chunkcoordintpair.e() > this.b() && (double) chunkcoordintpair.c() < this.d() && (double) chunkcoordintpair.f() > this.c() && (double) chunkcoordintpair.d() < this.e();
++ return isInBounds(chunkcoordintpair.x, chunkcoordintpair.z);
+ }
++
++ // Inlined the getters from ChunkCoordIntPair
++ public boolean isInBounds(long chunkcoords) {
++ return isInBounds(org.bukkit.craftbukkit.util.LongHash.msw(chunkcoords), org.bukkit.craftbukkit.util.LongHash.lsw(chunkcoords));
++ }
++
++ // Inlined the getters from ChunkCoordIntPair
++ public boolean isInBounds(int x, int z) {
++ return (double) ((x << 4) + 15) > this.b() && (double) (x << 4) < this.d() && (double) ((z << 4) + 15) > this.c() && (double) (x << 4) < this.e();
++ }
++ // CraftBukkit end
+
+ public boolean a(AxisAlignedBB axisalignedbb) {
+ return axisalignedbb.d > this.b() && axisalignedbb.a < this.d() && axisalignedbb.f > this.c() && axisalignedbb.c < this.e();