mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-20 18:07:43 +01:00
Upstream has released updates that appears to apply and compile correctly Paper Changes: d6eda567 Provide a useful PluginClassLoader#toString a3fdafbd Restore Serialization Improvements again, wasn't an issue. 0e441c79 Revert "Improve Chat Component Legacy Serialization more" 53ef67b8 Improve Chat Component Legacy Serialization more afc1fcfc Fix serialization of colors from components eaa76a31 Add Villager Tasks to EAR inactive tick to keep behavior 357b52fd Improve Chunk Prioritization / Load Order a76bc402 Improve Chunk Status Transition Speed 7a2b345b Synchronize DataPaletteBlock instead of ReentrantLock
49 lines
2.7 KiB
Diff
49 lines
2.7 KiB
Diff
From ca8de54be4a0841046f39331f7195585f3182389 Mon Sep 17 00:00:00 2001
|
|
From: William Blake Galbreath <blake.galbreath@gmail.com>
|
|
Date: Mon, 22 Jul 2019 17:32:17 -0500
|
|
Subject: [PATCH] Implement configurable search radius for villagers to spawn
|
|
iron golems
|
|
|
|
---
|
|
src/main/java/net/minecraft/server/EntityVillager.java | 1 +
|
|
src/main/java/net/pl3x/purpur/PurpurWorldConfig.java | 4 ++++
|
|
2 files changed, 5 insertions(+)
|
|
|
|
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
|
|
index e3322fedd7..2153b36a3c 100644
|
|
--- a/src/main/java/net/minecraft/server/EntityVillager.java
|
|
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
|
|
@@ -918,6 +918,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
|
|
|
|
@Nullable
|
|
private EntityIronGolem fb() {
|
|
+ if (world.purpurConfig.villagerSpawnIronGolemRadius > 0 && world.a(EntityIronGolem.class, getBoundingBox().grow(world.purpurConfig.villagerSpawnIronGolemRadius)).size() > world.purpurConfig.villagerSpawnIronGolemLimit) return null; // Purpur
|
|
BlockPosition blockposition = new BlockPosition(this);
|
|
int i = 0;
|
|
|
|
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
index 284054db42..f60c4b6291 100644
|
|
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
|
|
@@ -781,6 +781,8 @@ public class PurpurWorldConfig {
|
|
public boolean villagerUseBrainTicksOnlyWhenLagging = true;
|
|
public boolean villagerFollowEmeraldBlock = false;
|
|
public boolean villagerCanBeLeashed = false;
|
|
+ public int villagerSpawnIronGolemRadius = 0;
|
|
+ public int villagerSpawnIronGolemLimit = 0;
|
|
private void villagerSettings() {
|
|
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
|
|
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
|
|
@@ -789,6 +791,8 @@ public class PurpurWorldConfig {
|
|
villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging);
|
|
villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock);
|
|
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);
|
|
}
|
|
|
|
public boolean villagerTraderRidable = false;
|
|
--
|
|
2.24.0
|
|
|