mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-06 10:44:39 +01:00
9f6ea786bc
This patch appears to be causing some issues with 1.14.3 entity AI
31 lines
No EOL
2.1 KiB
Diff
31 lines
No EOL
2.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Shane Freeder <theboyetronic@gmail.com>
|
|
Date: Tue, 18 Dec 2018 02:15:08 +0000
|
|
Subject: [PATCH] Prevent Enderman from loading chunks
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityEnderman.java b/src/main/java/net/minecraft/server/EntityEnderman.java
|
|
index 9f2c339ae3..0989c07cf5 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityEnderman.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityEnderman.java
|
|
@@ -0,0 +0,0 @@ public class EntityEnderman extends EntityMonster {
|
|
int j = MathHelper.floor(this.enderman.locY + random.nextDouble() * 3.0D);
|
|
int k = MathHelper.floor(this.enderman.locZ - 2.0D + random.nextDouble() * 4.0D);
|
|
BlockPosition blockposition = new BlockPosition(i, j, k);
|
|
- IBlockData iblockdata = world.getType(blockposition);
|
|
+ IBlockData iblockdata = world.getTypeIfLoaded(blockposition); // Paper
|
|
+ if (iblockdata == null) return; // Paper
|
|
Block block = iblockdata.getBlock();
|
|
Vec3D vec3d = new Vec3D((double) MathHelper.floor(this.enderman.locX) + 0.5D, (double) j + 0.5D, (double) MathHelper.floor(this.enderman.locZ) + 0.5D);
|
|
Vec3D vec3d1 = new Vec3D((double) i + 0.5D, (double) j + 0.5D, (double) k + 0.5D);
|
|
@@ -0,0 +0,0 @@ public class EntityEnderman extends EntityMonster {
|
|
int j = MathHelper.floor(this.a.locY + random.nextDouble() * 2.0D);
|
|
int k = MathHelper.floor(this.a.locZ - 1.0D + random.nextDouble() * 2.0D);
|
|
BlockPosition blockposition = new BlockPosition(i, j, k);
|
|
- IBlockData iblockdata = world.getType(blockposition);
|
|
+ IBlockData iblockdata = world.getTypeIfLoaded(blockposition); // Paper
|
|
+ if (iblockdata == null) return; // Paper
|
|
BlockPosition blockposition1 = blockposition.down();
|
|
IBlockData iblockdata1 = world.getType(blockposition1);
|
|
IBlockData iblockdata2 = Block.getValidBlockForPosition(getEnderman().getCarried(), getEnderman().world, blockposition); // Paper - Fix MC-124320
|
|
--
|