mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-21 18:37:42 +01:00
47 lines
2.5 KiB
Diff
47 lines
2.5 KiB
Diff
From 5ed79fd249b8fb416a89aae7162fee15109e15d1 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
|
|
Date: Fri, 24 Apr 2020 09:37:29 -0500
|
|
Subject: [PATCH] Villagers farming can bypass mob-griefing gamerule
|
|
|
|
---
|
|
src/main/java/net/minecraft/server/BehaviorFarm.java | 2 +-
|
|
src/main/java/net/pl3x/purpur/PurpurWorldConfig.java | 2 ++
|
|
2 files changed, 3 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/BehaviorFarm.java b/src/main/java/net/minecraft/server/BehaviorFarm.java
|
|
index e05e97727..cf3126a65 100644
|
|
--- a/src/main/java/net/minecraft/server/BehaviorFarm.java
|
|
+++ b/src/main/java/net/minecraft/server/BehaviorFarm.java
|
|
@@ -20,7 +20,7 @@ public class BehaviorFarm extends Behavior<EntityVillager> {
|
|
}
|
|
|
|
protected boolean a(WorldServer worldserver, EntityVillager entityvillager) {
|
|
- if (!worldserver.getGameRules().getBoolean(GameRules.MOB_GRIEFING)) {
|
|
+ if (!worldserver.getGameRules().getBoolean(GameRules.MOB_GRIEFING) && !worldserver.purpurConfig.villagerFarmingBypassMobGriefing) {
|
|
return false;
|
|
} else if (entityvillager.getVillagerData().getProfession() != VillagerProfession.FARMER) {
|
|
return false;
|
|
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
index e57299f1e..efdc176e6 100644
|
|
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
@@ -892,6 +892,7 @@ public class PurpurWorldConfig {
|
|
public boolean villagerCanBeLeashed = false;
|
|
public int villagerSpawnIronGolemRadius = 0;
|
|
public int villagerSpawnIronGolemLimit = 0;
|
|
+ public boolean villagerFarmingBypassMobGriefing = false;
|
|
private void villagerSettings() {
|
|
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
|
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
|
@@ -902,6 +903,7 @@ public class PurpurWorldConfig {
|
|
villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed);
|
|
villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius);
|
|
villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit);
|
|
+ villagerFarmingBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerFarmingBypassMobGriefing);
|
|
}
|
|
|
|
public boolean villagerTraderRidable = false;
|
|
--
|
|
2.24.0
|
|
|