mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Upstream has released updates that appear to apply and compile correctly Paper Changes: 0514fc4e2 Add missing effects 8f5d9effd Add getMainThreadExecutor to BukkitScheduler 313b5020b Allow adding items to BlockDropItemEvent (#5093) 9a556d9da [CI-SKIP] [Auto] Rebuild Patches 72b2768ad Inline shift fields in EnumDirection (#5082) ffff53fa7 added option to disable pathfinding updates on block changes (#5123) b67081fd7 add DragonEggFormEvent (fixes #5110) (#5112) 3eefafbaf Fix javadoc build 0081ed1c4 Add javadoc step to GH Actions 01082503e Add dropLeash variable to EntityUnleashEvent (#5130) 31f9f869a [CI-SKIP] Fix YourKit links in readme, fixes #5091 8ac27aa38 [Auto] Updated Upstream (CraftBukkit) c4d9cc831 [Auto] Updated Upstream (Bukkit/CraftBukkit) d0477d326 [Auto] Updated Upstream (CraftBukkit) d9f5f7018 EntityMoveEvent (#4614)
36 lines
2.1 KiB
Diff
36 lines
2.1 KiB
Diff
From 0000000000000000000000000000000000000000 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
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/BehaviorFarm.java b/src/main/java/net/minecraft/server/BehaviorFarm.java
|
|
index 54a555509e3d83e9749609dc35897ad151bca681..0ff202c0d77681f7e0d55d57c69dd0e455336eba 100644
|
|
--- a/src/main/java/net/minecraft/server/BehaviorFarm.java
|
|
+++ b/src/main/java/net/minecraft/server/BehaviorFarm.java
|
|
@@ -18,7 +18,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) { // Purpur
|
|
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 9878953c76a9bcd2a29774a37c1b65ec919b3963..744e1406e7a47045eff7a20b03a8eaf7128d768e 100644
|
|
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
@@ -285,9 +285,11 @@ public class PurpurWorldConfig {
|
|
|
|
public int villagerBrainTicks = 1;
|
|
public boolean villagerUseBrainTicksOnlyWhenLagging = true;
|
|
+ public boolean villagerFarmingBypassMobGriefing = false;
|
|
private void villagerSettings() {
|
|
villagerBrainTicks = getInt("mobs.villager.brain-ticks", villagerBrainTicks);
|
|
villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging);
|
|
+ villagerFarmingBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerFarmingBypassMobGriefing);
|
|
}
|
|
|
|
public boolean witherSkeletonTakesWitherDamage = false;
|