From 701e2a2dc2cb3606020f4cf416c6858b52872efd Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 5 Jul 2019 11:09:25 -0500 Subject: [PATCH] Make illusioners naturally spawn --- src/main/java/net/minecraft/server/Biomes.java | 18 ++++++++++++++++++ .../net/minecraft/server/SpawnerCreature.java | 4 ++++ .../java/net/pl3x/purpur/PurpurConfig.java | 5 +++++ 3 files changed, 27 insertions(+) diff --git a/src/main/java/net/minecraft/server/Biomes.java b/src/main/java/net/minecraft/server/Biomes.java index b075ee4ec..48dcab2d9 100644 --- a/src/main/java/net/minecraft/server/Biomes.java +++ b/src/main/java/net/minecraft/server/Biomes.java @@ -112,6 +112,24 @@ public abstract class Biomes { addSpawn("eroded_badlands", EnumCreatureType.MONSTER, EntityTypes.GIANT, 10, 1, 1); addSpawn("modified_badlands_plateau", EnumCreatureType.MONSTER, EntityTypes.GIANT, 10, 1, 1); } + if (net.pl3x.purpur.PurpurConfig.illusionersNaturallySpawn) { + addSpawn("plains", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("sunflower_plains", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("desert", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("desert_hills", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("desert_lakes", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("mountains", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("gravelly_mountains", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("modified_gravelly_mountains", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("savanna", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("savanna_plateau", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("shattered_savanna", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("shattered_savanna_plateau", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 5, 1, 1); + addSpawn("badlands", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 10, 1, 1); + addSpawn("badlands_plateau", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 10, 1, 1); + addSpawn("eroded_badlands", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 10, 1, 1); + addSpawn("modified_badlands_plateau", EnumCreatureType.MONSTER, EntityTypes.ILLUSIONER, 10, 1, 1); + } } private static void addSpawn(String biome, EnumCreatureType ct, EntityTypes et, int weight, int min_group, int max_group) { diff --git a/src/main/java/net/minecraft/server/SpawnerCreature.java b/src/main/java/net/minecraft/server/SpawnerCreature.java index 694075cb1..966ef81c6 100644 --- a/src/main/java/net/minecraft/server/SpawnerCreature.java +++ b/src/main/java/net/minecraft/server/SpawnerCreature.java @@ -82,6 +82,10 @@ public final class SpawnerCreature { if (!net.pl3x.purpur.PurpurConfig.giantsNaturallySpawn) { return i; } + } else if (entitytypes == EntityTypes.ILLUSIONER) { + if (!net.pl3x.purpur.PurpurConfig.illusionersNaturallySpawn) { + return i; + } } // Purpur end diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java index f9623c7c7..aa68cc366 100644 --- a/src/main/java/net/pl3x/purpur/PurpurConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java @@ -171,6 +171,11 @@ public class PurpurConfig { giantsHaveAI = getBoolean("settings.mobs.giant.have-ai", giantsHaveAI); } + public static boolean illusionersNaturallySpawn = true; + private static void illusionersSettings() { + illusionersNaturallySpawn = getBoolean("settings.mobs.illusioner.naturally-spawn", illusionersNaturallySpawn); + } + public static boolean ironGolemSwims = true; private static void ironGolemSettings() { ironGolemSwims = getBoolean("settings.mobs.iron_golem.swims", ironGolemSwims); -- 2.23.0.rc1