Files
Purpur/patches/server/0030-Make-illusioners-naturally-spawn.patch
2019-08-24 15:09:31 -05:00

75 lines
4.5 KiB
Diff

From bc945b320b5dd3c71df603969f0ed00c8e81e581 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
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 24c0e86eb..9b96ee52c 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -177,6 +177,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