add a chunk registration fix

World checks and the Chunk Add logic are inconsistent on how Y > 256, < 0, is treated

Keep them consistent
This commit is contained in:
Aikar 2016-09-21 22:56:19 -04:00
parent 1de58ca308
commit 6a4c510df4

View file

@ -0,0 +1,25 @@
From 13e68d27421f3691be5abae087a12fe87612a032 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Wed, 21 Sep 2016 22:54:28 -0400
Subject: [PATCH] Chunk registration fixes
World checks and the Chunk Add logic are inconsistent on how Y > 256, < 0, is treated
Keep them consistent
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
index 383eef2..b026e2b 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1761,7 +1761,7 @@ public abstract class World implements IBlockAccess {
}
int k = MathHelper.floor(entity.locX / 16.0D);
- int l = MathHelper.floor(entity.locY / 16.0D);
+ int l = Math.min(15, Math.max(0, MathHelper.floor(entity.locY / 16.0D))); // Paper - stay consistent with chunk add/remove behavior
int i1 = MathHelper.floor(entity.locZ / 16.0D);
if (!entity.ab || entity.ac != k || entity.ad != l || entity.ae != i1) {
--
2.9.3