aboutsummaryrefslogtreecommitdiffhomepage
path: root/Spigot-Server-Patches/0158-Chunk-registration-fixes.patch
blob: 21c5628bcfb3fefc7b2677c02395208d7de4e2c7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
From 08b118ed5d51e80df7a701c4e11e5ed101207af7 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 7900fca57..ec0a28cff 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1763,7 +1763,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.aa || entity.ab != k || entity.ac != l || entity.ad != i1) {
-- 
2.12.2.windows.2