30 lines
1.4 KiB
Diff
30 lines
1.4 KiB
Diff
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||
|
From: kickash32 <kickash32@gmail.com>
|
||
|
Date: Sat, 9 May 2020 02:01:48 -0400
|
||
|
Subject: [PATCH] Ensure EntityRaider respects game and entity rules for
|
||
|
picking up items
|
||
|
|
||
|
|
||
|
diff --git a/src/main/java/net/minecraft/server/EntityRaider.java b/src/main/java/net/minecraft/server/EntityRaider.java
|
||
|
index c0b7b5f072b0b3777b2042b0b80f3bb22e617b11..ee1fcb11afbc3efa42ce0170b72da3fd4460b95b 100644
|
||
|
--- a/src/main/java/net/minecraft/server/EntityRaider.java
|
||
|
+++ b/src/main/java/net/minecraft/server/EntityRaider.java
|
||
|
@@ -486,7 +486,7 @@ public abstract class EntityRaider extends EntityMonsterPatrolling {
|
||
|
|
||
|
public class b<T extends EntityRaider> extends PathfinderGoal {
|
||
|
|
||
|
- private final T b;
|
||
|
+ private final T b; private T getRaider() { return b; } // Paper - obfhelper
|
||
|
|
||
|
public b(T entityraider) { // CraftBukkit - decompile error
|
||
|
this.b = entityraider;
|
||
|
@@ -495,6 +495,8 @@ public abstract class EntityRaider extends EntityMonsterPatrolling {
|
||
|
|
||
|
@Override
|
||
|
public boolean a() {
|
||
|
+ if (!getRaider().world.getGameRules().getBoolean(GameRules.MOB_GRIEFING) || !getRaider().canPickupLoot()) return false; // Paper - respect game and entity rules for picking up items
|
||
|
+
|
||
|
Raid raid = this.b.eE();
|
||
|
|
||
|
if (this.b.eF() && !this.b.eE().a() && this.b.es() && !ItemStack.matches(this.b.getEquipment(EnumItemSlot.HEAD), Raid.s())) {
|