From 1dd837a707fbdd7d6a1fcbbb863c851464a75331 Mon Sep 17 00:00:00 2001 From: William Blake Galbreath 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 | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java index 976473a678..7bc0c2f861 100644 --- a/src/main/java/net/minecraft/server/EntityVillager.java +++ b/src/main/java/net/minecraft/server/EntityVillager.java @@ -886,6 +886,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation @Nullable private EntityIronGolem eG() { + if (world.a(EntityIronGolem.class, getBoundingBox().grow(world.purpurConfig.radiusVillagerIronGolemSpawns)).size() > world.purpurConfig.limitVillagerIronGolemSpawns) 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 e3fe4ed5f0..88a7e9ec6e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java @@ -133,4 +133,11 @@ public class PurpurWorldConfig { private void limitPillagerOutpostSpawns() { limitPillagerOutpostSpawns = getInt("limit-pillager-outpost-spawns", limitPillagerOutpostSpawns); } + + public int radiusVillagerIronGolemSpawns = 64; + public int limitVillagerIronGolemSpawns = 5; + private void radiusVillagerIronGolemSpawns() { + radiusVillagerIronGolemSpawns = getInt("radius-villager-iron-golem-spawns", radiusVillagerIronGolemSpawns); + limitVillagerIronGolemSpawns = getInt("limit-villager-iron-golem-spawns", limitVillagerIronGolemSpawns); + } } -- 2.20.1