add back fix-stuck-in-portal patch

This commit is contained in:
granny
2024-06-16 00:08:49 -07:00
parent c3829f2769
commit 0510294c4f
171 changed files with 571 additions and 570 deletions

View File

@@ -5,42 +5,43 @@ Subject: [PATCH] Fix stuck in portals
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index ea2b179be7fe04bb690d7ff01dca0cc235636559..d1c5c334cf3d8ef6c34fcaac194fef693a594250 100644
index ae8235ed2a817776d052173c94a54ede9d2d275e..cf48fb43c2a648077f7a093c3bc550de659f6ece 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1349,6 +1349,7 @@ public class ServerPlayer extends Player {
playerlist.sendPlayerPermissionLevel(this);
@@ -1424,6 +1424,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
worldserver1.removePlayerImmediately(this, Entity.RemovalReason.CHANGED_DIMENSION);
this.unsetRemoved();
+ this.portalPos = io.papermc.paper.util.MCUtil.toBlockPosition(exit); // Purpur
// CraftBukkit end
+ this.portalPos = io.papermc.paper.util.MCUtil.toBlockPosition(exit); // Purpur
this.setServerLevel(worldserver);
this.connection.teleport(exit); // CraftBukkit - use internal teleport without event
this.connection.resetPosition();
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index eaa290e87be6953466252f0ae60de7763813e23f..afb96312f3c88a298799bd487e048d3d84252bf6 100644
index 10aaa05948839d43933a2de32bfc6fe54f61fbff..240ffb9d697f23b4080d48ec3b10de713a84a511 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3222,12 +3222,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
@@ -3072,13 +3072,16 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
return Vec3.directionFromRotation(this.getRotationVector());
}
+ public BlockPos portalPos = BlockPos.ZERO; // Purpur
public void handleInsidePortal(BlockPos pos) {
public void setAsInsidePortal(Portal portal, BlockPos pos) {
if (this.isOnPortalCooldown()) {
+ if (!(level().purpurConfig.playerFixStuckPortal && this instanceof Player && !pos.equals(portalPos))) // Purpur
this.setPortalCooldown();
} else if (level().purpurConfig.entitiesCanUsePortals || this instanceof ServerPlayer) { // Purpur
if (!this.level().isClientSide && !pos.equals(this.portalEntrancePos)) {
this.portalEntrancePos = pos.immutable();
} else {
if (this.portalProcess != null && this.portalProcess.isSamePortal(portal)) {
this.portalProcess.updateEntryPosition(pos.immutable());
this.portalProcess.setAsInsidePortalThisTick(true);
+ portalPos = BlockPos.ZERO; // Purpur
} else {
this.portalProcess = new PortalProcessor(portal, pos.immutable());
}
this.isInsidePortal = true;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 8c36c55ba6230bd254f1416e0a6446737fc1d911..2c4cd5bdc6815d03a5063a38ad913090a2cb5327 100644
index fc653ee2afaae715a4c57a3cc764079c58e692c0..5eb5d8d8a818e74b0b92b2ce4e65dccbc1b4f5f3 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -333,6 +333,7 @@ public class PurpurWorldConfig {
@@ -318,6 +318,7 @@ public class PurpurWorldConfig {
public int playerDeathExpDropMax = 100;
public boolean teleportIfOutsideBorder = false;
public boolean totemOfUndyingWorksInInventory = false;
@@ -48,7 +49,7 @@ index 8c36c55ba6230bd254f1416e0a6446737fc1d911..2c4cd5bdc6815d03a5063a38ad913090
private void playerSettings() {
if (PurpurConfig.version < 19) {
boolean oldVal = getBoolean("gameplay-mechanics.player.idle-timeout.mods-target", idleTimeoutTargetPlayer);
@@ -348,6 +349,7 @@ public class PurpurWorldConfig {
@@ -333,6 +334,7 @@ public class PurpurWorldConfig {
playerDeathExpDropMax = getInt("gameplay-mechanics.player.exp-dropped-on-death.maximum", playerDeathExpDropMax);
teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder);
totemOfUndyingWorksInInventory = getBoolean("gameplay-mechanics.player.totem-of-undying-works-in-inventory", totemOfUndyingWorksInInventory);

View File

@@ -59,7 +59,7 @@ index 5802d5a43c5f2dc569130cc70c4ba519c471abc0..ca8b7dcd2a93b41dfd22f6f112dcac1b
this.navigation.stop();
this.setTarget((LivingEntity) null);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index f788114ef17fec22d329029b62d52137cc4d006b..0a55f019ed05d23e9bd2ab0d06a6d76bdac269af 100644
index 40d6acb831aef34c0a92d0c992687264faa769f5..322fcb6a90f1fec9056706ef1c2e589fc1164803 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -117,6 +117,7 @@ public class PurpurWorldConfig {

View File

@@ -53,10 +53,10 @@ index 72122333cf0247e4a8511ac633487f170b89586c..02f1d0418395b100cabfad7294466aaa
this.remove(Entity.RemovalReason.KILLED, EntityRemoveEvent.Cause.DEATH); // CraftBukkit - add Bukkit remove cause
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 0a55f019ed05d23e9bd2ab0d06a6d76bdac269af..6a87048aab53067ce8b211f9d48165d79e1cb41a 100644
index 322fcb6a90f1fec9056706ef1c2e589fc1164803..83aacdfed9b115917f42cd918d0971dfcf13a3ef 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -448,6 +448,43 @@ public class PurpurWorldConfig {
@@ -450,6 +450,43 @@ public class PurpurWorldConfig {
dispenserPlaceAnvils = getBoolean("blocks.dispenser.place-anvils", dispenserPlaceAnvils);
}

View File

@@ -29,10 +29,10 @@ index 9f232d8e1dc5adf3cc3adc5af7fd42c5e78ed48d..962ab1025f42734c11e3ce4c792d1795
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 6a87048aab53067ce8b211f9d48165d79e1cb41a..34e2383c709c991c0ab9f24a8dd3dfe52ba186fd 100644
index 83aacdfed9b115917f42cd918d0971dfcf13a3ef..1e0ccfdb75ddd3805d2639f8ddbce9c9d9aab549 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -955,6 +955,7 @@ public class PurpurWorldConfig {
@@ -957,6 +957,7 @@ public class PurpurWorldConfig {
public boolean enderDragonAlwaysDropsFullExp = false;
public boolean enderDragonBypassMobGriefing = false;
public boolean enderDragonTakeDamageFromWater = false;
@@ -40,7 +40,7 @@ index 6a87048aab53067ce8b211f9d48165d79e1cb41a..34e2383c709c991c0ab9f24a8dd3dfe5
private void enderDragonSettings() {
enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable);
enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater);
@@ -973,6 +974,7 @@ public class PurpurWorldConfig {
@@ -975,6 +976,7 @@ public class PurpurWorldConfig {
enderDragonAlwaysDropsFullExp = getBoolean("mobs.ender_dragon.always-drop-full-exp", enderDragonAlwaysDropsFullExp);
enderDragonBypassMobGriefing = getBoolean("mobs.ender_dragon.bypass-mob-griefing", enderDragonBypassMobGriefing);
enderDragonTakeDamageFromWater = getBoolean("mobs.ender_dragon.takes-damage-from-water", enderDragonTakeDamageFromWater);
@@ -48,7 +48,7 @@ index 6a87048aab53067ce8b211f9d48165d79e1cb41a..34e2383c709c991c0ab9f24a8dd3dfe5
}
public boolean endermanRidable = false;
@@ -2164,6 +2166,7 @@ public class PurpurWorldConfig {
@@ -2166,6 +2168,7 @@ public class PurpurWorldConfig {
public int witherHealthRegenDelay = 20;
public boolean witherBypassMobGriefing = false;
public boolean witherTakeDamageFromWater = false;
@@ -56,7 +56,7 @@ index 6a87048aab53067ce8b211f9d48165d79e1cb41a..34e2383c709c991c0ab9f24a8dd3dfe5
private void witherSettings() {
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
@@ -2183,6 +2186,7 @@ public class PurpurWorldConfig {
@@ -2185,6 +2188,7 @@ public class PurpurWorldConfig {
witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay);
witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing);
witherTakeDamageFromWater = getBoolean("mobs.wither.takes-damage-from-water", witherTakeDamageFromWater);

View File

@@ -149,7 +149,7 @@ index 4e5e04915f912d873eb5c86037e6b78c82c2ca53..a601f18f94e80b16ae22d077a405d685
public static String serverModName = io.papermc.paper.ServerBuildInfo.buildInfo().brandName();
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 34e2383c709c991c0ab9f24a8dd3dfe52ba186fd..f0519a282a461a92aeecf20d2aa403c791b9fb48 100644
index 1e0ccfdb75ddd3805d2639f8ddbce9c9d9aab549..edf8678ee1cb8c073fba2b0d4f333c8e4658dc8c 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -182,6 +182,10 @@ public class PurpurWorldConfig {

View File

@@ -35,21 +35,21 @@ index 897e9da03a4e1cc0cac5da542c9e695f49ae60e4..583e0cfc3478df74188526a10494d81b
float f1 = amount;
boolean flag = amount > 0.0F && this.isDamageSourceBlocked(source); // Copied from below
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index f0519a282a461a92aeecf20d2aa403c791b9fb48..61453cf17d846a1c9cd09b2f10f6c9143d347da7 100644
index edf8678ee1cb8c073fba2b0d4f333c8e4658dc8c..63bf4b2c8f997467a8d916a4fe4fd2bebbab5674 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -328,6 +328,7 @@ public class PurpurWorldConfig {
public int playerDeathExpDropMax = 100;
@@ -329,6 +329,7 @@ public class PurpurWorldConfig {
public boolean teleportIfOutsideBorder = false;
public boolean totemOfUndyingWorksInInventory = false;
public boolean playerFixStuckPortal = false;
+ public boolean creativeOnePunch = false;
private void playerSettings() {
if (PurpurConfig.version < 19) {
boolean oldVal = getBoolean("gameplay-mechanics.player.idle-timeout.mods-target", idleTimeoutTargetPlayer);
@@ -343,6 +344,7 @@ public class PurpurWorldConfig {
playerDeathExpDropMax = getInt("gameplay-mechanics.player.exp-dropped-on-death.maximum", playerDeathExpDropMax);
@@ -345,6 +346,7 @@ public class PurpurWorldConfig {
teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder);
totemOfUndyingWorksInInventory = getBoolean("gameplay-mechanics.player.totem-of-undying-works-in-inventory", totemOfUndyingWorksInInventory);
playerFixStuckPortal = getBoolean("gameplay-mechanics.player.fix-stuck-in-portal", playerFixStuckPortal);
+ creativeOnePunch = getBoolean("gameplay-mechanics.player.one-punch-in-creative", creativeOnePunch);
}

View File

@@ -43,7 +43,7 @@ index 20a91d798d31a71b3c05efa2cc5bda55494e26cc..fc62754f93bd11a10c28b8b7b116e9ff
// Paper end - PlayerLaunchProjectileEvent
if (user instanceof net.minecraft.server.level.ServerPlayer) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 61453cf17d846a1c9cd09b2f10f6c9143d347da7..5906f75dbb1b7969fd7807feafa9d23e82021c95 100644
index 63bf4b2c8f997467a8d916a4fe4fd2bebbab5674..7b0895c7e49d1b66564ace8afdbe501b78f4e8e7 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -186,6 +186,10 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Config to ignore nearby mobs when sleeping
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index ae8235ed2a817776d052173c94a54ede9d2d275e..b93c42ba349e6315edfb3727142871231c232c68 100644
index cf48fb43c2a648077f7a093c3bc550de659f6ece..e7b07482d7a00bc1704b79b102cc1ad36fb06368 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1528,7 +1528,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
@@ -1529,7 +1529,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
return entitymonster.isPreventingPlayerRest(this);
});
@@ -18,20 +18,20 @@ index ae8235ed2a817776d052173c94a54ede9d2d275e..b93c42ba349e6315edfb372714287123
}
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 5906f75dbb1b7969fd7807feafa9d23e82021c95..7db72a10132ffdd894bac3f2db67c3ca22a835af 100644
index 7b0895c7e49d1b66564ace8afdbe501b78f4e8e7..5f93f100b7be42c0819c94862d960f9232040f55 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -337,6 +337,7 @@ public class PurpurWorldConfig {
public boolean teleportIfOutsideBorder = false;
@@ -338,6 +338,7 @@ public class PurpurWorldConfig {
public boolean totemOfUndyingWorksInInventory = false;
public boolean playerFixStuckPortal = false;
public boolean creativeOnePunch = false;
+ public boolean playerSleepNearMonsters = false;
private void playerSettings() {
if (PurpurConfig.version < 19) {
boolean oldVal = getBoolean("gameplay-mechanics.player.idle-timeout.mods-target", idleTimeoutTargetPlayer);
@@ -353,6 +354,7 @@ public class PurpurWorldConfig {
teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder);
@@ -355,6 +356,7 @@ public class PurpurWorldConfig {
totemOfUndyingWorksInInventory = getBoolean("gameplay-mechanics.player.totem-of-undying-works-in-inventory", totemOfUndyingWorksInInventory);
playerFixStuckPortal = getBoolean("gameplay-mechanics.player.fix-stuck-in-portal", playerFixStuckPortal);
creativeOnePunch = getBoolean("gameplay-mechanics.player.one-punch-in-creative", creativeOnePunch);
+ playerSleepNearMonsters = getBoolean("gameplay-mechanics.player.sleep-ignore-nearby-mobs", playerSleepNearMonsters);
}

View File

@@ -18,10 +18,10 @@ index 75d462d7f55dedfa62844549fa6690a4a652bd1f..cc9da5134ece550e8a1902e90282090f
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 7db72a10132ffdd894bac3f2db67c3ca22a835af..c90b57eec4e6a6d1fbe37f291bd8423aa455275e 100644
index 5f93f100b7be42c0819c94862d960f9232040f55..bf7e744a23d48b9931eab6fd5e3a835c979046e9 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1005,6 +1005,8 @@ public class PurpurWorldConfig {
@@ -1007,6 +1007,8 @@ public class PurpurWorldConfig {
public boolean endermanDespawnEvenWithBlock = false;
public boolean endermanBypassMobGriefing = false;
public boolean endermanTakeDamageFromWater = true;
@@ -30,7 +30,7 @@ index 7db72a10132ffdd894bac3f2db67c3ca22a835af..c90b57eec4e6a6d1fbe37f291bd8423a
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -1014,11 +1016,17 @@ public class PurpurWorldConfig {
@@ -1016,11 +1018,17 @@ public class PurpurWorldConfig {
set("mobs.enderman.attributes.max-health", null);
set("mobs.enderman.attributes.max_health", oldValue);
}

View File

@@ -20,10 +20,10 @@ index cc9da5134ece550e8a1902e90282090f05818fd8..f2e21c9d3cefb635c4eb583ac9355b46
} else {
Vec3 vec3d = player.getViewVector(1.0F).normalize();
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c90b57eec4e6a6d1fbe37f291bd8423aa455275e..3303e0015b156c54d2a4721bab46564cb31bf6aa 100644
index bf7e744a23d48b9931eab6fd5e3a835c979046e9..917190e2ddfdd4a0fb391100dff94abd988ef3b3 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1007,6 +1007,8 @@ public class PurpurWorldConfig {
@@ -1009,6 +1009,8 @@ public class PurpurWorldConfig {
public boolean endermanTakeDamageFromWater = true;
public boolean endermanAggroEndermites = true;
public boolean endermanAggroEndermitesOnlyIfPlayerSpawned = false;
@@ -32,7 +32,7 @@ index c90b57eec4e6a6d1fbe37f291bd8423aa455275e..3303e0015b156c54d2a4721bab46564c
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -1027,6 +1029,8 @@ public class PurpurWorldConfig {
@@ -1029,6 +1031,8 @@ public class PurpurWorldConfig {
endermanTakeDamageFromWater = getBoolean("mobs.enderman.takes-damage-from-water", endermanTakeDamageFromWater);
endermanAggroEndermites = getBoolean("mobs.enderman.aggressive-towards-endermites", endermanAggroEndermites);
endermanAggroEndermitesOnlyIfPlayerSpawned = getBoolean("mobs.enderman.aggressive-towards-endermites-only-spawned-by-player-thrown-ender-pearls", endermanAggroEndermitesOnlyIfPlayerSpawned);

View File

@@ -36,7 +36,7 @@ index 84623c632d8c2f0fa7ec939c711316d757117d23..1851035b9fdcc076442d0699567a3b02
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 3303e0015b156c54d2a4721bab46564cb31bf6aa..b7dd164763232edaeeb12a1f5011daeef3b5cbda 100644
index 917190e2ddfdd4a0fb391100dff94abd988ef3b3..d3d030349ddc538e7c552c0bf63e4ff153c823b5 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -127,6 +127,7 @@ public class PurpurWorldConfig {

View File

@@ -32,10 +32,10 @@ index 96f1eba4a356e131a8f3c689bedc9eb8821e1a72..8edfc34a17d8c05cfa2928738306c1ab
this.caravanHead.caravanTail = this;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index b7dd164763232edaeeb12a1f5011daeef3b5cbda..c5e8990b2cd6cda6f5aca39086c096097f111425 100644
index d3d030349ddc538e7c552c0bf63e4ff153c823b5..33532fe272fee29e3d2be2f0715c1f7f84b5e896 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1339,6 +1339,7 @@ public class PurpurWorldConfig {
@@ -1341,6 +1341,7 @@ public class PurpurWorldConfig {
public double llamaMovementSpeedMax = 0.175D;
public int llamaBreedingTicks = 6000;
public boolean llamaTakeDamageFromWater = false;
@@ -43,7 +43,7 @@ index b7dd164763232edaeeb12a1f5011daeef3b5cbda..c5e8990b2cd6cda6f5aca39086c09609
private void llamaSettings() {
llamaRidable = getBoolean("mobs.llama.ridable", llamaRidable);
llamaRidableInWater = getBoolean("mobs.llama.ridable-in-water", llamaRidableInWater);
@@ -1358,6 +1359,7 @@ public class PurpurWorldConfig {
@@ -1360,6 +1361,7 @@ public class PurpurWorldConfig {
llamaMovementSpeedMax = getDouble("mobs.llama.attributes.movement_speed.max", llamaMovementSpeedMax);
llamaBreedingTicks = getInt("mobs.llama.breeding-delay-ticks", llamaBreedingTicks);
llamaTakeDamageFromWater = getBoolean("mobs.llama.takes-damage-from-water", llamaTakeDamageFromWater);

View File

@@ -50,10 +50,10 @@ index d68897b167918ba1e28b083b665ce70aaec437df..a194cc234e24094da0cbee8c6c4fe123
private void spawnLingeringCloud() {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c5e8990b2cd6cda6f5aca39086c096097f111425..66e933fb901e049c3ce54955be0bfbff4d41d1af 100644
index 33532fe272fee29e3d2be2f0715c1f7f84b5e896..b491ad49c6cb0a180a06c5d8786691764350caf8 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -859,6 +859,7 @@ public class PurpurWorldConfig {
@@ -861,6 +861,7 @@ public class PurpurWorldConfig {
public boolean creeperAllowGriefing = true;
public boolean creeperBypassMobGriefing = false;
public boolean creeperTakeDamageFromWater = false;
@@ -61,7 +61,7 @@ index c5e8990b2cd6cda6f5aca39086c096097f111425..66e933fb901e049c3ce54955be0bfbff
private void creeperSettings() {
creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable);
creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater);
@@ -873,6 +874,7 @@ public class PurpurWorldConfig {
@@ -875,6 +876,7 @@ public class PurpurWorldConfig {
creeperAllowGriefing = getBoolean("mobs.creeper.allow-griefing", creeperAllowGriefing);
creeperBypassMobGriefing = getBoolean("mobs.creeper.bypass-mob-griefing", creeperBypassMobGriefing);
creeperTakeDamageFromWater = getBoolean("mobs.creeper.takes-damage-from-water", creeperTakeDamageFromWater);

View File

@@ -31,10 +31,10 @@ index 2af4c365743b2956939335512f74e0a1d84298f7..a69e7e8da81bd13578d230cc1e3f0f90
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 66e933fb901e049c3ce54955be0bfbff4d41d1af..de99247dcb87c0b06c98d63bbc3800a8e37fb45d 100644
index b491ad49c6cb0a180a06c5d8786691764350caf8..371112ae0f7b38ef818b3fa4d3549abcd0772834 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1711,6 +1711,7 @@ public class PurpurWorldConfig {
@@ -1713,6 +1713,7 @@ public class PurpurWorldConfig {
public double ravagerMaxHealth = 100.0D;
public boolean ravagerBypassMobGriefing = false;
public boolean ravagerTakeDamageFromWater = false;
@@ -42,7 +42,7 @@ index 66e933fb901e049c3ce54955be0bfbff4d41d1af..de99247dcb87c0b06c98d63bbc3800a8
private void ravagerSettings() {
ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable);
ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater);
@@ -1723,6 +1724,23 @@ public class PurpurWorldConfig {
@@ -1725,6 +1726,23 @@ public class PurpurWorldConfig {
ravagerMaxHealth = getDouble("mobs.ravager.attributes.max_health", ravagerMaxHealth);
ravagerBypassMobGriefing = getBoolean("mobs.ravager.bypass-mob-griefing", ravagerBypassMobGriefing);
ravagerTakeDamageFromWater = getBoolean("mobs.ravager.takes-damage-from-water", ravagerTakeDamageFromWater);

View File

@@ -87,10 +87,10 @@ index d3d12f9114173f4971f95d7ef895a4374705bd3f..f34159f8d6c51af2341bf49db0d6d6f0
protected InteractionResult useWithoutItem(BlockState state, Level world, BlockPos pos, Player player, BlockHitResult hit) {
int i = (Integer) state.getValue(ComposterBlock.LEVEL);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index de99247dcb87c0b06c98d63bbc3800a8e37fb45d..c5a249fc181a56db861c9ed416dc6b870c532cf2 100644
index 371112ae0f7b38ef818b3fa4d3549abcd0772834..a28b84a7364c9c716b96061e8ff3acb79c672ffc 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -463,6 +463,11 @@ public class PurpurWorldConfig {
@@ -465,6 +465,11 @@ public class PurpurWorldConfig {
chestOpenWithBlockOnTop = getBoolean("blocks.chest.open-with-solid-block-on-top", chestOpenWithBlockOnTop);
}

View File

@@ -18,19 +18,19 @@ index ce843a15043fb8bb40d96351ee00f0440d0a53d4..e8e5704937350cc65ae24980c56a3a89
j = this.levelData.getDayTime() + 24000L;
TimeSkipEvent event = new TimeSkipEvent(this.getWorld(), TimeSkipEvent.SkipReason.NIGHT_SKIP, (j - j % 24000L) - this.getDayTime());
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c5a249fc181a56db861c9ed416dc6b870c532cf2..9c1dfc4e0c6511f1d374c535e43fdb96d4728b16 100644
index a28b84a7364c9c716b96061e8ff3acb79c672ffc..98999579180465597986bf97da3bda8fca8ec835 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -340,6 +340,7 @@ public class PurpurWorldConfig {
public boolean totemOfUndyingWorksInInventory = false;
@@ -341,6 +341,7 @@ public class PurpurWorldConfig {
public boolean playerFixStuckPortal = false;
public boolean creativeOnePunch = false;
public boolean playerSleepNearMonsters = false;
+ public boolean playersSkipNight = true;
private void playerSettings() {
if (PurpurConfig.version < 19) {
boolean oldVal = getBoolean("gameplay-mechanics.player.idle-timeout.mods-target", idleTimeoutTargetPlayer);
@@ -357,6 +358,7 @@ public class PurpurWorldConfig {
totemOfUndyingWorksInInventory = getBoolean("gameplay-mechanics.player.totem-of-undying-works-in-inventory", totemOfUndyingWorksInInventory);
@@ -359,6 +360,7 @@ public class PurpurWorldConfig {
playerFixStuckPortal = getBoolean("gameplay-mechanics.player.fix-stuck-in-portal", playerFixStuckPortal);
creativeOnePunch = getBoolean("gameplay-mechanics.player.one-punch-in-creative", creativeOnePunch);
playerSleepNearMonsters = getBoolean("gameplay-mechanics.player.sleep-ignore-nearby-mobs", playerSleepNearMonsters);
+ playersSkipNight = getBoolean("gameplay-mechanics.player.can-skip-night", playersSkipNight);

View File

@@ -32,10 +32,10 @@ index 05c63eb6cf8a7067105c58d244c7cc27d6bf1125..7c2d5d28f8c2aba2cd8255a4aef22247
return InteractionResult.sidedSuccess(this.level().isClientSide);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 9c1dfc4e0c6511f1d374c535e43fdb96d4728b16..57a22d68a94b2c55d56e1b3a884571a7f0fd14b9 100644
index 98999579180465597986bf97da3bda8fca8ec835..4b69dd2ec74855ef91c5a6d6ce0326d330eaf66a 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2131,6 +2131,7 @@ public class PurpurWorldConfig {
@@ -2133,6 +2133,7 @@ public class PurpurWorldConfig {
public boolean villagerClericFarmersThrowWarts = true;
public boolean villagerBypassMobGriefing = false;
public boolean villagerTakeDamageFromWater = false;
@@ -43,7 +43,7 @@ index 9c1dfc4e0c6511f1d374c535e43fdb96d4728b16..57a22d68a94b2c55d56e1b3a884571a7
private void villagerSettings() {
villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable);
villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater);
@@ -2149,6 +2150,7 @@ public class PurpurWorldConfig {
@@ -2151,6 +2152,7 @@ public class PurpurWorldConfig {
villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts);
villagerBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerBypassMobGriefing);
villagerTakeDamageFromWater = getBoolean("mobs.villager.takes-damage-from-water", villagerTakeDamageFromWater);
@@ -51,7 +51,7 @@ index 9c1dfc4e0c6511f1d374c535e43fdb96d4728b16..57a22d68a94b2c55d56e1b3a884571a7
}
public boolean vindicatorRidable = false;
@@ -2178,6 +2180,7 @@ public class PurpurWorldConfig {
@@ -2180,6 +2182,7 @@ public class PurpurWorldConfig {
public boolean wanderingTraderFollowEmeraldBlock = false;
public boolean wanderingTraderCanBeLeashed = false;
public boolean wanderingTraderTakeDamageFromWater = false;
@@ -59,7 +59,7 @@ index 9c1dfc4e0c6511f1d374c535e43fdb96d4728b16..57a22d68a94b2c55d56e1b3a884571a7
private void wanderingTraderSettings() {
wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable);
wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater);
@@ -2191,6 +2194,7 @@ public class PurpurWorldConfig {
@@ -2193,6 +2196,7 @@ public class PurpurWorldConfig {
wanderingTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", wanderingTraderFollowEmeraldBlock);
wanderingTraderCanBeLeashed = getBoolean("mobs.wandering_trader.can-be-leashed", wanderingTraderCanBeLeashed);
wanderingTraderTakeDamageFromWater = getBoolean("mobs.wandering_trader.takes-damage-from-water", wanderingTraderTakeDamageFromWater);

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Drowning Settings
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index 10aaa05948839d43933a2de32bfc6fe54f61fbff..a657b37c56bd656e81c71ae47d6cf7625d282117 100644
index 240ffb9d697f23b4080d48ec3b10de713a84a511..09ca45c5b369195b24e5f574217f709cae932137 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -3299,7 +3299,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
@@ -3302,7 +3302,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess
}
public int getMaxAirSupply() {
@@ -40,7 +40,7 @@ index 583e0cfc3478df74188526a10494d81ba4303054..d76c5014ad03471874f945f58c8eb7a5
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 57a22d68a94b2c55d56e1b3a884571a7f0fd14b9..aded3ca8095e2bdaa7cbcf736c2ab62edfac7f78 100644
index 4b69dd2ec74855ef91c5a6d6ce0326d330eaf66a..d5d0f7f4bba99b96b9fe7525eb3d50506f4042c9 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -160,6 +160,15 @@ public class PurpurWorldConfig {

View File

@@ -47,10 +47,10 @@ index fa29eb15934b3dad171d27c21d99b2451cfe553b..ba4aa69425d796d306791ea193f9c6b2
+ // Purpur end
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index aded3ca8095e2bdaa7cbcf736c2ab62edfac7f78..3df3e503fb0dc4084143af2bd9a93170be409a4b 100644
index d5d0f7f4bba99b96b9fe7525eb3d50506f4042c9..db94fb6924b7e140462aca78e70e56808fe47830 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -584,6 +584,11 @@ public class PurpurWorldConfig {
@@ -586,6 +586,11 @@ public class PurpurWorldConfig {
}
}

View File

@@ -24,10 +24,10 @@ index 759839e912c54598b257ad738481364940f88a18..e60e6b3e5ae5a468cfe649ed2222412f
return false;
} else {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 3df3e503fb0dc4084143af2bd9a93170be409a4b..65e75fa986fe041e958281b291d36440efb6f9f9 100644
index db94fb6924b7e140462aca78e70e56808fe47830..ecd3542acf269cee6557034417f8e80c551daf02 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -549,6 +549,13 @@ public class PurpurWorldConfig {
@@ -551,6 +551,13 @@ public class PurpurWorldConfig {
furnaceUseLavaFromUnderneath = getBoolean("blocks.furnace.use-lava-from-underneath", furnaceUseLavaFromUnderneath);
}

View File

@@ -17,7 +17,7 @@ index ea3cad6c9cc561b225cd41f04bd204c99ecd66ec..ad1ec2578fa428baa6b172c44b6c17e5
public ArmorStand(Level world, double x, double y, double z) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 65e75fa986fe041e958281b291d36440efb6f9f9..7b2f6a64865168094164eb22938c6c07228dce0e 100644
index ecd3542acf269cee6557034417f8e80c551daf02..ce36b50d9627cf5e4da3b1e7c823255d60323385 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -102,6 +102,7 @@ public class PurpurWorldConfig {

View File

@@ -82,10 +82,10 @@ index 6dd75bc722f9c20b4869e6353115c3b02dd79f99..dfaf82f5b0180cf08c4125347867d37a
+ // Purpur end
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 7b2f6a64865168094164eb22938c6c07228dce0e..c3bd56715c119068e6735abcd60971679c5e0145 100644
index ce36b50d9627cf5e4da3b1e7c823255d60323385..09a4f67a3f998592b00fb4bee10a3dc5ca00c243 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -488,6 +488,16 @@ public class PurpurWorldConfig {
@@ -490,6 +490,16 @@ public class PurpurWorldConfig {
dispenserPlaceAnvils = getBoolean("blocks.dispenser.place-anvils", dispenserPlaceAnvils);
}

View File

@@ -21,10 +21,10 @@ index 902825ec9ea05f4418b45f56a008d73f217bd178..a676ccfa6b02e8986df6f6a2e04cbb06
int i = aenumdirection.length;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c3bd56715c119068e6735abcd60971679c5e0145..6f4865bb24761cdc5732253ab6b32606fa8fd681 100644
index 09a4f67a3f998592b00fb4bee10a3dc5ca00c243..ec593c9d86ac6c1cd60532620806a16d184b182b 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -613,6 +613,13 @@ public class PurpurWorldConfig {
@@ -615,6 +615,13 @@ public class PurpurWorldConfig {
spawnerDeactivateByRedstone = getBoolean("blocks.spawner.deactivate-by-redstone", spawnerDeactivateByRedstone);
}

View File

@@ -96,10 +96,10 @@ index 4934bae61114b49a9f8d0ed044fbb881210df32a..1be074074283f12543ac771ac9201580
entitythrowntrident.pickup = AbstractArrow.Pickup.CREATIVE_ONLY;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 6f4865bb24761cdc5732253ab6b32606fa8fd681..8ccc5c29e72b2f03449c82f9aeed0a3bb451e836 100644
index ec593c9d86ac6c1cd60532620806a16d184b182b..045a0dee051d68ae3764da72e66e5dd1a4893a25 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -438,6 +438,23 @@ public class PurpurWorldConfig {
@@ -440,6 +440,23 @@ public class PurpurWorldConfig {
//}
}

View File

@@ -18,10 +18,10 @@ index 9603d8c84ff483030dc08e82d3579b89e5c1f6e9..8fc65c32a3c6e6842a76b36f45e1b1c2
} else {
int j = pos.getX();
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 8ccc5c29e72b2f03449c82f9aeed0a3bb451e836..a6c2d158490a7972d821cda0516eb9659ccd621a 100644
index 045a0dee051d68ae3764da72e66e5dd1a4893a25..3b257b75bd278a3adc14102177ba5ba6988cc9cf 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -599,6 +599,11 @@ public class PurpurWorldConfig {
@@ -601,6 +601,11 @@ public class PurpurWorldConfig {
powderSnowBypassMobGriefing = getBoolean("blocks.powder_snow.bypass-mob-griefing", powderSnowBypassMobGriefing);
}

View File

@@ -31,10 +31,10 @@ index caa22afb0781671b901c23ebcc89e5bb0d2bd615..259f7e162968714e2959b199c7b1ab84
pos = pos.below();
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index a6c2d158490a7972d821cda0516eb9659ccd621a..b15c74a0c1c4ce623cdc4eb15300db6b8cc24714 100644
index 3b257b75bd278a3adc14102177ba5ba6988cc9cf..e55977b2f830d6165bb70e1b861e0bec2c9efe40 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1655,6 +1655,7 @@ public class PurpurWorldConfig {
@@ -1657,6 +1657,7 @@ public class PurpurWorldConfig {
public double piglinMaxHealth = 16.0D;
public boolean piglinBypassMobGriefing = false;
public boolean piglinTakeDamageFromWater = false;
@@ -42,7 +42,7 @@ index a6c2d158490a7972d821cda0516eb9659ccd621a..b15c74a0c1c4ce623cdc4eb15300db6b
private void piglinSettings() {
piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable);
piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater);
@@ -1667,6 +1668,7 @@ public class PurpurWorldConfig {
@@ -1669,6 +1670,7 @@ public class PurpurWorldConfig {
piglinMaxHealth = getDouble("mobs.piglin.attributes.max_health", piglinMaxHealth);
piglinBypassMobGriefing = getBoolean("mobs.piglin.bypass-mob-griefing", piglinBypassMobGriefing);
piglinTakeDamageFromWater = getBoolean("mobs.piglin.takes-damage-from-water", piglinTakeDamageFromWater);

View File

@@ -18,10 +18,10 @@ index e472df057d087fe46bd40b798c050ed6e38a283c..999453409c19abf7f5b5c2dc39969985
if (!event.isCancelled()) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index b15c74a0c1c4ce623cdc4eb15300db6b8cc24714..b405cdee56f4cbacca3be2e0810799f8e7620724 100644
index e55977b2f830d6165bb70e1b861e0bec2c9efe40..53522994b7f55158cec339a1db67853b014c7453 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2298,6 +2298,7 @@ public class PurpurWorldConfig {
@@ -2300,6 +2300,7 @@ public class PurpurWorldConfig {
public boolean witherBypassMobGriefing = false;
public boolean witherTakeDamageFromWater = false;
public boolean witherCanRideVehicles = false;
@@ -29,7 +29,7 @@ index b15c74a0c1c4ce623cdc4eb15300db6b8cc24714..b405cdee56f4cbacca3be2e0810799f8
private void witherSettings() {
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
@@ -2318,6 +2319,7 @@ public class PurpurWorldConfig {
@@ -2320,6 +2321,7 @@ public class PurpurWorldConfig {
witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing);
witherTakeDamageFromWater = getBoolean("mobs.wither.takes-damage-from-water", witherTakeDamageFromWater);
witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles);

View File

@@ -36,10 +36,10 @@ index 205e223c356634bd6bc6bd58c6f0b7fda61a6f5f..bea05cb928d540a2f19b51bb7352d032
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index b405cdee56f4cbacca3be2e0810799f8e7620724..a317b16bef435a38b0ab3ae1e49e9140453d5643 100644
index 53522994b7f55158cec339a1db67853b014c7453..e19c693460eb75e31f19e3759cde7228ef4e8662 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -594,6 +594,11 @@ public class PurpurWorldConfig {
@@ -596,6 +596,11 @@ public class PurpurWorldConfig {
lavaSpeedNotNether = getInt("blocks.lava.speed.not-nether", lavaSpeedNotNether);
}

View File

@@ -17,7 +17,7 @@ index b286b157bba78021efa18f01bc91b067b0bd5874..fc87e3cfff1221a6cbaf3463ce972870
// Paper end
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index b93c42ba349e6315edfb3727142871231c232c68..863e13a492488005b8d3ce134d2f45975c13d682 100644
index e7b07482d7a00bc1704b79b102cc1ad36fb06368..f7402093e00e2d0f0fdd7ce81b91ae59ddae0005 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1081,6 +1081,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple

View File

@@ -28,7 +28,7 @@ index d76c5014ad03471874f945f58c8eb7a553739c94..aa89957fd6b7fdf75ae4a98747f2032c
return d0;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index a317b16bef435a38b0ab3ae1e49e9140453d5643..1872c484ca190317a0443e07e975a557fddca478 100644
index e19c693460eb75e31f19e3759cde7228ef4e8662..db71ad4e411d088e0de410ec726e7c2822a34c7b 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -130,6 +130,7 @@ public class PurpurWorldConfig {

View File

@@ -21,10 +21,10 @@ index a194cc234e24094da0cbee8c6c4fe123c9b100be..904c3af4809877165a0981f76572d7f0
// CraftBukkit end
this.dead = true;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 1872c484ca190317a0443e07e975a557fddca478..5c417aff4c96b9c94043fc28d6fa2ea2b03d856b 100644
index db71ad4e411d088e0de410ec726e7c2822a34c7b..e082cc14623db737e8899642ccc86ffa3c428712 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -936,6 +936,7 @@ public class PurpurWorldConfig {
@@ -938,6 +938,7 @@ public class PurpurWorldConfig {
public boolean creeperBypassMobGriefing = false;
public boolean creeperTakeDamageFromWater = false;
public boolean creeperExplodeWhenKilled = false;
@@ -32,7 +32,7 @@ index 1872c484ca190317a0443e07e975a557fddca478..5c417aff4c96b9c94043fc28d6fa2ea2
private void creeperSettings() {
creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable);
creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater);
@@ -951,6 +952,7 @@ public class PurpurWorldConfig {
@@ -953,6 +954,7 @@ public class PurpurWorldConfig {
creeperBypassMobGriefing = getBoolean("mobs.creeper.bypass-mob-griefing", creeperBypassMobGriefing);
creeperTakeDamageFromWater = getBoolean("mobs.creeper.takes-damage-from-water", creeperTakeDamageFromWater);
creeperExplodeWhenKilled = getBoolean("mobs.creeper.explode-when-killed", creeperExplodeWhenKilled);

View File

@@ -25,10 +25,10 @@ index 65232a2cb23eb4757abdc8741d55e0faccf4c0bb..a820bbbe89dee9e6de2e7d5f72f43d1d
}
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 5c417aff4c96b9c94043fc28d6fa2ea2b03d856b..d974b829eb313ba45f5c6765aa26edf0a31b5d83 100644
index e082cc14623db737e8899642ccc86ffa3c428712..38a2ffbe258fac97b4b740d395683f0b87cad234 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1394,6 +1394,8 @@ public class PurpurWorldConfig {
@@ -1396,6 +1396,8 @@ public class PurpurWorldConfig {
public boolean ironGolemCanSwim = false;
public double ironGolemMaxHealth = 100.0D;
public boolean ironGolemTakeDamageFromWater = false;
@@ -37,7 +37,7 @@ index 5c417aff4c96b9c94043fc28d6fa2ea2b03d856b..d974b829eb313ba45f5c6765aa26edf0
private void ironGolemSettings() {
ironGolemRidable = getBoolean("mobs.iron_golem.ridable", ironGolemRidable);
ironGolemRidableInWater = getBoolean("mobs.iron_golem.ridable-in-water", ironGolemRidableInWater);
@@ -1406,6 +1408,8 @@ public class PurpurWorldConfig {
@@ -1408,6 +1410,8 @@ public class PurpurWorldConfig {
}
ironGolemMaxHealth = getDouble("mobs.iron_golem.attributes.max_health", ironGolemMaxHealth);
ironGolemTakeDamageFromWater = getBoolean("mobs.iron_golem.takes-damage-from-water", ironGolemTakeDamageFromWater);

View File

@@ -50,10 +50,10 @@ index c4aa5b254ad2a1b82f8f738ebf64a5a985857b36..e486b3a73277582bc9c63b6f8ed4dfd9
@Nullable
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index d974b829eb313ba45f5c6765aa26edf0a31b5d83..4cefd627e337a3ee4f45e94930a24c9e10960f17 100644
index 38a2ffbe258fac97b4b740d395683f0b87cad234..8ab4f37ca6b228964c6e640254d2aed90fb1988f 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1564,6 +1564,7 @@ public class PurpurWorldConfig {
@@ -1566,6 +1566,7 @@ public class PurpurWorldConfig {
public double parrotMaxY = 320D;
public double parrotMaxHealth = 6.0D;
public boolean parrotTakeDamageFromWater = false;
@@ -61,7 +61,7 @@ index d974b829eb313ba45f5c6765aa26edf0a31b5d83..4cefd627e337a3ee4f45e94930a24c9e
private void parrotSettings() {
parrotRidable = getBoolean("mobs.parrot.ridable", parrotRidable);
parrotRidableInWater = getBoolean("mobs.parrot.ridable-in-water", parrotRidableInWater);
@@ -1576,6 +1577,7 @@ public class PurpurWorldConfig {
@@ -1578,6 +1579,7 @@ public class PurpurWorldConfig {
}
parrotMaxHealth = getDouble("mobs.parrot.attributes.max_health", parrotMaxHealth);
parrotTakeDamageFromWater = getBoolean("mobs.parrot.takes-damage-from-water", parrotTakeDamageFromWater);

View File

@@ -18,7 +18,7 @@ index 9ad276a73cba04edbe48f828031a15727d768a5b..337bd2011c471361653c317004f8380c
Vec3 vec3d5 = this.getDeltaMovement();
double d21 = vec3d5.x;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 4cefd627e337a3ee4f45e94930a24c9e10960f17..f29148f28f18df231a7453a62069389820eb4c1d 100644
index 8ab4f37ca6b228964c6e640254d2aed90fb1988f..f1afdde2d978ca385e00c39d723378a903c99162 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -260,6 +260,7 @@ public class PurpurWorldConfig {

View File

@@ -18,10 +18,10 @@ index 2dafba96353c208b89da7b65c0d56a51e00547c3..c582b5be87e93a0ea231bb6ce47bd10c
float f3 = f + f1;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index f29148f28f18df231a7453a62069389820eb4c1d..3bc215486470858b85e1e20aeb8c53e1c1c6bd18 100644
index f1afdde2d978ca385e00c39d723378a903c99162..6b860a675c38baa646ea0b1ddcff27c6162fcef1 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -356,6 +356,7 @@ public class PurpurWorldConfig {
@@ -357,6 +357,7 @@ public class PurpurWorldConfig {
public boolean creativeOnePunch = false;
public boolean playerSleepNearMonsters = false;
public boolean playersSkipNight = true;
@@ -29,7 +29,7 @@ index f29148f28f18df231a7453a62069389820eb4c1d..3bc215486470858b85e1e20aeb8c53e1
private void playerSettings() {
if (PurpurConfig.version < 19) {
boolean oldVal = getBoolean("gameplay-mechanics.player.idle-timeout.mods-target", idleTimeoutTargetPlayer);
@@ -374,6 +375,7 @@ public class PurpurWorldConfig {
@@ -376,6 +377,7 @@ public class PurpurWorldConfig {
creativeOnePunch = getBoolean("gameplay-mechanics.player.one-punch-in-creative", creativeOnePunch);
playerSleepNearMonsters = getBoolean("gameplay-mechanics.player.sleep-ignore-nearby-mobs", playerSleepNearMonsters);
playersSkipNight = getBoolean("gameplay-mechanics.player.can-skip-night", playersSkipNight);

View File

@@ -19,10 +19,10 @@ index fbe15cdd5b9bca2ab4b1e871abbbdbff49ade8a4..23d113842bf774bdc74e0dffcc97b642
BlockPos blockposition1 = pos.offset(world.random.nextInt(16) - world.random.nextInt(16), world.random.nextInt(8) - world.random.nextInt(8), world.random.nextInt(16) - world.random.nextInt(16));
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 3bc215486470858b85e1e20aeb8c53e1c1c6bd18..c3b305e158aa080252ad95f344372a47aa9ea7ee 100644
index 6b860a675c38baa646ea0b1ddcff27c6162fcef1..f41a83fde64331963e593623855609f011799229 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -521,6 +521,11 @@ public class PurpurWorldConfig {
@@ -523,6 +523,11 @@ public class PurpurWorldConfig {
});
}

View File

@@ -31,10 +31,10 @@ index f52823146944d333f2d050e90261b570ba66f5dd..d8efb00c325448d566c59418fe22268c
return false;
} else {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c3b305e158aa080252ad95f344372a47aa9ea7ee..ba5bbb8a95bb7bb0f26693a34d1fd9c6eb0fd809 100644
index f41a83fde64331963e593623855609f011799229..337274787b041e23ae068b5bd00e978a5e53df81 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -761,6 +761,8 @@ public class PurpurWorldConfig {
@@ -763,6 +763,8 @@ public class PurpurWorldConfig {
public double beeMaxHealth = 10.0D;
public int beeBreedingTicks = 6000;
public boolean beeTakeDamageFromWater = false;
@@ -43,7 +43,7 @@ index c3b305e158aa080252ad95f344372a47aa9ea7ee..ba5bbb8a95bb7bb0f26693a34d1fd9c6
private void beeSettings() {
beeRidable = getBoolean("mobs.bee.ridable", beeRidable);
beeRidableInWater = getBoolean("mobs.bee.ridable-in-water", beeRidableInWater);
@@ -774,6 +776,8 @@ public class PurpurWorldConfig {
@@ -776,6 +778,8 @@ public class PurpurWorldConfig {
beeMaxHealth = getDouble("mobs.bee.attributes.max_health", beeMaxHealth);
beeBreedingTicks = getInt("mobs.bee.breeding-delay-ticks", beeBreedingTicks);
beeTakeDamageFromWater = getBoolean("mobs.bee.takes-damage-from-water", beeTakeDamageFromWater);

View File

@@ -6,7 +6,7 @@ Subject: [PATCH] API for any mob to burn daylight
Co-authored by: Encode42 <me@encode42.dev>
diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java
index a657b37c56bd656e81c71ae47d6cf7625d282117..fcb3c6230b299a60ec96f3b77b757cf342e0715a 100644
index 09ca45c5b369195b24e5f574217f709cae932137..1be8cf8d8457dcabab313e4b329c0831df6c57ce 100644
--- a/src/main/java/net/minecraft/world/entity/Entity.java
+++ b/src/main/java/net/minecraft/world/entity/Entity.java
@@ -534,6 +534,21 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess

View File

@@ -72,7 +72,7 @@ index f43bf280999ff3860cc702def50cc62b131eb1bd..66d9e99a351f5fc6cf58be3bee4397d9
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index ba5bbb8a95bb7bb0f26693a34d1fd9c6eb0fd809..c329e73351d34abbd49586d0c8161edbdb419315 100644
index 337274787b041e23ae068b5bd00e978a5e53df81..fa699e512caf3c959c1ea655751f476df8eed216 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -316,6 +316,21 @@ public class PurpurWorldConfig {

View File

@@ -26,10 +26,10 @@ index 814e70f558d7a6186233da0ff86c94c95d390e09..d1fb77d83d48183a9a37dbeec7bb0fda
} else {
return effectRange;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c329e73351d34abbd49586d0c8161edbdb419315..b43cda3ec12d2d11a83c18cf0c2db527ef0cbf94 100644
index fa699e512caf3c959c1ea655751f476df8eed216..b8a7ef1d69e1ea25b5efe3b8d7f5a937a36a3e45 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -488,6 +488,17 @@ public class PurpurWorldConfig {
@@ -490,6 +490,17 @@ public class PurpurWorldConfig {
anvilColorsUseMiniMessage = getBoolean("blocks.anvil.use-mini-message", anvilColorsUseMiniMessage);
}

View File

@@ -54,10 +54,10 @@ index bd3f78e6453cfe18aa3da38176b04d734d83bb4b..515dd3b769917c4aa60ce180ef24f38c
public void eat(FoodProperties foodComponent) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index b43cda3ec12d2d11a83c18cf0c2db527ef0cbf94..e3aacb497a05de0acd6a95395a9cdf4c99762bb5 100644
index b8a7ef1d69e1ea25b5efe3b8d7f5a937a36a3e45..b96466cb65ae24e4095fa182a43cf01d40ee59d8 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -372,6 +372,8 @@ public class PurpurWorldConfig {
@@ -373,6 +373,8 @@ public class PurpurWorldConfig {
public boolean playerSleepNearMonsters = false;
public boolean playersSkipNight = true;
public double playerCriticalDamageMultiplier = 1.5D;
@@ -66,7 +66,7 @@ index b43cda3ec12d2d11a83c18cf0c2db527ef0cbf94..e3aacb497a05de0acd6a95395a9cdf4c
private void playerSettings() {
if (PurpurConfig.version < 19) {
boolean oldVal = getBoolean("gameplay-mechanics.player.idle-timeout.mods-target", idleTimeoutTargetPlayer);
@@ -391,6 +393,8 @@ public class PurpurWorldConfig {
@@ -393,6 +395,8 @@ public class PurpurWorldConfig {
playerSleepNearMonsters = getBoolean("gameplay-mechanics.player.sleep-ignore-nearby-mobs", playerSleepNearMonsters);
playersSkipNight = getBoolean("gameplay-mechanics.player.can-skip-night", playersSkipNight);
playerCriticalDamageMultiplier = getDouble("gameplay-mechanics.player.critical-damage-multiplier", playerCriticalDamageMultiplier);

View File

@@ -68,10 +68,10 @@ index 0d04a0107bd1a8a2b9aeb4be55025cd554e8fb79..a050d76233e179a1456b83ccc02bb9a5
+ // Purpur end
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index e3aacb497a05de0acd6a95395a9cdf4c99762bb5..c4c200fb05b9a1533f923dd32de7b82a11ab2c38 100644
index b96466cb65ae24e4095fa182a43cf01d40ee59d8..d07ad8fcaeb819e1e3e468f232d6f2ea75b81738 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1915,6 +1915,11 @@ public class PurpurWorldConfig {
@@ -1917,6 +1917,11 @@ public class PurpurWorldConfig {
public boolean shulkerControllable = true;
public double shulkerMaxHealth = 30.0D;
public boolean shulkerTakeDamageFromWater = false;
@@ -83,7 +83,7 @@ index e3aacb497a05de0acd6a95395a9cdf4c99762bb5..c4c200fb05b9a1533f923dd32de7b82a
private void shulkerSettings() {
shulkerRidable = getBoolean("mobs.shulker.ridable", shulkerRidable);
shulkerRidableInWater = getBoolean("mobs.shulker.ridable-in-water", shulkerRidableInWater);
@@ -1926,6 +1931,11 @@ public class PurpurWorldConfig {
@@ -1928,6 +1933,11 @@ public class PurpurWorldConfig {
}
shulkerMaxHealth = getDouble("mobs.shulker.attributes.max_health", shulkerMaxHealth);
shulkerTakeDamageFromWater = getBoolean("mobs.shulker.takes-damage-from-water", shulkerTakeDamageFromWater);

View File

@@ -18,7 +18,7 @@ index 4eef61323ba54f513e6f251ef7c804b2c91ff477..6b2235281dca67a80cb651e9f8e9bf25
public static final Item CAMPFIRE = registerBlock(Blocks.CAMPFIRE, settings -> settings.component(DataComponents.CONTAINER, ItemContainerContents.EMPTY));
public static final Item SOUL_CAMPFIRE = registerBlock(
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c4c200fb05b9a1533f923dd32de7b82a11ab2c38..a0206de2a6391cfe9d8c81ca43f9c042e7c7277c 100644
index d07ad8fcaeb819e1e3e468f232d6f2ea75b81738..a36ddbfa600a3beb794f95d6870610f96b42870a 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -205,6 +205,7 @@ public class PurpurWorldConfig {

View File

@@ -26,10 +26,10 @@ index f037d50f26f7532f11a71790448de7a71644b6ca..b3a79dc4357ad4392101353fbc99aac1
@Override
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index a0206de2a6391cfe9d8c81ca43f9c042e7c7277c..c92c061b373e6e814afe7bac7df05144c5059980 100644
index a36ddbfa600a3beb794f95d6870610f96b42870a..d4deac6bc7444e67cc82520506ee579d4d378117 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1061,6 +1061,7 @@ public class PurpurWorldConfig {
@@ -1063,6 +1063,7 @@ public class PurpurWorldConfig {
public double drownedJockeyChance = 0.05D;
public boolean drownedJockeyTryExistingChickens = true;
public boolean drownedTakeDamageFromWater = false;
@@ -37,7 +37,7 @@ index a0206de2a6391cfe9d8c81ca43f9c042e7c7277c..c92c061b373e6e814afe7bac7df05144
private void drownedSettings() {
drownedRidable = getBoolean("mobs.drowned.ridable", drownedRidable);
drownedRidableInWater = getBoolean("mobs.drowned.ridable-in-water", drownedRidableInWater);
@@ -1076,6 +1077,7 @@ public class PurpurWorldConfig {
@@ -1078,6 +1079,7 @@ public class PurpurWorldConfig {
drownedJockeyChance = getDouble("mobs.drowned.jockey.chance", drownedJockeyChance);
drownedJockeyTryExistingChickens = getBoolean("mobs.drowned.jockey.try-existing-chickens", drownedJockeyTryExistingChickens);
drownedTakeDamageFromWater = getBoolean("mobs.drowned.takes-damage-from-water", drownedTakeDamageFromWater);

View File

@@ -18,10 +18,10 @@ index 515dd3b769917c4aa60ce180ef24f38ca12e6848..c7ad716f607afe382436d088a2b2e622
this.tickTimer = 0;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c92c061b373e6e814afe7bac7df05144c5059980..d3ba35bc966b445e37221b136341b8e0406464ff 100644
index d4deac6bc7444e67cc82520506ee579d4d378117..a08b58f67684f20a0eb5b65c7e201c60ee079c39 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2574,4 +2574,9 @@ public class PurpurWorldConfig {
@@ -2576,4 +2576,9 @@ public class PurpurWorldConfig {
zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry);
zombifiedPiglinTakeDamageFromWater = getBoolean("mobs.zombified_piglin.takes-damage-from-water", zombifiedPiglinTakeDamageFromWater);
}

View File

@@ -157,10 +157,10 @@ index 24f6a158e4759aac3be8da4cf5e0d40bd295355b..6b7dbb570f8a698c87c6bce992d84d87
return InteractionResult.PASS;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index d3ba35bc966b445e37221b136341b8e0406464ff..2330471d1cbc69092319cb6d2ef1ebf4ecdb54d9 100644
index a08b58f67684f20a0eb5b65c7e201c60ee079c39..49243adbc25e5d1141c9cf8b4118d600862b3d17 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -487,6 +487,280 @@ public class PurpurWorldConfig {
@@ -489,6 +489,280 @@ public class PurpurWorldConfig {
snowballDamage = getInt("gameplay-mechanics.projectile-damage.snowball", snowballDamage);
}

View File

@@ -38,10 +38,10 @@ index b8d80e04eea132d9671026e93e7c666d33dfeb25..74200fab686750cd53fc30edd050189c
}
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 863e13a492488005b8d3ce134d2f45975c13d682..298616778a110ff487c1c7151b15fca88c178a64 100644
index f7402093e00e2d0f0fdd7ce81b91ae59ddae0005..cc902880e421260129d8daca6a9a9d7a13f27860 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1569,7 +1569,19 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
@@ -1570,7 +1570,19 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
});
if (!this.serverLevel().canSleepThroughNights()) {

View File

@@ -18,7 +18,7 @@ index 3253361d91e2a2e68d354eaf3dd3e3cd486e191d..2649188930653610b8aaaeb18797c808
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 2330471d1cbc69092319cb6d2ef1ebf4ecdb54d9..75046d2afb195807599d56bb5166a24f5a0884fb 100644
index 49243adbc25e5d1141c9cf8b4118d600862b3d17..aba76fc1be5271883308d8127c6266ae1333d4fd 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -206,6 +206,7 @@ public class PurpurWorldConfig {

View File

@@ -24,10 +24,10 @@ index 8240c32d676a88aa23dcd052ee0136767e54fb0d..372c4ab9d390d5afd98947f21c79aae0
if (i != -1) {
world.scheduleTick(blockposition, (Block) this, i);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 75046d2afb195807599d56bb5166a24f5a0884fb..a9e9b03c1afcdf0b702e833c2c9926203ad6c797 100644
index aba76fc1be5271883308d8127c6266ae1333d4fd..91adbbf51559e03942eefef7a535e52e75963626 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -802,6 +802,22 @@ public class PurpurWorldConfig {
@@ -804,6 +804,22 @@ public class PurpurWorldConfig {
}
}

View File

@@ -23,10 +23,10 @@ index 2fe3af832a228b1352b9b85dec06115009ef658f..cb6f161d32fe9642e9e9b1efc47d8861
if (!this.isPassenger() && this.onGround() && !this.isInWater() && !this.isInPowderSnow) {
if (this.getShoulderEntityLeft().isEmpty()) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index a9e9b03c1afcdf0b702e833c2c9926203ad6c797..be5f1ca19dd2aef4fc6132e60445f1a8cb805374 100644
index 91adbbf51559e03942eefef7a535e52e75963626..f5bdf319a4f8cb8582b68306a14cc12aea10ab2e 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -378,6 +378,7 @@ public class PurpurWorldConfig {
@@ -379,6 +379,7 @@ public class PurpurWorldConfig {
public double playerCriticalDamageMultiplier = 1.5D;
public int playerBurpDelay = 10;
public boolean playerBurpWhenFull = false;
@@ -34,7 +34,7 @@ index a9e9b03c1afcdf0b702e833c2c9926203ad6c797..be5f1ca19dd2aef4fc6132e60445f1a8
private void playerSettings() {
if (PurpurConfig.version < 19) {
boolean oldVal = getBoolean("gameplay-mechanics.player.idle-timeout.mods-target", idleTimeoutTargetPlayer);
@@ -399,6 +400,7 @@ public class PurpurWorldConfig {
@@ -401,6 +402,7 @@ public class PurpurWorldConfig {
playerCriticalDamageMultiplier = getDouble("gameplay-mechanics.player.critical-damage-multiplier", playerCriticalDamageMultiplier);
playerBurpDelay = getInt("gameplay-mechanics.player.burp-delay", playerBurpDelay);
playerBurpWhenFull = getBoolean("gameplay-mechanics.player.burp-when-full", playerBurpWhenFull);

View File

@@ -17,10 +17,10 @@ index f2e21c9d3cefb635c4eb583ac9355b46675c94e7..2855efc4670c58219ca1e78770ac289a
for (int i = 0; i < 64; ++i) {
if (this.teleport()) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index be5f1ca19dd2aef4fc6132e60445f1a8cb805374..9b38b8235b2ed6c3430162e654d166ad4a4acbe6 100644
index f5bdf319a4f8cb8582b68306a14cc12aea10ab2e..6c0dacb0a8ab5cfbba9880f2f9c8c6f1c60f3744 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1432,6 +1432,7 @@ public class PurpurWorldConfig {
@@ -1434,6 +1434,7 @@ public class PurpurWorldConfig {
public boolean endermanAggroEndermitesOnlyIfPlayerSpawned = false;
public boolean endermanIgnorePlayerDragonHead = false;
public boolean endermanDisableStareAggro = false;
@@ -28,7 +28,7 @@ index be5f1ca19dd2aef4fc6132e60445f1a8cb805374..9b38b8235b2ed6c3430162e654d166ad
private void endermanSettings() {
endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable);
endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater);
@@ -1454,6 +1455,7 @@ public class PurpurWorldConfig {
@@ -1456,6 +1457,7 @@ public class PurpurWorldConfig {
endermanAggroEndermitesOnlyIfPlayerSpawned = getBoolean("mobs.enderman.aggressive-towards-endermites-only-spawned-by-player-thrown-ender-pearls", endermanAggroEndermitesOnlyIfPlayerSpawned);
endermanIgnorePlayerDragonHead = getBoolean("mobs.enderman.ignore-players-wearing-dragon-head", endermanIgnorePlayerDragonHead);
endermanDisableStareAggro = getBoolean("mobs.enderman.disable-player-stare-aggression", endermanDisableStareAggro);

View File

@@ -17,7 +17,7 @@ index 938f0cc6631e5fdf687f43c1adc850d778227e98..1beb75aa960c766344f00fa898f905d5
if (environment.includeIntegrated) {
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 298616778a110ff487c1c7151b15fca88c178a64..cf79a9e767a6412f6d15017d030ae4a38e409679 100644
index cc902880e421260129d8daca6a9a9d7a13f27860..4ab562eaeb21b0ed8ee4fdedfe22259e76dd3e68 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -303,6 +303,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
@@ -44,7 +44,7 @@ index 298616778a110ff487c1c7151b15fca88c178a64..cf79a9e767a6412f6d15017d030ae4a3
}
// CraftBukkit start - World fallback code, either respawn location or global spawn
@@ -3080,5 +3083,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
@@ -3081,5 +3084,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
public void tpsBar(boolean tpsBar) {
this.tpsBar = tpsBar;
}
@@ -89,7 +89,7 @@ index 74b1153454ae75653706913c993781c462d95689..c1e7dc324237eea16e88a1fc636d5bcd
hideHiddenPlayersFromEntitySelector = getBoolean("settings.command.hide-hidden-players-from-entity-selector", hideHiddenPlayersFromEntitySelector);
uptimeFormat = getString("settings.command.uptime.format", uptimeFormat);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 9b38b8235b2ed6c3430162e654d166ad4a4acbe6..d45ccc74e181b3937518fac32e566356e8765775 100644
index 6c0dacb0a8ab5cfbba9880f2f9c8c6f1c60f3744..4b42e9f08914a94fe208fb3d4eba8ade0c7f23de 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -207,6 +207,7 @@ public class PurpurWorldConfig {

View File

@@ -17,7 +17,7 @@ index 3b77111bdf50cd836d6e4199e6224b594430b147..bc31065aed8d09b5242310de52f895a0
}
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index d45ccc74e181b3937518fac32e566356e8765775..201d53fddba35836df5d484ec2aa6599a2d0e976 100644
index 4b42e9f08914a94fe208fb3d4eba8ade0c7f23de..98ede0ab5caf0b4901f5e879e1a35596738bc620 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -178,12 +178,14 @@ public class PurpurWorldConfig {

View File

@@ -18,7 +18,7 @@ index b38fbe5121f293f425d7673a6ce49b11d0ced0d9..2a74f42672b92393b52a61c27c5b8af7
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 201d53fddba35836df5d484ec2aa6599a2d0e976..d5f980bc532162c3a716594cb86ddfd5fd14c3dc 100644
index 98ede0ab5caf0b4901f5e879e1a35596738bc620..2ef2eaa9a6d6ee89b9c8132500ee4f4e27fe320a 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -354,6 +354,11 @@ public class PurpurWorldConfig {

View File

@@ -18,10 +18,10 @@ index 3c4cff3f095cdf2dd74df7bf4bb8f3d5600b342d..9bb75b49ea2d0bd8aafbe537b65f86eb
return InteractionResult.SUCCESS;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index d5f980bc532162c3a716594cb86ddfd5fd14c3dc..578f191476136c6be468fbd86e067bc4ba08c0c0 100644
index 2ef2eaa9a6d6ee89b9c8132500ee4f4e27fe320a..78c88c86da467cc1c214de1e335878df29ee1f2e 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2835,6 +2835,8 @@ public class PurpurWorldConfig {
@@ -2837,6 +2837,8 @@ public class PurpurWorldConfig {
public double zombieVillagerJockeyChance = 0.05D;
public boolean zombieVillagerJockeyTryExistingChickens = true;
public boolean zombieVillagerTakeDamageFromWater = false;
@@ -30,7 +30,7 @@ index d5f980bc532162c3a716594cb86ddfd5fd14c3dc..578f191476136c6be468fbd86e067bc4
private void zombieVillagerSettings() {
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
@@ -2850,6 +2852,8 @@ public class PurpurWorldConfig {
@@ -2852,6 +2854,8 @@ public class PurpurWorldConfig {
zombieVillagerJockeyChance = getDouble("mobs.zombie_villager.jockey.chance", zombieVillagerJockeyChance);
zombieVillagerJockeyTryExistingChickens = getBoolean("mobs.zombie_villager.jockey.try-existing-chickens", zombieVillagerJockeyTryExistingChickens);
zombieVillagerTakeDamageFromWater = getBoolean("mobs.zombie_villager.takes-damage-from-water", zombieVillagerTakeDamageFromWater);

View File

@@ -30,10 +30,10 @@ index a676ccfa6b02e8986df6f6a2e04cbb06b3edd0ff..6fe44572e34ad3e3a1851e73138bd8b7
if (!iblockdata.is(Blocks.KELP) && !iblockdata.is(Blocks.KELP_PLANT) && !iblockdata.is(Blocks.SEAGRASS) && !iblockdata.is(Blocks.TALL_SEAGRASS)) {
return false;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 578f191476136c6be468fbd86e067bc4ba08c0c0..2ef9b6de0dc43876fd0f0c471a065762fa485c00 100644
index 78c88c86da467cc1c214de1e335878df29ee1f2e..6ddf71e286bb0ddaf73191821046853727624c17 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -988,9 +988,13 @@ public class PurpurWorldConfig {
@@ -990,9 +990,13 @@ public class PurpurWorldConfig {
public int spongeAbsorptionArea = 65;
public int spongeAbsorptionRadius = 6;

View File

@@ -18,10 +18,10 @@ index 0a8466fa93d4955c3d9a1d5a57eeb0751d20a8d4..adfadd75f29a82f606824f7d98f3abec
// this.level().globalLevelEvent(1023, new BlockPosition(this), 0);
int viewDistance = ((ServerLevel) this.level()).getCraftServer().getViewDistance() * 16;
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 2ef9b6de0dc43876fd0f0c471a065762fa485c00..11e67bbcc332735926d4dd2cccef237f7d44c4ba 100644
index 6ddf71e286bb0ddaf73191821046853727624c17..1faa6fae7931401bda9174b92e1e025836f051fb 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2680,6 +2680,7 @@ public class PurpurWorldConfig {
@@ -2682,6 +2682,7 @@ public class PurpurWorldConfig {
public boolean witherTakeDamageFromWater = false;
public boolean witherCanRideVehicles = false;
public float witherExplosionRadius = 1.0F;
@@ -29,7 +29,7 @@ index 2ef9b6de0dc43876fd0f0c471a065762fa485c00..11e67bbcc332735926d4dd2cccef237f
private void witherSettings() {
witherRidable = getBoolean("mobs.wither.ridable", witherRidable);
witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater);
@@ -2701,6 +2702,7 @@ public class PurpurWorldConfig {
@@ -2703,6 +2704,7 @@ public class PurpurWorldConfig {
witherTakeDamageFromWater = getBoolean("mobs.wither.takes-damage-from-water", witherTakeDamageFromWater);
witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles);
witherExplosionRadius = (float) getDouble("mobs.wither.explosion-radius", witherExplosionRadius);

View File

@@ -18,10 +18,10 @@ index ff4dda48116a2969704b355ff96407ba869b466e..9200d75b05ce535f7b7f5c1572cd8f62
return false;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 11e67bbcc332735926d4dd2cccef237f7d44c4ba..22ff53cccfcd5a64b08a9c17199f479168e34b39 100644
index 1faa6fae7931401bda9174b92e1e025836f051fb..6052c3609796a90e73f8531ec1e9940cf4ebaf4c 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -829,6 +829,11 @@ public class PurpurWorldConfig {
@@ -831,6 +831,11 @@ public class PurpurWorldConfig {
});
}

View File

@@ -97,10 +97,10 @@ index c1759aeb3e6ad0e4eb66cba3da1b120dd1dce812..1a91bc2e422db0eba65694ac046f1b36
@Override
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 22ff53cccfcd5a64b08a9c17199f479168e34b39..0d95d013ecea9d1eb8836b2724f2e1a1057428f1 100644
index 6052c3609796a90e73f8531ec1e9940cf4ebaf4c..b8e41284cb5c4fa5996d02d2160da35a65f51ba1 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2899,4 +2899,27 @@ public class PurpurWorldConfig {
@@ -2901,4 +2901,27 @@ public class PurpurWorldConfig {
private void hungerSettings() {
hungerStarvationDamage = (float) getDouble("hunger.starvation-damage", hungerStarvationDamage);
}

View File

@@ -47,10 +47,10 @@ index a2bd54dae4b0460d200f6d5300194a7ef5a28830..bf189a171530abfc9bba5db5a305feb3
if (dripChance < f1) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 0d95d013ecea9d1eb8836b2724f2e1a1057428f1..e6e782217b0469f26a664879b9dacb15587408d5 100644
index b8e41284cb5c4fa5996d02d2160da35a65f51ba1..89e5918d0a79b0c28c6d9f73f5c33de9f5b04a10 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2922,4 +2922,15 @@ public class PurpurWorldConfig {
@@ -2924,4 +2924,15 @@ public class PurpurWorldConfig {
});
conduitBlocks = conduitBlockList.toArray(Block[]::new);
}

View File

@@ -18,7 +18,7 @@ index d5004290e40a1ff5e0fcfe75f8da34ae15962359..31ae0f466ae522d767907ec5066b2669
&& pathType != PathType.POWDER_SNOW) {
node = this.tryJumpOn(x, y, z, maxYStep, prevFeetY, direction, nodeType, mutableBlockPos);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index e6e782217b0469f26a664879b9dacb15587408d5..8be5dd0970511dd0916af12a38790fd3a33c4169 100644
index 89e5918d0a79b0c28c6d9f73f5c33de9f5b04a10..43b1da25411169fde7e25621b1dbeab3a83fb0af 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -136,6 +136,7 @@ public class PurpurWorldConfig {

View File

@@ -29,10 +29,10 @@ index fde6bae8a5d9eba7ec87c73047a6e3f91629828e..0e9a4e473b1f1887804507cfadfdeeed
protected void registerGoals() {
this.goalSelector.addGoal(0, new org.purpurmc.purpur.entity.ai.HasRider(this)); // Purpur
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 8be5dd0970511dd0916af12a38790fd3a33c4169..b5eed802c2537996e4eb33d7a56b1598a8053395 100644
index 43b1da25411169fde7e25621b1dbeab3a83fb0af..e7c3eced685bd75bd5b09ecd7c47cc73bac6fae8 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2240,6 +2240,7 @@ public class PurpurWorldConfig {
@@ -2242,6 +2242,7 @@ public class PurpurWorldConfig {
public double shulkerSpawnFromBulletNearbyRange = 8.0D;
public String shulkerSpawnFromBulletNearbyEquation = "(nearby - 1) / 5.0";
public boolean shulkerSpawnFromBulletRandomColor = false;
@@ -40,7 +40,7 @@ index 8be5dd0970511dd0916af12a38790fd3a33c4169..b5eed802c2537996e4eb33d7a56b1598
private void shulkerSettings() {
shulkerRidable = getBoolean("mobs.shulker.ridable", shulkerRidable);
shulkerRidableInWater = getBoolean("mobs.shulker.ridable-in-water", shulkerRidableInWater);
@@ -2256,6 +2257,7 @@ public class PurpurWorldConfig {
@@ -2258,6 +2259,7 @@ public class PurpurWorldConfig {
shulkerSpawnFromBulletNearbyRange = getDouble("mobs.shulker.spawn-from-bullet.nearby-range", shulkerSpawnFromBulletNearbyRange);
shulkerSpawnFromBulletNearbyEquation = getString("mobs.shulker.spawn-from-bullet.nearby-equation", shulkerSpawnFromBulletNearbyEquation);
shulkerSpawnFromBulletRandomColor = getBoolean("mobs.shulker.spawn-from-bullet.random-color", shulkerSpawnFromBulletRandomColor);

View File

@@ -25,7 +25,7 @@ index 74200fab686750cd53fc30edd050189cb11fe857..9e3dc4bf5ad390e6e49a5193c7788d0c
// CraftBukkit start
// If we stop due to everyone sleeping we should reset the weather duration to some other random value.
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index b5eed802c2537996e4eb33d7a56b1598a8053395..69d53bd673acc598daa8287e90401160eb97a3b1 100644
index e7c3eced685bd75bd5b09ecd7c47cc73bac6fae8..21e4fa3fe335733c1c9c3772526d573cf8464ce5 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -137,6 +137,8 @@ public class PurpurWorldConfig {

View File

@@ -50,10 +50,10 @@ index 223259e7a09ada681b6181c898f6857888594f85..7d58a95f7ae8983b466b275f4f82597d
.sound(SoundType.FLOWERING_AZALEA)
.noOcclusion()
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 69d53bd673acc598daa8287e90401160eb97a3b1..27a565460a365889021f50566050ffc11770da00 100644
index 21e4fa3fe335733c1c9c3772526d573cf8464ce5..2762490934b27e555efbb9cfa92bd3946d618444 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -787,6 +787,11 @@ public class PurpurWorldConfig {
@@ -789,6 +789,11 @@ public class PurpurWorldConfig {
anvilColorsUseMiniMessage = getBoolean("blocks.anvil.use-mini-message", anvilColorsUseMiniMessage);
}
@@ -65,7 +65,7 @@ index 69d53bd673acc598daa8287e90401160eb97a3b1..27a565460a365889021f50566050ffc1
public int beaconLevelOne = 20;
public int beaconLevelTwo = 30;
public int beaconLevelThree = 40;
@@ -924,6 +929,11 @@ public class PurpurWorldConfig {
@@ -926,6 +931,11 @@ public class PurpurWorldConfig {
farmlandTramplingFeatherFalling = getBoolean("blocks.farmland.feather-fall-distance-affects-trampling", farmlandTramplingFeatherFalling);
}

View File

@@ -48,10 +48,10 @@ index 22979d8531fd9732b1fd5eaf76aec52b22fdf6bb..d0672ed5abf3488fc3ec6ea8b153e2d2
cancelled = event.useItemInHand() == Event.Result.DENY;
} else {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 27a565460a365889021f50566050ffc11770da00..c4cd180fc707e6cda168c21217e8459f003c7493 100644
index 2762490934b27e555efbb9cfa92bd3946d618444..977ba750ed0faa9d45c56a2cb76a9c4497c3b984 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -394,6 +394,7 @@ public class PurpurWorldConfig {
@@ -395,6 +395,7 @@ public class PurpurWorldConfig {
public int playerBurpDelay = 10;
public boolean playerBurpWhenFull = false;
public boolean playerRidableInWater = false;
@@ -59,7 +59,7 @@ index 27a565460a365889021f50566050ffc11770da00..c4cd180fc707e6cda168c21217e8459f
private void playerSettings() {
if (PurpurConfig.version < 19) {
boolean oldVal = getBoolean("gameplay-mechanics.player.idle-timeout.mods-target", idleTimeoutTargetPlayer);
@@ -416,6 +417,7 @@ public class PurpurWorldConfig {
@@ -418,6 +419,7 @@ public class PurpurWorldConfig {
playerBurpDelay = getInt("gameplay-mechanics.player.burp-delay", playerBurpDelay);
playerBurpWhenFull = getBoolean("gameplay-mechanics.player.burp-when-full", playerBurpWhenFull);
playerRidableInWater = getBoolean("gameplay-mechanics.player.ridable-in-water", playerRidableInWater);

View File

@@ -48,10 +48,10 @@ index 439fa9a5070889a4dee48786509940c4d56b6806..f2e1954a1e80862ec3818af448cf4096
public static AttributeSupplier.Builder createAttributes() {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c4cd180fc707e6cda168c21217e8459f003c7493..a7cd2c19cf2e3192f415b24465f53ae881ca16ed 100644
index 977ba750ed0faa9d45c56a2cb76a9c4497c3b984..7e8284774c7a1837ecf36b1dcdd682307fe0e012 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1338,6 +1338,7 @@ public class PurpurWorldConfig {
@@ -1340,6 +1340,7 @@ public class PurpurWorldConfig {
public double dolphinMaxHealth = 10.0D;
public boolean dolphinDisableTreasureSearching = false;
public boolean dolphinTakeDamageFromWater = false;
@@ -59,7 +59,7 @@ index c4cd180fc707e6cda168c21217e8459f003c7493..a7cd2c19cf2e3192f415b24465f53ae8
private void dolphinSettings() {
dolphinRidable = getBoolean("mobs.dolphin.ridable", dolphinRidable);
dolphinControllable = getBoolean("mobs.dolphin.controllable", dolphinControllable);
@@ -1352,6 +1353,7 @@ public class PurpurWorldConfig {
@@ -1354,6 +1355,7 @@ public class PurpurWorldConfig {
dolphinMaxHealth = getDouble("mobs.dolphin.attributes.max_health", dolphinMaxHealth);
dolphinDisableTreasureSearching = getBoolean("mobs.dolphin.disable-treasure-searching", dolphinDisableTreasureSearching);
dolphinTakeDamageFromWater = getBoolean("mobs.dolphin.takes-damage-from-water", dolphinTakeDamageFromWater);

View File

@@ -61,10 +61,10 @@ index c519883f4ed3772378b5563401b8c557dc315ace..78f00014c034949b6559ca948b1b78fa
@Override
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index a7cd2c19cf2e3192f415b24465f53ae881ca16ed..7672746ac6d2e9a3c555d201a94e21af3143e7f9 100644
index 7e8284774c7a1837ecf36b1dcdd682307fe0e012..76372d3723cf5f84eb998bb68e5ede21c674efd4 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1287,7 +1287,14 @@ public class PurpurWorldConfig {
@@ -1289,7 +1289,14 @@ public class PurpurWorldConfig {
public int cowFeedMushrooms = 0;
public int cowBreedingTicks = 6000;
public boolean cowTakeDamageFromWater = false;
@@ -79,7 +79,7 @@ index a7cd2c19cf2e3192f415b24465f53ae881ca16ed..7672746ac6d2e9a3c555d201a94e21af
cowRidable = getBoolean("mobs.cow.ridable", cowRidable);
cowRidableInWater = getBoolean("mobs.cow.ridable-in-water", cowRidableInWater);
cowControllable = getBoolean("mobs.cow.controllable", cowControllable);
@@ -1300,6 +1307,8 @@ public class PurpurWorldConfig {
@@ -1302,6 +1309,8 @@ public class PurpurWorldConfig {
cowFeedMushrooms = getInt("mobs.cow.feed-mushrooms-for-mooshroom", cowFeedMushrooms);
cowBreedingTicks = getInt("mobs.cow.breeding-delay-ticks", cowBreedingTicks);
cowTakeDamageFromWater = getBoolean("mobs.cow.takes-damage-from-water", cowTakeDamageFromWater);

View File

@@ -22,10 +22,10 @@ index 1e100de8d30777e83907c523ffc1a3a54c670205..a9f6016b76dce5ca63b3a1093241c9e6
this.brain.setMemory(MemoryModuleType.LAST_SLEPT, this.level().getGameTime()); // CraftBukkit - decompile error
this.brain.eraseMemory(MemoryModuleType.WALK_TARGET);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 7672746ac6d2e9a3c555d201a94e21af3143e7f9..946bc819945cfd431da1eb26ac79902110975e3e 100644
index 76372d3723cf5f84eb998bb68e5ede21c674efd4..a0d26e77e7c08c65c6d6bd47d0103499e3571790 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -806,6 +806,7 @@ public class PurpurWorldConfig {
@@ -808,6 +808,7 @@ public class PurpurWorldConfig {
}
public boolean bedExplode = true;
@@ -33,7 +33,7 @@ index 7672746ac6d2e9a3c555d201a94e21af3143e7f9..946bc819945cfd431da1eb26ac799021
public double bedExplosionPower = 5.0D;
public boolean bedExplosionFire = true;
public net.minecraft.world.level.Level.ExplosionInteraction bedExplosionEffect = net.minecraft.world.level.Level.ExplosionInteraction.BLOCK;
@@ -816,6 +817,7 @@ public class PurpurWorldConfig {
@@ -818,6 +819,7 @@ public class PurpurWorldConfig {
}
}
bedExplode = getBoolean("blocks.bed.explode", bedExplode);

View File

@@ -60,10 +60,10 @@ index c8a664447f19e437eb7c615563add92715be9650..fc6914d459b1985a2cba0f963a7d79eb
this.armorDropChances[EquipmentSlot.HEAD.getIndex()] = 0.0F;
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 946bc819945cfd431da1eb26ac79902110975e3e..76ef38725abcfe5632a42a7fdb949f75819a1b86 100644
index a0d26e77e7c08c65c6d6bd47d0103499e3571790..0b68d1be5fa4be9e68bdcfb0df733138154a9d43 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1680,6 +1680,13 @@ public class PurpurWorldConfig {
@@ -1682,6 +1682,13 @@ public class PurpurWorldConfig {
guardianTakeDamageFromWater = getBoolean("mobs.guardian.takes-damage-from-water", guardianTakeDamageFromWater);
}

View File

@@ -18,10 +18,10 @@ index 7f6058f4def83867971121751acd51c398583651..5a49daf7b6bf9e0ec3d50494287a620d
@Override
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 76ef38725abcfe5632a42a7fdb949f75819a1b86..ba8b86180491cf1c8f1c1fbe79ee1a68846a0a13 100644
index 0b68d1be5fa4be9e68bdcfb0df733138154a9d43..81ca14a36b03a9ee2871a3be3a0c443add270d46 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -849,6 +849,11 @@ public class PurpurWorldConfig {
@@ -851,6 +851,11 @@ public class PurpurWorldConfig {
cactusBreaksFromSolidNeighbors = getBoolean("blocks.cactus.breaks-from-solid-neighbors", cactusBreaksFromSolidNeighbors);
}

View File

@@ -46,7 +46,7 @@ index f59a2903bfb8ae591a638ea5bb387caaa93ce664..1b9d0e28e518c501b4b93ae385ddd64a
protected void onHit(HitResult hitResult) {
super.onHit(hitResult);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index ba8b86180491cf1c8f1c1fbe79ee1a68846a0a13..56dd211d25bf81965736ecbf830a622847989133 100644
index 81ca14a36b03a9ee2871a3be3a0c443add270d46..c58528599fd3231948582cf6f789b68b1eaecbe2 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -216,6 +216,9 @@ public class PurpurWorldConfig {

View File

@@ -18,10 +18,10 @@ index 9bb75b49ea2d0bd8aafbe537b65f86eb04f6cfe2..612907fe87e46b5b13ed80635f203fa9
if (!this.level().isClientSide) {
this.startConverting(player.getUUID(), this.random.nextInt(level().purpurConfig.zombieVillagerCuringTimeMax - level().purpurConfig.zombieVillagerCuringTimeMin + 1) + level().purpurConfig.zombieVillagerCuringTimeMin); // Purpur
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 56dd211d25bf81965736ecbf830a622847989133..ae7437ccc0489c05afc363f14b8fb4c46dd1e6fd 100644
index c58528599fd3231948582cf6f789b68b1eaecbe2..48173dd974319c4f8e3b859c3b2ebde6065b8b7b 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -2899,6 +2899,7 @@ public class PurpurWorldConfig {
@@ -2901,6 +2901,7 @@ public class PurpurWorldConfig {
public boolean zombieVillagerTakeDamageFromWater = false;
public int zombieVillagerCuringTimeMin = 3600;
public int zombieVillagerCuringTimeMax = 6000;
@@ -29,7 +29,7 @@ index 56dd211d25bf81965736ecbf830a622847989133..ae7437ccc0489c05afc363f14b8fb4c4
private void zombieVillagerSettings() {
zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable);
zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater);
@@ -2916,6 +2917,7 @@ public class PurpurWorldConfig {
@@ -2918,6 +2919,7 @@ public class PurpurWorldConfig {
zombieVillagerTakeDamageFromWater = getBoolean("mobs.zombie_villager.takes-damage-from-water", zombieVillagerTakeDamageFromWater);
zombieVillagerCuringTimeMin = getInt("mobs.zombie_villager.curing_time.min", zombieVillagerCuringTimeMin);
zombieVillagerCuringTimeMax = getInt("mobs.zombie_villager.curing_time.max", zombieVillagerCuringTimeMax);

View File

@@ -135,7 +135,7 @@ index c0563260277f9f4bd9ff08993b2efb4bca9a0c60..cd0e43f4c53a746dd6183a8406269f9b
+ // Purpur end
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index ae7437ccc0489c05afc363f14b8fb4c46dd1e6fd..598ff5c02504793b377bbce12d1219c3b900a1bd 100644
index 48173dd974319c4f8e3b859c3b2ebde6065b8b7b..8f30f8f17d38201344c0275f9db706831125ad1e 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -128,6 +128,8 @@ public class PurpurWorldConfig {

View File

@@ -5,10 +5,10 @@ Subject: [PATCH] Signs allow color codes
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index cf79a9e767a6412f6d15017d030ae4a38e409679..c830fd0e990cb4220b6de3485df391ffbf7c7509 100644
index 4ab562eaeb21b0ed8ee4fdedfe22259e76dd3e68..fceb216d553763db971115ed4c30535bf52e80f6 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -1706,6 +1706,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
@@ -1707,6 +1707,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player imple
@Override
public void openTextEdit(SignBlockEntity sign, boolean front) {
@@ -84,10 +84,10 @@ index a28be7a332659be655f419d969e0c64e659b6c21..8cd812a25b1cc05ea14675658bf9c150
public ClientboundBlockEntityDataPacket getUpdatePacket() {
return ClientboundBlockEntityDataPacket.create(this);
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 598ff5c02504793b377bbce12d1219c3b900a1bd..2fb97fde913074fed029d26c800f12b3113901bb 100644
index 8f30f8f17d38201344c0275f9db706831125ad1e..2abad992ce2634c3bab521a2091d440c41795450 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1022,6 +1022,11 @@ public class PurpurWorldConfig {
@@ -1024,6 +1024,11 @@ public class PurpurWorldConfig {
}
}

View File

@@ -74,10 +74,10 @@ index acbd60a2f162fe0e254e36d0e8e7face3fc8a7b3..da1c7999ca64199387054de46489d3ff
+ // Purpur end
}
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index b4d681c2286d40e0544ab0ab88353f0afde82335..2139381370bebdd89d7eb3acfb17640ab66c2390 100644
index 8e2fe4cd6cc9ebfda022f9dd2ad52d9a786bed6d..bf6e78aa6e8e7e26e5ac451ff650cdc48dd5bcde 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -529,6 +529,8 @@ public class PurpurWorldConfig {
@@ -531,6 +531,8 @@ public class PurpurWorldConfig {
public Map<Block, Weatherable> axeWeatherables = new HashMap<>();
public Map<Block, Tillable> hoeTillables = new HashMap<>();
public Map<Block, Flattenable> shovelFlattenables = new HashMap<>();
@@ -86,7 +86,7 @@ index b4d681c2286d40e0544ab0ab88353f0afde82335..2139381370bebdd89d7eb3acfb17640a
private void toolSettings() {
axeStrippables.clear();
axeWaxables.clear();
@@ -796,6 +798,8 @@ public class PurpurWorldConfig {
@@ -798,6 +800,8 @@ public class PurpurWorldConfig {
});
shovelFlattenables.put(block, new Flattenable(into, drops));
});

View File

@@ -18,10 +18,10 @@ index 0c732cfbd9ce50198a3f85ae8ef2263d7ae0bc1a..2f0e8aeb9c45853fca12ddd78a7d5181
@Override
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index 2139381370bebdd89d7eb3acfb17640ab66c2390..c34a2bfe808b6d29a06f73f85559b1eab5d35713 100644
index bf6e78aa6e8e7e26e5ac451ff650cdc48dd5bcde..f8a31098eaccee7803aa2c186fbfd18fa8484f8d 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1056,11 +1056,13 @@ public class PurpurWorldConfig {
@@ -1058,11 +1058,13 @@ public class PurpurWorldConfig {
public boolean turtleEggsBreakFromItems = false;
public boolean turtleEggsBreakFromMinecarts = false;
public boolean turtleEggsBypassMobGriefing = false;

View File

@@ -32,10 +32,10 @@ index bc31065aed8d09b5242310de52f895a0173c0534..aa8997468c50810c3c9713c98a7786f2
// Purpur start
if (entity instanceof LivingEntity entityliving) {
diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
index c34a2bfe808b6d29a06f73f85559b1eab5d35713..1150467f1342943d1876f4b32e9180a9287b1939 100644
index f8a31098eaccee7803aa2c186fbfd18fa8484f8d..d7e073764928fb69576ee931a9509f7449cfa9cd 100644
--- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java
@@ -1374,6 +1374,7 @@ public class PurpurWorldConfig {
@@ -1376,6 +1376,7 @@ public class PurpurWorldConfig {
public boolean creeperExplodeWhenKilled = false;
public boolean creeperHealthRadius = false;
public boolean creeperAlwaysDropExp = false;
@@ -43,7 +43,7 @@ index c34a2bfe808b6d29a06f73f85559b1eab5d35713..1150467f1342943d1876f4b32e9180a9
private void creeperSettings() {
creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable);
creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater);
@@ -1391,6 +1392,7 @@ public class PurpurWorldConfig {
@@ -1393,6 +1394,7 @@ public class PurpurWorldConfig {
creeperExplodeWhenKilled = getBoolean("mobs.creeper.explode-when-killed", creeperExplodeWhenKilled);
creeperHealthRadius = getBoolean("mobs.creeper.health-impacts-explosion", creeperHealthRadius);
creeperAlwaysDropExp = getBoolean("mobs.creeper.always-drop-exp", creeperAlwaysDropExp);
@@ -51,7 +51,7 @@ index c34a2bfe808b6d29a06f73f85559b1eab5d35713..1150467f1342943d1876f4b32e9180a9
}
public boolean dolphinRidable = false;
@@ -2177,6 +2179,7 @@ public class PurpurWorldConfig {
@@ -2179,6 +2181,7 @@ public class PurpurWorldConfig {
public boolean piglinTakeDamageFromWater = false;
public int piglinPortalSpawnModifier = 2000;
public boolean piglinAlwaysDropExp = false;
@@ -59,7 +59,7 @@ index c34a2bfe808b6d29a06f73f85559b1eab5d35713..1150467f1342943d1876f4b32e9180a9
private void piglinSettings() {
piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable);
piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater);
@@ -2191,6 +2194,7 @@ public class PurpurWorldConfig {
@@ -2193,6 +2196,7 @@ public class PurpurWorldConfig {
piglinTakeDamageFromWater = getBoolean("mobs.piglin.takes-damage-from-water", piglinTakeDamageFromWater);
piglinPortalSpawnModifier = getInt("mobs.piglin.portal-spawn-modifier", piglinPortalSpawnModifier);
piglinAlwaysDropExp = getBoolean("mobs.piglin.always-drop-exp", piglinAlwaysDropExp);
@@ -67,7 +67,7 @@ index c34a2bfe808b6d29a06f73f85559b1eab5d35713..1150467f1342943d1876f4b32e9180a9
}
public boolean piglinBruteRidable = false;
@@ -2450,6 +2454,7 @@ public class PurpurWorldConfig {
@@ -2452,6 +2456,7 @@ public class PurpurWorldConfig {
public double skeletonMaxHealth = 20.0D;
public boolean skeletonTakeDamageFromWater = false;
public boolean skeletonAlwaysDropExp = false;
@@ -75,7 +75,7 @@ index c34a2bfe808b6d29a06f73f85559b1eab5d35713..1150467f1342943d1876f4b32e9180a9
private void skeletonSettings() {
skeletonRidable = getBoolean("mobs.skeleton.ridable", skeletonRidable);
skeletonRidableInWater = getBoolean("mobs.skeleton.ridable-in-water", skeletonRidableInWater);
@@ -2462,6 +2467,7 @@ public class PurpurWorldConfig {
@@ -2464,6 +2469,7 @@ public class PurpurWorldConfig {
skeletonMaxHealth = getDouble("mobs.skeleton.attributes.max_health", skeletonMaxHealth);
skeletonTakeDamageFromWater = getBoolean("mobs.skeleton.takes-damage-from-water", skeletonTakeDamageFromWater);
skeletonAlwaysDropExp = getBoolean("mobs.skeleton.always-drop-exp", skeletonAlwaysDropExp);
@@ -83,7 +83,7 @@ index c34a2bfe808b6d29a06f73f85559b1eab5d35713..1150467f1342943d1876f4b32e9180a9
}
public boolean skeletonHorseRidable = false;
@@ -2996,6 +3002,7 @@ public class PurpurWorldConfig {
@@ -2998,6 +3004,7 @@ public class PurpurWorldConfig {
public boolean zombieBypassMobGriefing = false;
public boolean zombieTakeDamageFromWater = false;
public boolean zombieAlwaysDropExp = false;
@@ -91,7 +91,7 @@ index c34a2bfe808b6d29a06f73f85559b1eab5d35713..1150467f1342943d1876f4b32e9180a9
private void zombieSettings() {
zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable);
zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater);
@@ -3014,6 +3021,7 @@ public class PurpurWorldConfig {
@@ -3016,6 +3023,7 @@ public class PurpurWorldConfig {
zombieBypassMobGriefing = getBoolean("mobs.zombie.bypass-mob-griefing", zombieBypassMobGriefing);
zombieTakeDamageFromWater = getBoolean("mobs.zombie.takes-damage-from-water", zombieTakeDamageFromWater);
zombieAlwaysDropExp = getBoolean("mobs.zombie.always-drop-exp", zombieAlwaysDropExp);

Some files were not shown because too many files have changed in this diff Show More