geforkt von Mirrors/Paper
fb25dc17c6
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: da08d022 SPIGOT-4700: Add PlayerFishEvent.State.REEL_IN 0cef14e4 Remove draft API from selectEntities CraftBukkit Changes:a46fdbc6
Remove outdated build delay.3697519b
SPIGOT-4708: Fix ExactChoice recipes neglecting material9ead7009
SPIGOT-4677: Add minecraft.admin.command_feedback permissionc3749a23
Remove the Damage tag from items when it is 0.f74c7b95
SPIGOT-4706: Can't interact with active item494eef45
Mention requirement of JIRA ticket for bug fixes51d62dec
SPIGOT-4702: Exception when middle clicking certain slotsbe557e69
SPIGOT-4700: Add PlayerFishEvent.State.REEL_IN
36 Zeilen
2.1 KiB
Diff
36 Zeilen
2.1 KiB
Diff
From 25496ec74347f65858d1b02bf856dc89c3e44a65 Mon Sep 17 00:00:00 2001
|
|
From: Aikar <aikar@aikar.co>
|
|
Date: Wed, 12 Sep 2018 21:12:57 -0400
|
|
Subject: [PATCH] Prevent mob spawning from loading/generating chunks
|
|
|
|
also prevents if out of world border bounds
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java
|
|
index d125fae03b..297c53d15c 100644
|
|
--- a/src/main/java/net/minecraft/server/SpawnerCreature.java
|
|
+++ b/src/main/java/net/minecraft/server/SpawnerCreature.java
|
|
@@ -129,9 +129,9 @@ public final class SpawnerCreature {
|
|
int i2 = blockposition1.getX();
|
|
int j2 = blockposition1.getY();
|
|
int k2 = blockposition1.getZ();
|
|
- IBlockData iblockdata = worldserver.getType(blockposition1);
|
|
+ IBlockData iblockdata = worldserver.getTypeIfLoadedAndInBounds(blockposition1); // Paper - don't load chunks for mob spawn
|
|
|
|
- if (!iblockdata.isOccluding()) {
|
|
+ if (iblockdata != null && !iblockdata.isOccluding()) { // Paper - don't load chunks for mob spawn
|
|
int l2 = 0;
|
|
int i3 = 0;
|
|
|
|
@@ -158,7 +158,7 @@ public final class SpawnerCreature {
|
|
float f1 = (float) l3 + 0.5F;
|
|
EntityHuman entityhuman1 = worldserver.a((double) f, (double) f1, -1.0D);
|
|
|
|
- if (entityhuman1 != null) {
|
|
+ if (entityhuman1 != null && worldserver.isLoadedAndInBounds(blockposition_mutableblockposition)) { // Paper - don't load chunks for mob spawn
|
|
double d0 = entityhuman1.d((double) f, (double) k3, (double) f1);
|
|
|
|
if (d0 > 576.0D && blockposition.distanceSquared((double) f, (double) k3, (double) f1) >= 576.0D) {
|
|
--
|
|
2.21.0
|
|
|