PaperMC/Spigot-Server-Patches/0116-Chunk-registration-fixes.patch

26 lines
1.1 KiB
Diff
Raw Normal View History

2019-12-12 04:06:23 +01:00
From 8c7505611a70a6af57cfd8be15fd6c5a83d314d2 Mon Sep 17 00:00:00 2001
2019-04-27 08:26:04 +02:00
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/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
2019-12-12 04:06:23 +01:00
index 8bac56350..f84e727d9 100644
2019-04-27 08:26:04 +02:00
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
2019-12-12 04:06:23 +01:00
@@ -673,7 +673,7 @@ public class WorldServer extends World {
2019-04-27 08:26:04 +02:00
public void chunkCheck(Entity entity) {
this.getMethodProfiler().enter("chunkCheck");
2019-12-12 00:43:22 +01:00
int i = MathHelper.floor(entity.locX() / 16.0D);
- int j = MathHelper.floor(entity.locY() / 16.0D);
+ int j = Math.min(15, Math.max(0, MathHelper.floor(entity.locY() / 16.0D))); // Paper - stay consistent with chunk add/remove behavior;
int k = MathHelper.floor(entity.locZ() / 16.0D);
2019-04-27 08:26:04 +02:00
if (!entity.inChunk || entity.chunkX != i || entity.chunkY != j || entity.chunkZ != k) {
--
2019-12-12 04:06:23 +01:00
2.24.1
2019-04-27 08:26:04 +02:00