geforkt von Mirrors/Paper
b922ff9886
This only impacted people who used our useSnapshots new API in a plugin, which obviously was no one as the data result was completely broken. Merged the NPE check patch into mine since it has to handle it too.
35 Zeilen
1.7 KiB
Diff
35 Zeilen
1.7 KiB
Diff
From f85b94a3c719ead513133dfa1f9d26e8f167a979 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Sat, 10 Mar 2018 16:33:15 -0500
|
|
Subject: [PATCH] Prevent Frosted Ice from loading/holding chunks
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/BlockIceFrost.java b/src/main/java/net/minecraft/server/BlockIceFrost.java
|
|
index a8dbbf20a..87f40bfcf 100644
|
|
--- a/src/main/java/net/minecraft/server/BlockIceFrost.java
|
|
+++ b/src/main/java/net/minecraft/server/BlockIceFrost.java
|
|
@@ -50,7 +50,9 @@ public class BlockIceFrost extends BlockIce {
|
|
for (int k = 0; k < j; ++k) {
|
|
EnumDirection enumdirection = aenumdirection[k];
|
|
|
|
- if (world.getType(blockposition.shift(enumdirection)).getBlock() == this) {
|
|
+ IBlockData iblockdata1 = world.getTypeIfLoaded(blockposition.shift(enumdirection)); // Paper - don't load chunks
|
|
+ if (iblockdata1 == null) continue; // Paper
|
|
+ if (iblockdata1.getBlock() == this) { // Paper
|
|
++i;
|
|
if (i >= 4) {
|
|
return i;
|
|
@@ -76,7 +78,8 @@ public class BlockIceFrost extends BlockIce {
|
|
for (int k = 0; k < j; ++k) {
|
|
EnumDirection enumdirection = aenumdirection[k];
|
|
BlockPosition blockposition1 = blockposition.shift(enumdirection);
|
|
- IBlockData iblockdata1 = world.getType(blockposition1);
|
|
+ IBlockData iblockdata1 = world.getTypeIfLoaded(blockposition1); // Paper - don't load chunks
|
|
+ if (iblockdata1 == null) continue; // Paper
|
|
|
|
if (iblockdata1.getBlock() == this) {
|
|
this.a(world, blockposition1, iblockdata1, random, false);
|
|
--
|
|
2.18.0
|
|
|