Move per-world mob options around in config

This commit is contained in:
William Blake Galbreath
2020-01-03 01:41:07 -06:00
parent 8d40b034fc
commit f518f72269
17 changed files with 189 additions and 186 deletions

View File

@@ -422,41 +422,6 @@ player
- **default:** 100
- **description:** Maximum amount of exp value to drop on death
cat-spawns
~~~~~~~~~~
* delay
- **default:** 1200
- **description:** Number of ticks between attempting to naturally spawn a cat
* swamp-hut
* disable
- **default:** false
- **description:** Control if cats can naturally spawn in witch swamp huts
* scan-range-for-other-cats
- **default:** 16
- **description:** Do not spawn a cat if another cat is found within this range
* village
* disable
- **default:** false
- **description:** Control if cats can naturally spawn in villages/houses
* scan-range-for-other-cats
- **default:** 48
- **description:** Do not spawn a cat if another cat is found within this range
limit-pillager-outpost-spawns
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* **default**: 10
* **description**: Limit the number of pillagers allowed to spawn at an outpost at any given time
radius-villager-iron-golem-spawns
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* **default**: 0
* **description**: Radius villagers search for existing iron golems before spawning more. Value of 0 disables features
limit-villager-iron-golem-spawns
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* **default**: 5
* **description**: Maximum amount of iron golems villagers can spawn in configured radius
entities-target-with-follow-range
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* **default**: false
@@ -522,6 +487,18 @@ elytra
mob
~~~
* cat
* natural-spawns
* delay
- **default:** 1200
- **description:** Number of ticks between attempting to naturally spawn a cat
* scan-range-for-other-cats
* swamp-hut
- **default:** 16
- **description:** Do not spawn a cat if another cat is found within this range. Set to 0 to disable
* village
- **default:** 48
- **description:** Do not spawn a cat if another cat is found within this range. Set to 0 to disable
* chicken
* eggs-hatch-when-despawned
* max
@@ -530,6 +507,18 @@ mob
* range
- **default:** 10
- **description:** The range in which to check for maximum number of allowed chickens.
* pillager
* limit-outpost-spawns
* **default**: 10
* **description**: Limit the number of pillagers allowed to spawn at an outpost at any given time
* villager
* iron-golem-spawn
* radius
* **default**: 0
* **description**: Radius villagers search for existing iron golems before spawning more. Value of 0 disables features
* limit
* **default**: 5
* **description**: Maximum amount of iron golems villagers can spawn in configured radius
* zombie-villager
* transformation-chance
* easy

View File

@@ -1,4 +1,4 @@
From fa2f33292c0e5798936fdd7779cfe403e22929ab Mon Sep 17 00:00:00 2001
From 05225cd7543552bff6a28d35f4f47ada032c514d Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Mon, 22 Jul 2019 14:24:26 -0500
Subject: [PATCH] Implement a hard limit for pillager outpost spawns
@@ -9,19 +9,19 @@ Subject: [PATCH] Implement a hard limit for pillager outpost spawns
2 files changed, 6 insertions(+)
diff --git a/src/main/java/net/minecraft/server/ChunkProviderGenerate.java b/src/main/java/net/minecraft/server/ChunkProviderGenerate.java
index 70f43c5159..9a56bd30e4 100644
index 70f43c5159..baca8f7054 100644
--- a/src/main/java/net/minecraft/server/ChunkProviderGenerate.java
+++ b/src/main/java/net/minecraft/server/ChunkProviderGenerate.java
@@ -143,6 +143,7 @@ public class ChunkProviderGenerate extends ChunkGeneratorAbstract<GeneratorSetti
}
} else if (enumcreaturetype == EnumCreatureType.MONSTER) {
if (WorldGenerator.PILLAGER_OUTPOST.a(this.a, blockposition)) {
+ if (getWorld().purpurConfig.limitPillagerOutpostSpawns > 0 && getWorld().getEntitiesByClass(EntityPillager.class, new AxisAlignedBB(blockposition).grow(128)).size() < getWorld().purpurConfig.limitPillagerOutpostSpawns) // Purpur
+ if (getWorld().purpurConfig.pillagerLimitOutpostSpawns > 0 && getWorld().getEntitiesByClass(EntityPillager.class, new AxisAlignedBB(blockposition).grow(128)).size() < getWorld().purpurConfig.pillagerLimitOutpostSpawns) // Purpur
return WorldGenerator.PILLAGER_OUTPOST.e();
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index a6f014a050..a934099d81 100644
index a6f014a050..c6de971ac5 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -118,4 +118,9 @@ public class PurpurWorldConfig {
@@ -29,11 +29,11 @@ index a6f014a050..a934099d81 100644
milkCuresBadOmen = getBoolean("milk-cures-bad-omen", milkCuresBadOmen);
}
+
+ public int limitPillagerOutpostSpawns = 10;
+ private void limitPillagerOutpostSpawns() {
+ limitPillagerOutpostSpawns = getInt("limit-pillager-outpost-spawns", limitPillagerOutpostSpawns);
+ public int pillagerLimitOutpostSpawns = 10;
+ private void pillagerSettings() {
+ pillagerLimitOutpostSpawns = getInt("mobs.pillager.limit-outpost-spawns", pillagerLimitOutpostSpawns);
+ }
}
--
2.24.0.rc1
2.24.0

View File

@@ -1,42 +1,61 @@
From 966076841875809a4cc27b3a8fd525bef3547582 Mon Sep 17 00:00:00 2001
From 2b50b40a4d96a235826d2702936bd1f1afc2bc55 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/minecraft/server/EntityVillager.java | 5 +----
src/main/java/net/pl3x/purpur/PurpurWorldConfig.java | 7 +++++++
2 files changed, 8 insertions(+)
2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
index 572723005..b3a0295ae 100644
index 5727230058..daa9544453 100644
--- a/src/main/java/net/minecraft/server/EntityVillager.java
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
@@ -874,6 +874,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -12,18 +12,14 @@ import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
-import java.util.Map.Entry;
import java.util.function.BiPredicate;
import java.util.stream.Collectors;
import javax.annotation.Nullable;
// CraftBukkit start
import org.bukkit.Bukkit;
-import org.bukkit.craftbukkit.entity.CraftVillager;
import org.bukkit.craftbukkit.event.CraftEventFactory;
-import org.bukkit.craftbukkit.inventory.CraftMerchantRecipe;
import org.bukkit.entity.Villager;
import org.bukkit.event.entity.EntityTransformEvent;
-import org.bukkit.event.entity.VillagerAcquireTradeEvent;
import org.bukkit.event.entity.VillagerReplenishTradeEvent;
// CraftBukkit end
@@ -874,6 +870,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@Nullable
private EntityIronGolem fb() {
+ if (world.purpurConfig.radiusVillagerIronGolemSpawns > 0 && world.a(EntityIronGolem.class, getBoundingBox().grow(world.purpurConfig.radiusVillagerIronGolemSpawns)).size() > world.purpurConfig.limitVillagerIronGolemSpawns) return null; // Purpur
+ 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 a934099d8..8d01cdc8e 100644
index c6de971ac5..9dddfd8155 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -123,4 +123,11 @@ public class PurpurWorldConfig {
private void limitPillagerOutpostSpawns() {
limitPillagerOutpostSpawns = getInt("limit-pillager-outpost-spawns", limitPillagerOutpostSpawns);
private void pillagerSettings() {
pillagerLimitOutpostSpawns = getInt("mobs.pillager.limit-outpost-spawns", pillagerLimitOutpostSpawns);
}
+
+ public int radiusVillagerIronGolemSpawns = 0;
+ public int limitVillagerIronGolemSpawns = 5;
+ private void radiusVillagerIronGolemSpawns() {
+ radiusVillagerIronGolemSpawns = getInt("radius-villager-iron-golem-spawns", radiusVillagerIronGolemSpawns);
+ limitVillagerIronGolemSpawns = getInt("limit-villager-iron-golem-spawns", limitVillagerIronGolemSpawns);
+ public int villagerSpawnIronGolemRadius = 0;
+ public int villagerSpawnIronGolemLimit = 5;
+ private void villagerSettings() {
+ villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius);
+ villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit);
+ }
}
--
2.24.0.rc1
2.24.0

View File

@@ -1,4 +1,4 @@
From e9017245f70b307f62d07cd1c0e6ba87c6e9de42 Mon Sep 17 00:00:00 2001
From 0e366064ed25e7255921af0e4acc532ca38ca52d Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Tue, 23 Jul 2019 08:28:21 -0500
Subject: [PATCH] Implement configurable villager brain ticks
@@ -9,10 +9,10 @@ Subject: [PATCH] Implement configurable villager brain ticks
2 files changed, 13 insertions(+)
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
index e5361be33a..12da4a22b8 100644
index daa9544453..7d146d9783 100644
--- a/src/main/java/net/minecraft/server/EntityVillager.java
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
@@ -53,6 +53,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -49,6 +49,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
}, MemoryModuleType.MEETING_POINT, (entityvillager, villageplacetype) -> {
return villageplacetype == VillagePlaceType.r;
});
@@ -20,7 +20,7 @@ index e5361be33a..12da4a22b8 100644
public EntityVillager(EntityTypes<? extends EntityVillager> entitytypes, World world) {
this(entitytypes, world, VillagerType.PLAINS);
@@ -66,6 +67,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -62,6 +63,7 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
this.setCanPickupLoot(true);
this.setVillagerData(this.getVillagerData().withType(villagertype).withProfession(VillagerProfession.NONE));
this.bo = this.a(new Dynamic(DynamicOpsNBT.a, new NBTTagCompound()));
@@ -28,7 +28,7 @@ index e5361be33a..12da4a22b8 100644
}
@Override
@@ -145,6 +147,10 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -141,6 +143,10 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@Override
protected void mobTick() {
this.world.getMethodProfiler().enter("brain");
@@ -40,7 +40,7 @@ index e5361be33a..12da4a22b8 100644
this.world.getMethodProfiler().exit();
if (!this.et() && this.bB > 0) {
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
index 48d4f1f5aa..44232346e1 100644
index cccb966df0..2abdea8731 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -232,6 +232,13 @@ public class PurpurConfig {
@@ -58,5 +58,5 @@ index 48d4f1f5aa..44232346e1 100644
private static void zombieHorseSettings() {
zombieHorseSpawnChance = (float) getDouble("settings.mobs.zombie_horse.spawn-chance", zombieHorseSpawnChance);
--
2.24.0.rc1
2.24.0

View File

@@ -1,4 +1,4 @@
From 06041349f67f8fbb0817f243547cceeac61da7fe Mon Sep 17 00:00:00 2001
From 9e23a1e16c112c6d72cfa9f5e15888c48fed3be6 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Thu, 25 Jul 2019 18:07:37 -0500
Subject: [PATCH] Implement elytra settings
@@ -13,7 +13,7 @@ Subject: [PATCH] Implement elytra settings
6 files changed, 50 insertions(+), 4 deletions(-)
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 758131649..7d424040c 100644
index 7581316497..7d424040cc 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -2652,9 +2652,16 @@ public abstract class EntityLiving extends Entity {
@@ -45,7 +45,7 @@ index 758131649..7d424040c 100644
this.world.broadcastEntityEffect(this, d(enumitemslot));
}
diff --git a/src/main/java/net/minecraft/server/ItemFireworks.java b/src/main/java/net/minecraft/server/ItemFireworks.java
index a43e52889..cc8fbccd1 100644
index a43e52889f..cc8fbccd16 100644
--- a/src/main/java/net/minecraft/server/ItemFireworks.java
+++ b/src/main/java/net/minecraft/server/ItemFireworks.java
@@ -39,6 +39,14 @@ public class ItemFireworks extends Item {
@@ -64,7 +64,7 @@ index a43e52889..cc8fbccd1 100644
itemstack.subtract(1);
} else ((EntityPlayer) entityhuman).getBukkitEntity().updateInventory();
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index d09f0b3f7..eafce44b3 100644
index 1108aa0852..2b39d5ca20 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -401,7 +401,7 @@ public final class ItemStack {
@@ -90,7 +90,7 @@ index d09f0b3f7..eafce44b3 100644
if (this.count == 1 && t0 instanceof EntityHuman) {
org.bukkit.craftbukkit.event.CraftEventFactory.callPlayerItemBreakEvent((EntityHuman) t0, this);
diff --git a/src/main/java/net/minecraft/server/ItemTrident.java b/src/main/java/net/minecraft/server/ItemTrident.java
index 1cbaed9da..b7610aaf7 100644
index 1cbaed9da4..b7610aaf70 100644
--- a/src/main/java/net/minecraft/server/ItemTrident.java
+++ b/src/main/java/net/minecraft/server/ItemTrident.java
@@ -100,6 +100,16 @@ public class ItemTrident extends Item {
@@ -111,7 +111,7 @@ index 1cbaed9da..b7610aaf7 100644
entityhuman.r(20);
if (entityhuman.onGround) {
diff --git a/src/main/java/net/minecraft/server/Vec3D.java b/src/main/java/net/minecraft/server/Vec3D.java
index 212af252b..fbc30e6ec 100644
index 212af252be..fbc30e6ece 100644
--- a/src/main/java/net/minecraft/server/Vec3D.java
+++ b/src/main/java/net/minecraft/server/Vec3D.java
@@ -98,6 +98,7 @@ public class Vec3D implements IPosition {
@@ -123,14 +123,13 @@ index 212af252b..fbc30e6ec 100644
return this.x * this.x + this.y * this.y + this.z * this.z;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 8d01cdc8e..059cf85f4 100644
index 9dddfd8155..06d6275809 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -130,4 +130,17 @@ public class PurpurWorldConfig {
radiusVillagerIronGolemSpawns = getInt("radius-villager-iron-golem-spawns", radiusVillagerIronGolemSpawns);
limitVillagerIronGolemSpawns = getInt("limit-villager-iron-golem-spawns", limitVillagerIronGolemSpawns);
@@ -119,6 +119,19 @@ public class PurpurWorldConfig {
milkCuresBadOmen = getBoolean("milk-cures-bad-omen", milkCuresBadOmen);
}
+
+ public int elytraDamagePerSecond = 1;
+ public double elytraDamageMultiplyBySpeed = 0;
+ public boolean elytraIgnoreUnbreaking = false;
@@ -143,7 +142,10 @@ index 8d01cdc8e..059cf85f4 100644
+ elytraDamagePerFireworkBoost = getInt("elytra.damage-per-boost.firework", elytraDamagePerFireworkBoost);
+ elytraDamagePerTridentBoost = getInt("elytra.damage-per-boost.trident", elytraDamagePerTridentBoost);
+ }
}
+
public int pillagerLimitOutpostSpawns = 10;
private void pillagerSettings() {
pillagerLimitOutpostSpawns = getInt("mobs.pillager.limit-outpost-spawns", pillagerLimitOutpostSpawns);
--
2.24.0.rc1
2.24.0

View File

@@ -1,4 +1,4 @@
From 97354fff32f4f7933175fe81fa397d5252871483 Mon Sep 17 00:00:00 2001
From a812fd3b8c0aef3ba27d7a49f4b721ee73d9db5a Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Thu, 8 Aug 2019 15:29:15 -0500
Subject: [PATCH] Implement AFK API
@@ -17,7 +17,7 @@ Subject: [PATCH] Implement AFK API
10 files changed, 113 insertions(+), 24 deletions(-)
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
index dee92e5a7..5e99ad814 100644
index dee92e5a72..5e99ad8144 100644
--- a/src/main/java/net/minecraft/server/Entity.java
+++ b/src/main/java/net/minecraft/server/Entity.java
@@ -1374,6 +1374,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
@@ -29,7 +29,7 @@ index dee92e5a7..5e99ad814 100644
double d3 = this.locX() - d0;
double d4 = this.locY() - d1;
diff --git a/src/main/java/net/minecraft/server/EntityHuman.java b/src/main/java/net/minecraft/server/EntityHuman.java
index 57c528d53..3c9f18096 100644
index 57c528d532..3c9f180960 100644
--- a/src/main/java/net/minecraft/server/EntityHuman.java
+++ b/src/main/java/net/minecraft/server/EntityHuman.java
@@ -86,6 +86,15 @@ public abstract class EntityHuman extends EntityLiving {
@@ -49,7 +49,7 @@ index 57c528d53..3c9f18096 100644
super(EntityTypes.PLAYER, world);
this.bV = ItemStack.a;
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 8565ad9c7..50a922ff1 100644
index 8565ad9c76..50a922ff1b 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1583,8 +1583,51 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -105,7 +105,7 @@ index 8565ad9c7..50a922ff1 100644
return this.serverStatisticManager;
}
diff --git a/src/main/java/net/minecraft/server/IEntityAccess.java b/src/main/java/net/minecraft/server/IEntityAccess.java
index 8b36252ae..5e2d56d5d 100644
index 8b36252ae1..5e2d56d5de 100644
--- a/src/main/java/net/minecraft/server/IEntityAccess.java
+++ b/src/main/java/net/minecraft/server/IEntityAccess.java
@@ -116,28 +116,18 @@ public interface IEntityAccess {
@@ -150,7 +150,7 @@ index 8b36252ae..5e2d56d5d 100644
@Nullable
diff --git a/src/main/java/net/minecraft/server/IEntitySelector.java b/src/main/java/net/minecraft/server/IEntitySelector.java
index 8d7273a38..71c61dc45 100644
index 8d7273a38b..71c61dc45e 100644
--- a/src/main/java/net/minecraft/server/IEntitySelector.java
+++ b/src/main/java/net/minecraft/server/IEntitySelector.java
@@ -7,6 +7,7 @@ import javax.annotation.Nullable;
@@ -170,7 +170,7 @@ index 8d7273a38..71c61dc45 100644
public static Predicate<Entity> a(double d0, double d1, double d2, double d3) {
double d4 = d3 * d3;
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
index a4af019bc..2db59c55c 100644
index a4af019bc6..2db59c55ca 100644
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
@@ -277,6 +277,12 @@ public class PlayerConnection implements PacketListenerPlayIn {
@@ -205,7 +205,7 @@ index a4af019bc..2db59c55c 100644
if (from.getX() != Double.MAX_VALUE) {
Location oldTo = to.clone();
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
index 0a9df816c..84c069330 100644
index 0a9df816c2..84c0693303 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -367,7 +367,7 @@ public class WorldServer extends World {
@@ -227,7 +227,7 @@ index 0a9df816c..84c069330 100644
} else if (entityplayer.isSleeping()) {
++j;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 059cf85f4..0764be9d1 100644
index 06d6275809..259f6fa287 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -1,6 +1,7 @@
@@ -238,8 +238,8 @@ index 059cf85f4..0764be9d1 100644
import org.bukkit.configuration.file.YamlConfiguration;
import org.spigotmc.SpigotWorldConfig;
@@ -131,6 +132,21 @@ public class PurpurWorldConfig {
limitVillagerIronGolemSpawns = getInt("limit-villager-iron-golem-spawns", limitVillagerIronGolemSpawns);
@@ -132,6 +133,21 @@ public class PurpurWorldConfig {
elytraDamagePerTridentBoost = getInt("elytra.damage-per-boost.trident", elytraDamagePerTridentBoost);
}
+ public boolean idleTimeoutKick = true;
@@ -257,11 +257,11 @@ index 059cf85f4..0764be9d1 100644
+ idleTimeoutBroadcastBack = ChatColor.translateAlternateColorCodes('&', getString("idle-timeout.broadcast.back", idleTimeoutBroadcastBack));
+ }
+
public int elytraDamagePerSecond = 1;
public double elytraDamageMultiplyBySpeed = 0;
public boolean elytraIgnoreUnbreaking = false;
public int pillagerLimitOutpostSpawns = 10;
private void pillagerSettings() {
pillagerLimitOutpostSpawns = getInt("mobs.pillager.limit-outpost-spawns", pillagerLimitOutpostSpawns);
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 712056cad..c12d52e5d 100644
index 712056cad1..c12d52e5df 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2063,4 +2063,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -287,7 +287,7 @@ index 712056cad..c12d52e5d 100644
+ // Purpur end
}
diff --git a/src/main/java/org/spigotmc/ActivationRange.java b/src/main/java/org/spigotmc/ActivationRange.java
index 92601c581..185717c80 100644
index 92601c581c..185717c804 100644
--- a/src/main/java/org/spigotmc/ActivationRange.java
+++ b/src/main/java/org/spigotmc/ActivationRange.java
@@ -128,6 +128,7 @@ public class ActivationRange

View File

@@ -1,4 +1,4 @@
From 60d581d85c6303cfddcbb8404c07ac16f90820f8 Mon Sep 17 00:00:00 2001
From a439ab2a24f3776c3e58df37c7462b0af13f7fec Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <blake.galbreath@gmail.com>
Date: Thu, 3 Oct 2019 18:08:03 -0500
Subject: [PATCH] Allow leashing villagers
@@ -10,7 +10,7 @@ Subject: [PATCH] Allow leashing villagers
3 files changed, 10 insertions(+)
diff --git a/src/main/java/net/minecraft/server/EntityInsentient.java b/src/main/java/net/minecraft/server/EntityInsentient.java
index 116820dd8..f9bbc0be4 100644
index 116820dd81..f9bbc0be45 100644
--- a/src/main/java/net/minecraft/server/EntityInsentient.java
+++ b/src/main/java/net/minecraft/server/EntityInsentient.java
@@ -1050,6 +1050,7 @@ public abstract class EntityInsentient extends EntityLiving {
@@ -22,10 +22,10 @@ index 116820dd8..f9bbc0be4 100644
if (CraftEventFactory.callPlayerUnleashEntityEvent(this, entityhuman).isCancelled()) {
((EntityPlayer) entityhuman).playerConnection.sendPacket(new PacketPlayOutAttachEntity(this, this.getLeashHolder()));
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
index 4ddeb8c29..51b9bfd33 100644
index 7d146d9783..4187bb6026 100644
--- a/src/main/java/net/minecraft/server/EntityVillager.java
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
@@ -984,4 +984,11 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -980,4 +980,11 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
return optional.isPresent() && optional1.isPresent() ? i - ((MinecraftSerializableLong) optional.get()).a() < 24000L && i - ((MinecraftSerializableLong) optional1.get()).a() < 36000L : false;
}
@@ -38,7 +38,7 @@ index 4ddeb8c29..51b9bfd33 100644
+ // Purpur - end
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
index 569c5b344..7ab88bd64 100644
index 1d6627cf05..12638c8169 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -260,9 +260,11 @@ public class PurpurConfig {
@@ -54,5 +54,5 @@ index 569c5b344..7ab88bd64 100644
public static boolean zombieTargetsTurtleEggs = true;
--
2.24.0.rc1
2.24.0

View File

@@ -1,4 +1,4 @@
From 51cfe6295662e3ffb5bda3331140c21d342bcc49 Mon Sep 17 00:00:00 2001
From ce2b6d10538fe243152dd6d7ba55804488795233 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Sat, 23 Nov 2019 17:55:42 -0600
Subject: [PATCH] Implement infinite lava
@@ -69,7 +69,7 @@ index 9eba9a12c0..39252e6873 100644
protected boolean c;
protected boolean d;
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 3ad3415c4a..9594d72e35 100644
index 10c659da7a..006dcd225c 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -144,6 +144,11 @@ public class PurpurWorldConfig {
@@ -81,9 +81,9 @@ index 3ad3415c4a..9594d72e35 100644
+ lavaInfinite = getBoolean("settings.lava-flow.infinite", lavaInfinite);
+ }
+
public int limitPillagerOutpostSpawns = 10;
private void limitPillagerOutpostSpawns() {
limitPillagerOutpostSpawns = getInt("limit-pillager-outpost-spawns", limitPillagerOutpostSpawns);
public int elytraDamagePerSecond = 1;
public double elytraDamageMultiplyBySpeed = 0;
public boolean elytraIgnoreUnbreaking = false;
--
2.24.0

View File

@@ -1,4 +1,4 @@
From 0a7cb9e8304d9aebdda3063c6d1076a25e804bce Mon Sep 17 00:00:00 2001
From 3f64c9d3b117dfff3f18d61e4510e362242c1436 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Fri, 29 Nov 2019 22:10:12 -0600
Subject: [PATCH] Villagers follow emerald blocks
@@ -9,10 +9,10 @@ Subject: [PATCH] Villagers follow emerald blocks
2 files changed, 12 insertions(+)
diff --git a/src/main/java/net/minecraft/server/EntityVillager.java b/src/main/java/net/minecraft/server/EntityVillager.java
index 8b036c3b53..22b6e02895 100644
index 4187bb6026..d8cbe549d4 100644
--- a/src/main/java/net/minecraft/server/EntityVillager.java
+++ b/src/main/java/net/minecraft/server/EntityVillager.java
@@ -29,6 +29,7 @@ import org.bukkit.event.entity.VillagerReplenishTradeEvent;
@@ -25,6 +25,7 @@ import org.bukkit.event.entity.VillagerReplenishTradeEvent;
public class EntityVillager extends EntityVillagerAbstract implements ReputationHandler, VillagerDataHolder {
@@ -20,7 +20,7 @@ index 8b036c3b53..22b6e02895 100644
private static final DataWatcherObject<VillagerData> bz = DataWatcher.a(EntityVillager.class, DataWatcherRegistry.q);
public static final Map<Item, Integer> bx = ImmutableMap.of(Items.BREAD, 4, Items.POTATO, 1, Items.CARROT, 1, Items.BEETROOT, 1);
private static final Set<Item> bA = ImmutableSet.of(Items.BREAD, Items.POTATO, Items.CARROT, Items.WHEAT, Items.WHEAT_SEEDS, Items.BEETROOT, new Item[]{Items.BEETROOT_SEEDS});
@@ -70,6 +71,15 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
@@ -66,6 +67,15 @@ public class EntityVillager extends EntityVillagerAbstract implements Reputation
brainTickOffset = getRandom().nextInt(100); // Purpur
}
@@ -37,7 +37,7 @@ index 8b036c3b53..22b6e02895 100644
public BehaviorController<EntityVillager> getBehaviorController() {
return (BehaviorController<EntityVillager>) super.getBehaviorController(); // CraftBukkit - decompile error
diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java
index 68db82759d..4bf208b35c 100644
index 66f524ebf8..cc4731ccc8 100644
--- a/src/main/java/net/pl3x/purpur/PurpurConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java
@@ -280,10 +280,12 @@ public class PurpurConfig {
@@ -54,5 +54,5 @@ index 68db82759d..4bf208b35c 100644
public static boolean zombieTargetsTurtleEggs = true;
--
2.24.0.rc1
2.24.0

View File

@@ -1,4 +1,4 @@
From b6fae51c16321e3c6ae36ce3624c047b94cd22c6 Mon Sep 17 00:00:00 2001
From 43b0b6e7711d55097bcedaa9bab727228aeb324b Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Fri, 29 Nov 2019 23:47:42 -0600
Subject: [PATCH] Despawn egg hatches chicken
@@ -41,21 +41,23 @@ index e61af3f5eb..184b2a015a 100644
Vec3D vec3d = this.getMot();
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c618169db3..e54f5dcfd4 100644
index 006dcd225c..63215502e2 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -188,4 +188,11 @@ public class PurpurWorldConfig {
elytraDamagePerFireworkBoost = getInt("elytra.damage-per-boost.firework", elytraDamagePerFireworkBoost);
elytraDamagePerTridentBoost = getInt("elytra.damage-per-boost.trident", elytraDamagePerTridentBoost);
@@ -177,6 +177,13 @@ public class PurpurWorldConfig {
idleTimeoutBroadcastBack = ChatColor.translateAlternateColorCodes('&', getString("idle-timeout.broadcast.back", idleTimeoutBroadcastBack));
}
+
+ public int chickenEggsHatchWhenDespawnedMax = 0;
+ public int chickenEggsHatchWhenDespawnedRange = 10;
+ private void chickenSettings() {
+ chickenEggsHatchWhenDespawnedMax = getInt("mobs.chicken.eggs-hatch-when-despawned.max", chickenEggsHatchWhenDespawnedMax);
+ chickenEggsHatchWhenDespawnedRange = getInt("mobs.chicken.eggs-hatch-when-despawned.range", chickenEggsHatchWhenDespawnedRange);
+ }
}
+
public int pillagerLimitOutpostSpawns = 10;
private void pillagerSettings() {
pillagerLimitOutpostSpawns = getInt("mobs.pillager.limit-outpost-spawns", pillagerLimitOutpostSpawns);
--
2.24.0

View File

@@ -1,4 +1,4 @@
From e93a887f22af6046e4070afd97c9d5b8033a202d Mon Sep 17 00:00:00 2001
From e9b244c959e8ee034c4206171665907903355099 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Sat, 30 Nov 2019 01:31:09 -0600
Subject: [PATCH] Option for hay block fall damage
@@ -21,11 +21,11 @@ index ca81c49f0a..ca8f957989 100644
}
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index c618169db3..2de81f0d3e 100644
index fc7238886a..31f9b86d5a 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -149,6 +149,11 @@ public class PurpurWorldConfig {
lavaInfinite = getBoolean("settings.lava-flow.infinite", lavaInfinite);
@@ -144,6 +144,11 @@ public class PurpurWorldConfig {
milkCuresBadOmen = getBoolean("milk-cures-bad-omen", milkCuresBadOmen);
}
+ public boolean hayBlockFallDamage = true;
@@ -33,9 +33,9 @@ index c618169db3..2de81f0d3e 100644
+ hayBlockFallDamage = getBoolean("hay-block-fall-damage", hayBlockFallDamage);
+ }
+
public int limitPillagerOutpostSpawns = 10;
private void limitPillagerOutpostSpawns() {
limitPillagerOutpostSpawns = getInt("limit-pillager-outpost-spawns", limitPillagerOutpostSpawns);
public boolean lavaInfinite = false;
private void lavaSettings() {
lavaInfinite = getBoolean("settings.lava-flow.infinite", lavaInfinite);
--
2.24.0

View File

@@ -1,4 +1,4 @@
From 18f230da2e420b38ec84967a1b5ae8c79f363faf Mon Sep 17 00:00:00 2001
From ce25ea0e468fcae7a6ca9bbae69b59ff67d15877 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Sat, 30 Nov 2019 03:30:17 -0600
Subject: [PATCH] Add sleep options
@@ -73,11 +73,11 @@ index 3c9f180960..3957daf751 100644
return Either.left(EntityHuman.EnumBedResult.NOT_POSSIBLE_NOW);
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index fbe7063441..f5283d7aa5 100644
index 4cfdd5c81c..0b01e5c7cd 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -166,6 +166,13 @@ public class PurpurWorldConfig {
limitVillagerIronGolemSpawns = getInt("limit-villager-iron-golem-spawns", limitVillagerIronGolemSpawns);
@@ -182,6 +182,13 @@ public class PurpurWorldConfig {
idleTimeoutBroadcastBack = ChatColor.translateAlternateColorCodes('&', getString("idle-timeout.broadcast.back", idleTimeoutBroadcastBack));
}
+ public boolean sleepOnlyWithCondition = false;
@@ -87,9 +87,9 @@ index fbe7063441..f5283d7aa5 100644
+ sleepCondition = getString("sleep.condition", sleepCondition);
+ }
+
public boolean idleTimeoutKick = true;
public boolean idleTimeoutTickNearbyEntities = false;
public boolean idleTimeoutCountAsSleeping = false;
public int chickenEggsHatchWhenDespawnedMax = 0;
public int chickenEggsHatchWhenDespawnedRange = 10;
private void chickenSettings() {
--
2.24.0

View File

@@ -1,4 +1,4 @@
From bfdb4c203220387e3757e4de3006e6b76773ba97 Mon Sep 17 00:00:00 2001
From 4eb2649127af10e226c64546eed6aa104e61cd3f Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Thu, 19 Dec 2019 16:59:46 -0600
Subject: [PATCH] Add option for zombie villager transformation chance
@@ -35,12 +35,12 @@ index 47248cc45e..5703e9e70c 100644
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 0e36f85fb1..c3e0a65c69 100644
index 0b01e5c7cd..b4f5599661 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -207,4 +207,13 @@ public class PurpurWorldConfig {
chickenEggsHatchWhenDespawnedMax = getInt("mobs.chicken.eggs-hatch-when-despawned.max", chickenEggsHatchWhenDespawnedMax);
chickenEggsHatchWhenDespawnedRange = getInt("mobs.chicken.eggs-hatch-when-despawned.range", chickenEggsHatchWhenDespawnedRange);
villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius);
villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit);
}
+
+ public double zombieVillagerTransformationChanceEasy = 0.0D;

View File

@@ -1,15 +1,15 @@
From 2ce60c74d7a9eb0691d795dfc1ebb034d82e3b4f Mon Sep 17 00:00:00 2001
From 5dfba45d55c57a95b360638215c5d8cc3f4070ec Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Thu, 26 Dec 2019 18:52:55 -0600
Subject: [PATCH] Add natural cat spawning options
---
.../java/net/minecraft/server/MobSpawnerCat.java | 12 +++++++-----
.../java/net/pl3x/purpur/PurpurWorldConfig.java | 13 +++++++++++++
2 files changed, 20 insertions(+), 5 deletions(-)
.../net/minecraft/server/MobSpawnerCat.java | 19 +++++++++++++------
.../net/pl3x/purpur/PurpurWorldConfig.java | 9 +++++++++
2 files changed, 22 insertions(+), 6 deletions(-)
diff --git a/src/main/java/net/minecraft/server/MobSpawnerCat.java b/src/main/java/net/minecraft/server/MobSpawnerCat.java
index 6024478dc0..3da1af0eac 100644
index 6024478dc0..034b973365 100644
--- a/src/main/java/net/minecraft/server/MobSpawnerCat.java
+++ b/src/main/java/net/minecraft/server/MobSpawnerCat.java
@@ -15,7 +15,7 @@ public class MobSpawnerCat {
@@ -21,67 +21,58 @@ index 6024478dc0..3da1af0eac 100644
EntityPlayer entityplayer = worldserver.k();
if (entityplayer == null) {
@@ -31,10 +31,12 @@ public class MobSpawnerCat {
} else {
if (SpawnerCreature.a(EntityPositionTypes.Surface.ON_GROUND, (IWorldReader) worldserver, blockposition, EntityTypes.CAT)) {
if (worldserver.a(blockposition, 2)) {
+ if (worldserver.purpurConfig.catSpawnDisableVillage) return 0; // Purpur
return this.a(worldserver, blockposition);
}
if (WorldGenerator.SWAMP_HUT.b(worldserver, blockposition)) {
+ if (worldserver.purpurConfig.catSpawnDisableSwampHut) return 0; // Purpur
return this.a((World) worldserver, blockposition);
}
}
@@ -49,10 +51,10 @@ public class MobSpawnerCat {
@@ -49,10 +49,13 @@ public class MobSpawnerCat {
}
private int a(WorldServer worldserver, BlockPosition blockposition) {
- boolean flag = true;
+ int range = worldserver.purpurConfig.catSpawnVillageScanRange; // Purpur
+ // Purpur start
+ int range = worldserver.purpurConfig.catSpawnVillageScanRange;
+ if (range <= 0) return 0;
+ // Purpur end
if (worldserver.B().a(VillagePlaceType.q.c(), blockposition, 48, VillagePlace.Occupancy.IS_OCCUPIED) > 4L) {
- if (worldserver.B().a(VillagePlaceType.q.c(), blockposition, 48, VillagePlace.Occupancy.IS_OCCUPIED) > 4L) {
- List<EntityCat> list = worldserver.a(EntityCat.class, (new AxisAlignedBB(blockposition)).grow(48.0D, 8.0D, 48.0D));
+ if (worldserver.B().a(VillagePlaceType.q.c(), blockposition, range, VillagePlace.Occupancy.IS_OCCUPIED) > 4L) {
+ List<EntityCat> list = worldserver.a(EntityCat.class, (new AxisAlignedBB(blockposition)).grow(range, 8.0D, range)); // Purpur
if (list.size() < 5) {
return this.a(blockposition, (World) worldserver);
@@ -63,8 +65,8 @@ public class MobSpawnerCat {
@@ -63,8 +66,12 @@ public class MobSpawnerCat {
}
private int a(World world, BlockPosition blockposition) {
- boolean flag = true;
- List<EntityCat> list = world.a(EntityCat.class, (new AxisAlignedBB(blockposition)).grow(16.0D, 8.0D, 16.0D));
+ int range = world.purpurConfig.catSpawnSwampHutScanRange; // Purpur
+ // Purpur start
+ int range = world.purpurConfig.catSpawnSwampHutScanRange;
+ if (range <= 0) return 0;
+ // Purpur end
+
+ List<EntityCat> list = world.a(EntityCat.class, (new AxisAlignedBB(blockposition)).grow(range, 8.0D, range)); // Purpur
return list.size() < 1 ? this.a(blockposition, world) : 0;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 499bbe4ff2..deccd0084a 100644
index b4f5599661..0a933e29a4 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -154,6 +154,19 @@ public class PurpurWorldConfig {
hayBlockFallDamage = getBoolean("hay-block-fall-damage", hayBlockFallDamage);
@@ -189,6 +189,15 @@ public class PurpurWorldConfig {
sleepCondition = getString("sleep.condition", sleepCondition);
}
+ public int catSpawnDelay = 1200;
+ public boolean catSpawnDisableSwampHut = false;
+ public int catSpawnSwampHutScanRange = 16;
+ public boolean catSpawnDisableVillage = false;
+ public int catSpawnVillageScanRange = 48;
+ private void catSettings() {
+ catSpawnDelay = getInt("cat-spawns.delay", catSpawnDelay);
+ catSpawnDisableSwampHut = getBoolean("cat-spawns.swamp-hut.disable", catSpawnDisableSwampHut);
+ catSpawnSwampHutScanRange = getInt("cat-spawns.swamp-hut.scan-range-for-other-cats", catSpawnSwampHutScanRange);
+ catSpawnDisableVillage = getBoolean("cat-spawns.village.disable", catSpawnDisableVillage);
+ catSpawnVillageScanRange = getInt("cat-spawns.village.scan-range-for-other-cats", catSpawnVillageScanRange);
+ catSpawnDelay = getInt("mobs.cat.natural-spawns.delay", catSpawnDelay);
+ catSpawnSwampHutScanRange = getInt("mobs.cat.natural-spawns.scan-range-for-other-cats.swamp-hut", catSpawnSwampHutScanRange);
+ catSpawnVillageScanRange = getInt("mobs.cat.natural-spawns.scan-range-for-other-cats.village", catSpawnVillageScanRange);
+ }
+
public int limitPillagerOutpostSpawns = 10;
private void limitPillagerOutpostSpawns() {
limitPillagerOutpostSpawns = getInt("limit-pillager-outpost-spawns", limitPillagerOutpostSpawns);
public int chickenEggsHatchWhenDespawnedMax = 0;
public int chickenEggsHatchWhenDespawnedRange = 10;
private void chickenSettings() {
--
2.24.0

View File

@@ -1,4 +1,4 @@
From 704d8126bd2f4d60fde55740413be8f384583bbf Mon Sep 17 00:00:00 2001
From 6008fe12c4429329fd28edcbe7cde65560146f97 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Thu, 26 Dec 2019 22:08:37 -0600
Subject: [PATCH] Add player death exp control options
@@ -35,11 +35,11 @@ index 3957daf751..15e342454c 100644
return 0;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index deccd0084a..6351e78902 100644
index 0a933e29a4..60ba8c1e9b 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -154,6 +154,13 @@ public class PurpurWorldConfig {
hayBlockFallDamage = getBoolean("hay-block-fall-damage", hayBlockFallDamage);
@@ -167,6 +167,13 @@ public class PurpurWorldConfig {
elytraDamagePerTridentBoost = getInt("elytra.damage-per-boost.trident", elytraDamagePerTridentBoost);
}
+ public String playerDeathExpDropEquation = "expLevel * 7";
@@ -49,9 +49,9 @@ index deccd0084a..6351e78902 100644
+ playerDeathExpDropMax = getInt("player.exp-dropped-on-death.maximum", playerDeathExpDropMax);
+ }
+
public int catSpawnDelay = 1200;
public boolean catSpawnDisableSwampHut = false;
public int catSpawnSwampHutScanRange = 16;
public boolean idleTimeoutKick = true;
public boolean idleTimeoutTickNearbyEntities = false;
public boolean idleTimeoutCountAsSleeping = false;
--
2.24.0

View File

@@ -1,4 +1,4 @@
From a80fe2b39956fdb1b31553590ab26f50f27a5428 Mon Sep 17 00:00:00 2001
From 9a41f2be0f54b9220fb0202039dd569fa957daa2 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Thu, 2 Jan 2020 01:23:22 -0600
Subject: [PATCH] Fix non black cat types spawning in swamp huts
@@ -8,10 +8,10 @@ Subject: [PATCH] Fix non black cat types spawning in swamp huts
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/src/main/java/net/minecraft/server/MobSpawnerCat.java b/src/main/java/net/minecraft/server/MobSpawnerCat.java
index 3da1af0eac..7e48895778 100644
index 034b973365..cc2f37869a 100644
--- a/src/main/java/net/minecraft/server/MobSpawnerCat.java
+++ b/src/main/java/net/minecraft/server/MobSpawnerCat.java
@@ -77,8 +77,9 @@ public class MobSpawnerCat {
@@ -82,8 +82,9 @@ public class MobSpawnerCat {
if (entitycat == null) {
return 0;
} else {

View File

@@ -1,4 +1,4 @@
From 5843b2181d73bf9aa67a0030357ec385355492a8 Mon Sep 17 00:00:00 2001
From a652ba103f160888434109e739fa845e8f146654 Mon Sep 17 00:00:00 2001
From: William Blake Galbreath <Blake.Galbreath@GMail.com>
Date: Thu, 2 Jan 2020 11:31:36 -0600
Subject: [PATCH] Make lava flow speed configurable
@@ -38,10 +38,10 @@ index 39252e6873..75f8441ab6 100644
return this.d;
}
diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
index 3a750bedee..71aadd05f9 100644
index 60ba8c1e9b..01029e504f 100644
--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
+++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java
@@ -145,8 +145,12 @@ public class PurpurWorldConfig {
@@ -150,8 +150,12 @@ public class PurpurWorldConfig {
}
public boolean lavaInfinite = false;
@@ -53,7 +53,7 @@ index 3a750bedee..71aadd05f9 100644
+ lavaSpeedNotNether = getInt("settings.lava-flow.speed.not-nether", lavaSpeedNotNether);
}
public boolean hayBlockFallDamage = true;
public int elytraDamagePerSecond = 1;
--
2.24.0