From 27211924b249ecfb857f7859d93bd967503f1feb Mon Sep 17 00:00:00 2001 From: William Blake Galbreath Date: Fri, 16 Jul 2021 23:01:23 -0500 Subject: [PATCH] Big dripleaf tilt delay --- patches/server/0003-Purpur-config-files.patch | 5 +- patches/server/0005-Ridables.patch | 4 +- ...-Configurable-entity-base-attributes.patch | 8 +- patches/server/0011-AFK-API.patch | 8 +- .../0019-Player-invulnerabilities.patch | 6 +- ...21-Configurable-villager-brain-ticks.patch | 8 +- patches/server/0023-Silk-touch-spawners.patch | 4 +- ...772-Fix-Add-turtle-egg-block-options.patch | 6 +- patches/server/0028-Giants-AI-settings.patch | 6 +- .../0029-Zombie-horse-naturally-spawn.patch | 6 +- ...0030-Charged-creeper-naturally-spawn.patch | 6 +- ...bit-naturally-spawn-toast-and-killer.patch | 6 +- .../server/0034-Tulips-change-fox-type.patch | 6 +- .../server/0035-Breedable-Polar-Bears.patch | 6 +- .../server/0036-Chickens-can-retaliate.patch | 6 +- ...option-to-set-armorstand-step-height.patch | 4 +- .../server/0038-Cat-spawning-options.patch | 6 +- patches/server/0040-Cows-eat-mushrooms.patch | 6 +- .../server/0042-Pigs-give-saddle-back.patch | 6 +- ...43-Snowman-drop-and-put-back-pumpkin.patch | 6 +- ...44-Ender-dragon-always-drop-full-exp.patch | 6 +- .../0045-Signs-editable-on-right-click.patch | 4 +- .../server/0046-Signs-allow-color-codes.patch | 4 +- ...moisten-from-water-directly-under-it.patch | 4 +- ...-Minecart-settings-and-WASD-controls.patch | 4 +- ...able-loot-drops-on-death-by-cramming.patch | 6 +- ...050-Players-should-not-cram-to-death.patch | 6 +- ...ption-to-toggle-milk-curing-bad-omen.patch | 4 +- ...low-loyalty-on-tridents-to-work-in-t.patch | 4 +- ...derman-and-creeper-griefing-controls.patch | 10 +-- ...0059-Villagers-follow-emerald-blocks.patch | 10 +-- .../0060-Allow-leashing-villagers.patch | 10 +-- ...urable-search-radius-for-villagers-t.patch | 6 +- .../server/0062-Implement-infinite-lava.patch | 4 +- ...63-Make-lava-flow-speed-configurable.patch | 4 +- ...Add-player-death-exp-control-options.patch | 6 +- ...urable-void-damage-height-and-damage.patch | 4 +- ...ispenser-curse-of-binding-protection.patch | 4 +- ...n-for-boats-to-eject-players-on-land.patch | 4 +- ...g-mends-most-damages-equipment-first.patch | 6 +- .../0071-Implement-elytra-settings.patch | 4 +- .../server/0072-Item-entity-immunities.patch | 4 +- .../0076-Configurable-jockey-options.patch | 20 ++--- ...ed-to-crystals-and-crystals-shoot-ph.patch | 6 +- .../0078-Add-phantom-spawning-options.patch | 6 +- ...0079-Implement-bed-explosion-options.patch | 4 +- ...ent-respawn-anchor-explosion-options.patch | 4 +- patches/server/0083-Entity-lifespan.patch | 6 +- ...leport-to-spawn-if-outside-world-bor.patch | 6 +- patches/server/0085-Squid-EAR-immunity.patch | 6 +- .../server/0087-Phantoms-burn-in-light.patch | 6 +- .../0088-Configurable-villager-breeding.patch | 6 +- .../0089-Redstone-deactivates-spawners.patch | 4 +- .../0090-Totems-work-in-inventory.patch | 6 +- ...1-Add-vindicator-johnny-spawn-chance.patch | 6 +- .../0093-Dispensers-place-anvils-option.patch | 4 +- patches/server/0094-Allow-anvil-colors.patch | 4 +- .../0095-Add-no-random-tick-block-list.patch | 6 +- ...o-disable-dolphin-treasure-searching.patch | 6 +- ...Stop-squids-floating-on-top-of-water.patch | 6 +- ...tities-can-use-portals-configuration.patch | 6 +- ...stomizable-wither-health-and-healing.patch | 6 +- ...ggling-special-MobSpawners-per-world.patch | 8 +- .../server/0105-Raid-cooldown-setting.patch | 6 +- ...e-config-options-per-projectile-type.patch | 4 +- ...sable-zombie-aggressiveness-towards-.patch | 6 +- ...tent-TileEntity-Lore-and-DisplayName.patch | 6 +- patches/server/0110-Flying-squids-Oh-my.patch | 8 +- .../server/0111-Infinity-bow-settings.patch | 4 +- patches/server/0112-Stonecutter-damage.patch | 4 +- .../0113-Configurable-daylight-cycle.patch | 4 +- ...15-Furnace-uses-lava-from-underneath.patch | 4 +- ...re-add-farmland-mechanics-from-Alpha.patch | 4 +- ...justable-breeding-cooldown-to-config.patch | 6 +- ...e-entity-breeding-times-configurable.patch | 90 +++++++++---------- ...mes-from-item-forms-of-entities-to-e.patch | 8 +- ...-when-using-a-Name-Tag-on-an-Armor-S.patch | 4 +- ...sting-and-weeping-vines-growth-rates.patch | 6 +- ...-twisting-vines-configurable-max-gro.patch | 8 +- ...llowing-Endermen-to-despawn-even-whi.patch | 6 +- ...126-Add-configurable-snowball-damage.patch | 4 +- ...break-door-minimum-difficulty-option.patch | 6 +- ...29-Changeable-Mob-Left-Handed-Chance.patch | 6 +- .../0130-Add-boat-fall-damage-config.patch | 6 +- .../0131-Snow-Golem-rate-of-fire-config.patch | 6 +- .../0134-Lobotomize-stuck-villagers.patch | 6 +- ...Villager-Clerics-to-farm-Nether-Wart.patch | 8 +- ...fied-Piglin-death-always-counting-as.patch | 6 +- ...ble-chance-for-wolves-to-spawn-rabid.patch | 6 +- ...nfigurable-default-wolf-collar-color.patch | 6 +- .../server/0140-Phantom-flames-on-swoop.patch | 6 +- ...s-to-open-even-with-a-solid-block-on.patch | 4 +- .../0143-Striders-give-saddle-back.patch | 6 +- ...therite-armor-grants-fire-resistance.patch | 4 +- ...iefing-bypass-to-everything-affected.patch | 70 +++++++-------- ...allow-Note-Block-sounds-when-blocked.patch | 6 +- ...0150-Add-EntityTeleportHinderedEvent.patch | 8 +- .../0152-Farmland-trampling-changes.patch | 4 +- ...53-Movement-options-for-armor-stands.patch | 4 +- .../server/0154-Fix-stuck-in-portals.patch | 6 +- ...oggle-for-water-sensitive-mob-damage.patch | 20 ++--- ...56-Config-to-always-tame-in-Creative.patch | 6 +- .../0157-End-crystal-explosion-options.patch | 4 +- ...ither-Ender-Dragon-can-ride-vehicles.patch | 10 +-- .../server/0160-Dont-run-with-scissors.patch | 10 +-- patches/server/0161-One-Punch-Man.patch | 6 +- ...0162-Add-config-for-snow-on-blue-ice.patch | 4 +- ...er-Pearl-cooldown-damage-and-Endermi.patch | 6 +- ...-to-ignore-nearby-mobs-when-sleeping.patch | 6 +- ...an-aggressiveness-towards-Endermites.patch | 6 +- ...-Dragon-Head-wearers-and-stare-aggro.patch | 6 +- patches/server/0168-Tick-fluids-config.patch | 6 +- ...169-Config-to-disable-Llama-caravans.patch | 6 +- ...ig-to-make-Creepers-explode-on-death.patch | 6 +- ...urable-ravager-griefable-blocks-list.patch | 6 +- ...0172-Sneak-to-bulk-process-composter.patch | 4 +- .../0173-Config-for-skipping-night.patch | 6 +- ...0174-Add-config-for-villager-trading.patch | 12 +-- patches/server/0176-Drowning-Settings.patch | 4 +- ...Break-individual-slabs-when-sneaking.patch | 4 +- ...-to-disable-hostile-mob-spawn-on-ice.patch | 4 +- ...ig-to-show-Armor-Stand-arms-on-spawn.patch | 6 +- ...ption-to-make-doors-require-redstone.patch | 4 +- .../0182-Configurable-sponge-absorption.patch | 4 +- .../0183-Projectile-offset-config.patch | 4 +- ...for-powered-rail-activation-distance.patch | 4 +- .../0185-Piglin-portal-spawn-modifier.patch | 6 +- ...ble-damage-settings-for-magma-blocks.patch | 4 +- ...8-Config-for-wither-explosion-radius.patch | 6 +- ...ing-the-blocks-that-turn-into-dirt-p.patch | 4 +- .../0191-Configurable-piston-push-limit.patch | 4 +- .../0194-Configurable-mob-blindness.patch | 6 +- ...h-to-impact-Creeper-explosion-radius.patch | 6 +- .../0197-Iron-golem-poppy-calms-anger.patch | 6 +- patches/server/0198-Breedable-parrots.patch | 6 +- ...igurable-powered-rail-boost-modifier.patch | 6 +- ...nge-multiplier-critical-damage-value.patch | 6 +- ...on-to-disable-dragon-egg-teleporting.patch | 4 +- ...04-ShulkerBox-allow-oversized-stacks.patch | 4 +- ...ee-can-work-when-raining-or-at-night.patch | 6 +- .../0208-Config-MobEffect-by-world.patch | 4 +- ...Beacon-Activation-Range-Configurable.patch | 4 +- .../0210-Add-toggle-for-sand-duping-fix.patch | 4 +- ...ggle-for-end-portal-safe-teleporting.patch | 4 +- ...ing-food-fills-hunger-bar-completely.patch | 6 +- .../server/0216-Populator-seed-controls.patch | 4 +- ...18-Shulker-spawn-from-bullet-options.patch | 6 +- ...Eating-glow-berries-adds-glow-effect.patch | 6 +- ...0-Option-to-make-drowned-break-doors.patch | 6 +- ...onfigurable-hunger-starvation-damage.patch | 4 +- .../0223-Armor-click-equip-options.patch | 6 +- .../server/0226-Tool-actionable-options.patch | 4 +- ...e-shulker-box-items-from-dropping-co.patch | 6 +- ...0232-Silk-touchable-budding-amethyst.patch | 4 +- .../server/0233-Big-dripleaf-tilt-delay.patch | 52 +++++++++++ 155 files changed, 568 insertions(+), 515 deletions(-) create mode 100644 patches/server/0233-Big-dripleaf-tilt-delay.patch diff --git a/patches/server/0003-Purpur-config-files.patch b/patches/server/0003-Purpur-config-files.patch index 29212b9ed..8be63565a 100644 --- a/patches/server/0003-Purpur-config-files.patch +++ b/patches/server/0003-Purpur-config-files.patch @@ -288,10 +288,10 @@ index 0000000000000000000000000000000000000000..d0d87fcca78ea5c7853d693bc617c2bd +} diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java new file mode 100644 -index 0000000000000000000000000000000000000000..15472bf9cfd279b1873f7a20c250a2c089debad1 +index 0000000000000000000000000000000000000000..683ee20f08eac69238bea33021e35b1838c44a8b --- /dev/null +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -0,0 +1,94 @@ +@@ -0,0 +1,95 @@ +package net.pl3x.purpur; + +import net.minecraft.core.Registry; @@ -304,6 +304,7 @@ index 0000000000000000000000000000000000000000..15472bf9cfd279b1873f7a20c250a2c0 +import net.minecraft.world.level.Explosion; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; ++import net.minecraft.world.level.block.state.properties.Tilt; +import net.pl3x.purpur.tool.Strippable; +import net.pl3x.purpur.tool.Tillable; +import net.pl3x.purpur.tool.Waxable; diff --git a/patches/server/0005-Ridables.patch b/patches/server/0005-Ridables.patch index 58f428b27..bcf2350dc 100644 --- a/patches/server/0005-Ridables.patch +++ b/patches/server/0005-Ridables.patch @@ -4540,10 +4540,10 @@ index d0d87fcca78ea5c7853d693bc617c2bd6cfed487..773e42ff93e01b9f2db41dc4e8273525 + } } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 15472bf9cfd279b1873f7a20c250a2c089debad1..59c424426e0eddd0b62db769ec289f5903583a84 100644 +index 683ee20f08eac69238bea33021e35b1838c44a8b..3f91e7f49a1f00ff21fd65ea443af02729b7cc10 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -91,4 +91,532 @@ public class PurpurWorldConfig { +@@ -92,4 +92,532 @@ public class PurpurWorldConfig { final Map value = PurpurConfig.getMap("world-settings." + worldName + "." + path, null); return value.isEmpty() ? fallback : value; } diff --git a/patches/server/0006-Configurable-entity-base-attributes.patch b/patches/server/0006-Configurable-entity-base-attributes.patch index b4ff175ec..7196f925b 100644 --- a/patches/server/0006-Configurable-entity-base-attributes.patch +++ b/patches/server/0006-Configurable-entity-base-attributes.patch @@ -1422,10 +1422,10 @@ index d6c31596e21041a124a263054ccb6447829eccdd..d2588a91b55aebdecf8e1644498111cc @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 59c424426e0eddd0b62db769ec289f5903583a84..332754f541165590ecd96d650f16f40924b4263a 100644 +index 3f91e7f49a1f00ff21fd65ea443af02729b7cc10..3627b50dd3af5da225004cd3f8158fcbd30d8ea3 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -102,257 +102,573 @@ public class PurpurWorldConfig { +@@ -103,257 +103,573 @@ public class PurpurWorldConfig { } public boolean axolotlRidable = false; @@ -1999,7 +1999,7 @@ index 59c424426e0eddd0b62db769ec289f5903583a84..332754f541165590ecd96d650f16f409 } public boolean phantomRidable = false; -@@ -361,6 +677,7 @@ public class PurpurWorldConfig { +@@ -362,6 +678,7 @@ public class PurpurWorldConfig { public float phantomFlameDamage = 1.0F; public int phantomFlameFireTime = 8; public boolean phantomAllowGriefing = false; @@ -2007,7 +2007,7 @@ index 59c424426e0eddd0b62db769ec289f5903583a84..332754f541165590ecd96d650f16f409 private void phantomSettings() { phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable); phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater); -@@ -368,255 +685,559 @@ public class PurpurWorldConfig { +@@ -369,255 +686,559 @@ public class PurpurWorldConfig { phantomFlameDamage = (float) getDouble("mobs.phantom.flames.damage", phantomFlameDamage); phantomFlameFireTime = getInt("mobs.phantom.flames.fire-time", phantomFlameFireTime); phantomAllowGriefing = getBoolean("mobs.phantom.allow-griefing", phantomAllowGriefing); diff --git a/patches/server/0011-AFK-API.patch b/patches/server/0011-AFK-API.patch index 1f8a63284..275ad49a8 100644 --- a/patches/server/0011-AFK-API.patch +++ b/patches/server/0011-AFK-API.patch @@ -68,7 +68,7 @@ index bd787b4122502eacacadd8d47ea5aa5dc5e023e5..22366098d0a3f6df2ba650ef01ed4be7 return this.stats; } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 0a7d339a1b52f5b70830708d5eabac3f8d85f888..d2270b53e6a8f74f7382d5c4dc4474a3a8d83fa4 100644 +index e43239fd04e81b3653c07cc441be1a4036b96b97..8414826f6f9204bdda832efcb00e24ab0115bd59 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -390,6 +390,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -198,10 +198,10 @@ index b0180b1a8ecfd14cb5b95de0145f88dc7354928b..b36ea5fc2259d0d8a5302b9f60172cfe public static String timingsUrl = "https://timings.pl3x.net"; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 332754f541165590ecd96d650f16f40924b4263a..bfc1077dc7d5cfb48f5cc98b289b98d44474280e 100644 +index 3627b50dd3af5da225004cd3f8158fcbd30d8ea3..dc3dcf7946d2b31784b31d31c01670b81e626eed 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -92,6 +92,17 @@ public class PurpurWorldConfig { +@@ -93,6 +93,17 @@ public class PurpurWorldConfig { return value.isEmpty() ? fallback : value; } @@ -220,7 +220,7 @@ index 332754f541165590ecd96d650f16f40924b4263a..bfc1077dc7d5cfb48f5cc98b289b98d4 public boolean untamedTamablesAreRidable = true; public boolean useNightVisionWhenRiding = false; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 5b2fcfac84f13ac2321676e484372597e8c665d0..fec91a0e13e861d05b566891e4809644e6dd1909 100644 +index 538beaedac3f8fe85fe5125cce1043706a295f89..d18a46745a82a758a3709ffa1de4b81bf4b75766 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -424,10 +424,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0019-Player-invulnerabilities.patch b/patches/server/0019-Player-invulnerabilities.patch index 8e63e16d7..2d002ecdd 100644 --- a/patches/server/0019-Player-invulnerabilities.patch +++ b/patches/server/0019-Player-invulnerabilities.patch @@ -121,10 +121,10 @@ index 6cb325b098fe64b746940ce79fd927320ec444e6..ac68314c5c2de8376e11abd95b50b4b0 return entityplayer1; } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index bfc1077dc7d5cfb48f5cc98b289b98d44474280e..90a312246e5ecdd4bbe4bc7e360ea7aa6a64953f 100644 +index dc3dcf7946d2b31784b31d31c01670b81e626eed..b1b2e96804eb9e736e634a75882dc4040e250991 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -96,11 +96,15 @@ public class PurpurWorldConfig { +@@ -97,11 +97,15 @@ public class PurpurWorldConfig { public boolean idleTimeoutTickNearbyEntities = true; public boolean idleTimeoutCountAsSleeping = false; public boolean idleTimeoutUpdateTabList = false; @@ -141,7 +141,7 @@ index bfc1077dc7d5cfb48f5cc98b289b98d44474280e..90a312246e5ecdd4bbe4bc7e360ea7aa public boolean babiesAreRidable = true; diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index fec91a0e13e861d05b566891e4809644e6dd1909..7bfcab5c4d27a95658441e77308ac5710136f5eb 100644 +index d18a46745a82a758a3709ffa1de4b81bf4b75766..1d074ecc76eaf1ae10a6bd35b2f2a54f6654260e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -2565,5 +2565,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0021-Configurable-villager-brain-ticks.patch b/patches/server/0021-Configurable-villager-brain-ticks.patch index 4721749f1..945182131 100644 --- a/patches/server/0021-Configurable-villager-brain-ticks.patch +++ b/patches/server/0021-Configurable-villager-brain-ticks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable villager brain ticks diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index b7b25813aa00a49fd83edfbade27fa03d7fcd7c5..ed96780ededea9ae98bc0fb60d250587e6bc9854 100644 +index 1b70179dfd085c0d8ec3ee18af6d0528673ca4df..311b6c0ff37ce217af9391b50208fdc63e3fe420 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -141,6 +141,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler @@ -36,10 +36,10 @@ index b7b25813aa00a49fd83edfbade27fa03d7fcd7c5..ed96780ededea9ae98bc0fb60d250587 this.level.getProfiler().pop(); if (this.assignProfessionWhenSpawned) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 90a312246e5ecdd4bbe4bc7e360ea7aa6a64953f..add5f7a9929835e7f2383ba13e50b4e8fc1b52e9 100644 +index b1b2e96804eb9e736e634a75882dc4040e250991..b0a481aed5c03acdec86969acc6485ed25af3856 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1068,6 +1068,8 @@ public class PurpurWorldConfig { +@@ -1069,6 +1069,8 @@ public class PurpurWorldConfig { public boolean villagerRidable = false; public boolean villagerRidableInWater = false; public double villagerMaxHealth = 20.0D; @@ -48,7 +48,7 @@ index 90a312246e5ecdd4bbe4bc7e360ea7aa6a64953f..add5f7a9929835e7f2383ba13e50b4e8 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1077,6 +1079,8 @@ public class PurpurWorldConfig { +@@ -1078,6 +1080,8 @@ public class PurpurWorldConfig { set("mobs.villager.attributes.max_health", oldValue); } villagerMaxHealth = getDouble("mobs.villager.attributes.max_health", villagerMaxHealth); diff --git a/patches/server/0023-Silk-touch-spawners.patch b/patches/server/0023-Silk-touch-spawners.patch index 860924318..c3c12a8c1 100644 --- a/patches/server/0023-Silk-touch-spawners.patch +++ b/patches/server/0023-Silk-touch-spawners.patch @@ -138,10 +138,10 @@ index b1e04d41de80971a7a1616beb0860226ecc25045..295ae3877b955978105b756055c21e63 return i; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index add5f7a9929835e7f2383ba13e50b4e8fc1b52e9..60787c43d992674a94b4229e27504cb5cd518cff 100644 +index b0a481aed5c03acdec86969acc6485ed25af3856..ff011f834b36f1c810bdb0a24e7bb635949fc243 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -107,6 +107,31 @@ public class PurpurWorldConfig { +@@ -108,6 +108,31 @@ public class PurpurWorldConfig { playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack); } diff --git a/patches/server/0024-MC-168772-Fix-Add-turtle-egg-block-options.patch b/patches/server/0024-MC-168772-Fix-Add-turtle-egg-block-options.patch index fc5169fc4..dbb77c41c 100644 --- a/patches/server/0024-MC-168772-Fix-Add-turtle-egg-block-options.patch +++ b/patches/server/0024-MC-168772-Fix-Add-turtle-egg-block-options.patch @@ -50,10 +50,10 @@ index fdb3ab919a78221605257ae82bfd026346ce2ffb..e98fc3c235f9160f1928a8afb0d7991a } } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 60787c43d992674a94b4229e27504cb5cd518cff..125a9e31a46cb093e6c63a6fcb63aba45060888a 100644 +index ff011f834b36f1c810bdb0a24e7bb635949fc243..b7ba610ddc7e6219292fda919ed86e008d5f775b 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1063,7 +1063,10 @@ public class PurpurWorldConfig { +@@ -1064,7 +1064,10 @@ public class PurpurWorldConfig { public boolean turtleRidable = false; public boolean turtleRidableInWater = false; public double turtleMaxHealth = 30.0D; @@ -65,7 +65,7 @@ index 60787c43d992674a94b4229e27504cb5cd518cff..125a9e31a46cb093e6c63a6fcb63aba4 turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable); turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater); if (PurpurConfig.version < 10) { -@@ -1072,6 +1075,9 @@ public class PurpurWorldConfig { +@@ -1073,6 +1076,9 @@ public class PurpurWorldConfig { set("mobs.turtle.attributes.max_health", oldValue); } turtleMaxHealth = getDouble("mobs.turtle.attributes.max_health", turtleMaxHealth); diff --git a/patches/server/0028-Giants-AI-settings.patch b/patches/server/0028-Giants-AI-settings.patch index c9929fd3a..8b3283567 100644 --- a/patches/server/0028-Giants-AI-settings.patch +++ b/patches/server/0028-Giants-AI-settings.patch @@ -120,10 +120,10 @@ index a8ffdc8810152d77668aad7bad15a00c4d194d4c..91e28c414545d2bbb4e2f22c516d0f68 } } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 125a9e31a46cb093e6c63a6fcb63aba45060888a..ce9aff038bf3f2451923a456c47998876fd3a8c8 100644 +index b7ba610ddc7e6219292fda919ed86e008d5f775b..172c9e282b295d16ef88d95bb6b621a1050dc684 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -452,6 +452,10 @@ public class PurpurWorldConfig { +@@ -453,6 +453,10 @@ public class PurpurWorldConfig { public double giantMovementSpeed = 0.5D; public double giantAttackDamage = 50.0D; public double giantMaxHealth = 100.0D; @@ -134,7 +134,7 @@ index 125a9e31a46cb093e6c63a6fcb63aba45060888a..ce9aff038bf3f2451923a456c4799887 private void giantSettings() { giantRidable = getBoolean("mobs.giant.ridable", giantRidable); giantRidableInWater = getBoolean("mobs.giant.ridable-in-water", giantRidableInWater); -@@ -467,6 +471,10 @@ public class PurpurWorldConfig { +@@ -468,6 +472,10 @@ public class PurpurWorldConfig { set("mobs.giant.attributes.max_health", oldValue); } giantMaxHealth = getDouble("mobs.giant.attributes.max_health", giantMaxHealth); diff --git a/patches/server/0029-Zombie-horse-naturally-spawn.patch b/patches/server/0029-Zombie-horse-naturally-spawn.patch index f9e73b360..47fba097c 100644 --- a/patches/server/0029-Zombie-horse-naturally-spawn.patch +++ b/patches/server/0029-Zombie-horse-naturally-spawn.patch @@ -28,10 +28,10 @@ index 7c45fdbd9f389e8b74de5a672a9520ede93d6217..d53497ca3ada4c1205695f54dd7e163f entityhorseskeleton.setPos((double) blockposition.getX(), (double) blockposition.getY(), (double) blockposition.getZ()); this.addEntity(entityhorseskeleton, org.bukkit.event.entity.CreatureSpawnEvent.SpawnReason.LIGHTNING); // CraftBukkit diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index ce9aff038bf3f2451923a456c47998876fd3a8c8..4c45a692a62fd451718c72ce031552bcd0261048 100644 +index 172c9e282b295d16ef88d95bb6b621a1050dc684..8462e9221c136cda32f0fe2471d851ceaa08b721 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1250,6 +1250,7 @@ public class PurpurWorldConfig { +@@ -1251,6 +1251,7 @@ public class PurpurWorldConfig { public double zombieHorseJumpStrengthMax = 1.0D; public double zombieHorseMovementSpeedMin = 0.2D; public double zombieHorseMovementSpeedMax = 0.2D; @@ -39,7 +39,7 @@ index ce9aff038bf3f2451923a456c47998876fd3a8c8..4c45a692a62fd451718c72ce031552bc private void zombieHorseSettings() { zombieHorseRidableInWater = getBoolean("mobs.zombie_horse.ridable-in-water", zombieHorseRidableInWater); zombieHorseCanSwim = getBoolean("mobs.zombie_horse.can-swim", zombieHorseCanSwim); -@@ -1265,6 +1266,7 @@ public class PurpurWorldConfig { +@@ -1266,6 +1267,7 @@ public class PurpurWorldConfig { zombieHorseJumpStrengthMax = getDouble("mobs.zombie_horse.attributes.jump_strength.max", zombieHorseJumpStrengthMax); zombieHorseMovementSpeedMin = getDouble("mobs.zombie_horse.attributes.movement_speed.min", zombieHorseMovementSpeedMin); zombieHorseMovementSpeedMax = getDouble("mobs.zombie_horse.attributes.movement_speed.max", zombieHorseMovementSpeedMax); diff --git a/patches/server/0030-Charged-creeper-naturally-spawn.patch b/patches/server/0030-Charged-creeper-naturally-spawn.patch index 7d682a836..da0422d6d 100644 --- a/patches/server/0030-Charged-creeper-naturally-spawn.patch +++ b/patches/server/0030-Charged-creeper-naturally-spawn.patch @@ -24,10 +24,10 @@ index b71a6af3c2d1ca2a946b23efb11b0e794840cf25..b2b3630a90c685b0a692efb9bf8bb111 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 4c45a692a62fd451718c72ce031552bcd0261048..b8dcd087a87e031aeca1e3c4c68aaaefd18164b7 100644 +index 8462e9221c136cda32f0fe2471d851ceaa08b721..b1d8f125e873793cc1ef616fb27e22329e2ad14f 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -274,6 +274,7 @@ public class PurpurWorldConfig { +@@ -275,6 +275,7 @@ public class PurpurWorldConfig { public boolean creeperRidable = false; public boolean creeperRidableInWater = false; public double creeperMaxHealth = 20.0D; @@ -35,7 +35,7 @@ index 4c45a692a62fd451718c72ce031552bcd0261048..b8dcd087a87e031aeca1e3c4c68aaaef private void creeperSettings() { creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable); creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater); -@@ -283,6 +284,7 @@ public class PurpurWorldConfig { +@@ -284,6 +285,7 @@ public class PurpurWorldConfig { set("mobs.creeper.attributes.max_health", oldValue); } creeperMaxHealth = getDouble("mobs.creeper.attributes.max_health", creeperMaxHealth); diff --git a/patches/server/0031-Rabbit-naturally-spawn-toast-and-killer.patch b/patches/server/0031-Rabbit-naturally-spawn-toast-and-killer.patch index d22acd5d0..ffc6ad9e6 100644 --- a/patches/server/0031-Rabbit-naturally-spawn-toast-and-killer.patch +++ b/patches/server/0031-Rabbit-naturally-spawn-toast-and-killer.patch @@ -38,10 +38,10 @@ index 587feda351efae19407cb9f23c6c1d42d5ed0cc9..e0ba1ef404c9f8ba1eae563b733d10d9 int i = this.random.nextInt(100); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b8dcd087a87e031aeca1e3c4c68aaaefd18164b7..8a502e31350e6e2aa829f3601ceaffded6c621ce 100644 +index b1d8f125e873793cc1ef616fb27e22329e2ad14f..3e321853052a888e058cb02c5fb8ad430db24fcd 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -828,6 +828,8 @@ public class PurpurWorldConfig { +@@ -829,6 +829,8 @@ public class PurpurWorldConfig { public boolean rabbitRidable = false; public boolean rabbitRidableInWater = false; public double rabbitMaxHealth = 3.0D; @@ -50,7 +50,7 @@ index b8dcd087a87e031aeca1e3c4c68aaaefd18164b7..8a502e31350e6e2aa829f3601ceaffde private void rabbitSettings() { rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable); rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater); -@@ -837,6 +839,8 @@ public class PurpurWorldConfig { +@@ -838,6 +840,8 @@ public class PurpurWorldConfig { set("mobs.rabbit.attributes.max_health", oldValue); } rabbitMaxHealth = getDouble("mobs.rabbit.attributes.max_health", rabbitMaxHealth); diff --git a/patches/server/0034-Tulips-change-fox-type.patch b/patches/server/0034-Tulips-change-fox-type.patch index 6ce3789c7..ac89e2c19 100644 --- a/patches/server/0034-Tulips-change-fox-type.patch +++ b/patches/server/0034-Tulips-change-fox-type.patch @@ -75,10 +75,10 @@ index 80749df5d00df415a1b9e7c0e8586625b6453ffb..406b6ed8084c18da1062d8e8049bdfff // Paper start - Cancellable death event protected org.bukkit.event.entity.EntityDeathEvent dropAllDeathLoot(DamageSource source) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 8a502e31350e6e2aa829f3601ceaffded6c621ce..8fff2beaaf58e683abb8251c351035bcf48509de 100644 +index 3e321853052a888e058cb02c5fb8ad430db24fcd..27cb366bf8c16bd806838e73d6f555d1de113599 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -422,6 +422,7 @@ public class PurpurWorldConfig { +@@ -423,6 +423,7 @@ public class PurpurWorldConfig { public boolean foxRidable = false; public boolean foxRidableInWater = false; public double foxMaxHealth = 10.0D; @@ -86,7 +86,7 @@ index 8a502e31350e6e2aa829f3601ceaffded6c621ce..8fff2beaaf58e683abb8251c351035bc private void foxSettings() { foxRidable = getBoolean("mobs.fox.ridable", foxRidable); foxRidableInWater = getBoolean("mobs.fox.ridable-in-water", foxRidableInWater); -@@ -431,6 +432,7 @@ public class PurpurWorldConfig { +@@ -432,6 +433,7 @@ public class PurpurWorldConfig { set("mobs.fox.attributes.max_health", oldValue); } foxMaxHealth = getDouble("mobs.fox.attributes.max_health", foxMaxHealth); diff --git a/patches/server/0035-Breedable-Polar-Bears.patch b/patches/server/0035-Breedable-Polar-Bears.patch index 41b8a5007..5349fdb20 100644 --- a/patches/server/0035-Breedable-Polar-Bears.patch +++ b/patches/server/0035-Breedable-Polar-Bears.patch @@ -59,10 +59,10 @@ index 18780fb268cabb47bb0deb84c44520831c1a762b..d39c88af3882a09ff1a06f9052d7b9b8 this.goalSelector.addGoal(5, new RandomStrollGoal(this, 1.0D)); this.goalSelector.addGoal(6, new LookAtPlayerGoal(this, Player.class, 6.0F)); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 8fff2beaaf58e683abb8251c351035bcf48509de..949c301a97939e92d7a64ac8473e0ebe8ee27c30 100644 +index 27cb366bf8c16bd806838e73d6f555d1de113599..ab2613440645388949b17e69d765ba3b2b48028a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -804,6 +804,8 @@ public class PurpurWorldConfig { +@@ -805,6 +805,8 @@ public class PurpurWorldConfig { public boolean polarBearRidable = false; public boolean polarBearRidableInWater = false; public double polarBearMaxHealth = 30.0D; @@ -71,7 +71,7 @@ index 8fff2beaaf58e683abb8251c351035bcf48509de..949c301a97939e92d7a64ac8473e0ebe private void polarBearSettings() { polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable); polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater); -@@ -813,6 +815,9 @@ public class PurpurWorldConfig { +@@ -814,6 +816,9 @@ public class PurpurWorldConfig { set("mobs.polar_bear.attributes.max_health", oldValue); } polarBearMaxHealth = getDouble("mobs.polar_bear.attributes.max_health", polarBearMaxHealth); diff --git a/patches/server/0036-Chickens-can-retaliate.patch b/patches/server/0036-Chickens-can-retaliate.patch index 9500479c5..930305129 100644 --- a/patches/server/0036-Chickens-can-retaliate.patch +++ b/patches/server/0036-Chickens-can-retaliate.patch @@ -51,10 +51,10 @@ index 55dccf338f9fba17fbcb88672d36b83e7bbec88b..eaec6eba96db3b8ce046208a4a1e5fc4 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 949c301a97939e92d7a64ac8473e0ebe8ee27c30..fdbfd3ffde05f2787ad319801e845e51cd516671 100644 +index ab2613440645388949b17e69d765ba3b2b48028a..4edd192b852ae0d4f835eb9f0db563822b9bc12d 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -234,6 +234,7 @@ public class PurpurWorldConfig { +@@ -235,6 +235,7 @@ public class PurpurWorldConfig { public boolean chickenRidable = false; public boolean chickenRidableInWater = false; public double chickenMaxHealth = 4.0D; @@ -62,7 +62,7 @@ index 949c301a97939e92d7a64ac8473e0ebe8ee27c30..fdbfd3ffde05f2787ad319801e845e51 private void chickenSettings() { chickenRidable = getBoolean("mobs.chicken.ridable", chickenRidable); chickenRidableInWater = getBoolean("mobs.chicken.ridable-in-water", chickenRidableInWater); -@@ -243,6 +244,7 @@ public class PurpurWorldConfig { +@@ -244,6 +245,7 @@ public class PurpurWorldConfig { set("mobs.chicken.attributes.max_health", oldValue); } chickenMaxHealth = getDouble("mobs.chicken.attributes.max_health", chickenMaxHealth); diff --git a/patches/server/0037-Add-option-to-set-armorstand-step-height.patch b/patches/server/0037-Add-option-to-set-armorstand-step-height.patch index dfc6e7842..56b68c65f 100644 --- a/patches/server/0037-Add-option-to-set-armorstand-step-height.patch +++ b/patches/server/0037-Add-option-to-set-armorstand-step-height.patch @@ -17,10 +17,10 @@ index 5fc66d7096afcfe63eba774e1dc330ac3263e4b0..7a3a364f5e3b025cc0a5694401cb9298 if (!this.canTick) { if (this.noTickPoseDirty) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index fdbfd3ffde05f2787ad319801e845e51cd516671..0edf2a2bbeabba2f90f3611de937f287aee5d194 100644 +index 4edd192b852ae0d4f835eb9f0db563822b9bc12d..0c62450f7403d93df981ef957f6747cef9c6f228 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -92,6 +92,11 @@ public class PurpurWorldConfig { +@@ -93,6 +93,11 @@ public class PurpurWorldConfig { return value.isEmpty() ? fallback : value; } diff --git a/patches/server/0038-Cat-spawning-options.patch b/patches/server/0038-Cat-spawning-options.patch index a63edf847..06942e634 100644 --- a/patches/server/0038-Cat-spawning-options.patch +++ b/patches/server/0038-Cat-spawning-options.patch @@ -49,10 +49,10 @@ index 4cab98b5e441a174482893d3d289bbafa1f7a5fc..fa3cdff99a16b67ed86c8f7940ffa139 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 0edf2a2bbeabba2f90f3611de937f287aee5d194..84520a367cf4f7a859076a24456f18d006e4247d 100644 +index 0c62450f7403d93df981ef957f6747cef9c6f228..fa010a856451abb52c17bfc8e971a4adb30f4df4 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -211,6 +211,9 @@ public class PurpurWorldConfig { +@@ -212,6 +212,9 @@ public class PurpurWorldConfig { public boolean catRidable = false; public boolean catRidableInWater = false; public double catMaxHealth = 10.0D; @@ -62,7 +62,7 @@ index 0edf2a2bbeabba2f90f3611de937f287aee5d194..84520a367cf4f7a859076a24456f18d0 private void catSettings() { catRidable = getBoolean("mobs.cat.ridable", catRidable); catRidableInWater = getBoolean("mobs.cat.ridable-in-water", catRidableInWater); -@@ -220,6 +223,9 @@ public class PurpurWorldConfig { +@@ -221,6 +224,9 @@ public class PurpurWorldConfig { set("mobs.cat.attributes.max_health", oldValue); } catMaxHealth = getDouble("mobs.cat.attributes.max_health", catMaxHealth); diff --git a/patches/server/0040-Cows-eat-mushrooms.patch b/patches/server/0040-Cows-eat-mushrooms.patch index fe322c12e..3c2920ebc 100644 --- a/patches/server/0040-Cows-eat-mushrooms.patch +++ b/patches/server/0040-Cows-eat-mushrooms.patch @@ -114,10 +114,10 @@ index bee82d5bf600cbeacfcede600e5606529af1435e..9da76357da891a70e20ad80f50873b3b public Cow getBreedOffspring(ServerLevel world, AgeableMob entity) { return (Cow) EntityType.COW.create((Level) world); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 84520a367cf4f7a859076a24456f18d006e4247d..2b938123386f9d9e3907159c2be6b6bc48b5447c 100644 +index fa010a856451abb52c17bfc8e971a4adb30f4df4..d2566e3abe1a27c4981747a94e32d6954dfce7b8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -273,6 +273,7 @@ public class PurpurWorldConfig { +@@ -274,6 +274,7 @@ public class PurpurWorldConfig { public boolean cowRidable = false; public boolean cowRidableInWater = false; public double cowMaxHealth = 10.0D; @@ -125,7 +125,7 @@ index 84520a367cf4f7a859076a24456f18d006e4247d..2b938123386f9d9e3907159c2be6b6bc private void cowSettings() { cowRidable = getBoolean("mobs.cow.ridable", cowRidable); cowRidableInWater = getBoolean("mobs.cow.ridable-in-water", cowRidableInWater); -@@ -282,6 +283,7 @@ public class PurpurWorldConfig { +@@ -283,6 +284,7 @@ public class PurpurWorldConfig { set("mobs.cow.attributes.max_health", oldValue); } cowMaxHealth = getDouble("mobs.cow.attributes.max_health", cowMaxHealth); diff --git a/patches/server/0042-Pigs-give-saddle-back.patch b/patches/server/0042-Pigs-give-saddle-back.patch index b30764fac..80af0c098 100644 --- a/patches/server/0042-Pigs-give-saddle-back.patch +++ b/patches/server/0042-Pigs-give-saddle-back.patch @@ -28,10 +28,10 @@ index f4a099e691dce3c57069e76d67859161b459098e..518d28dc0b5b8c04263c93a4347e4c97 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 2b938123386f9d9e3907159c2be6b6bc48b5447c..2ed4b811d05d53fd99be70c37ebacc867fb33da9 100644 +index d2566e3abe1a27c4981747a94e32d6954dfce7b8..6f353f5673981ff4679f5f2d434bfcad3d19592a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -763,6 +763,7 @@ public class PurpurWorldConfig { +@@ -764,6 +764,7 @@ public class PurpurWorldConfig { public boolean pigRidable = false; public boolean pigRidableInWater = false; public double pigMaxHealth = 10.0D; @@ -39,7 +39,7 @@ index 2b938123386f9d9e3907159c2be6b6bc48b5447c..2ed4b811d05d53fd99be70c37ebacc86 private void pigSettings() { pigRidable = getBoolean("mobs.pig.ridable", pigRidable); pigRidableInWater = getBoolean("mobs.pig.ridable-in-water", pigRidableInWater); -@@ -772,6 +773,7 @@ public class PurpurWorldConfig { +@@ -773,6 +774,7 @@ public class PurpurWorldConfig { set("mobs.pig.attributes.max_health", oldValue); } pigMaxHealth = getDouble("mobs.pig.attributes.max_health", pigMaxHealth); diff --git a/patches/server/0043-Snowman-drop-and-put-back-pumpkin.patch b/patches/server/0043-Snowman-drop-and-put-back-pumpkin.patch index 137a8620b..f14b4dfe9 100644 --- a/patches/server/0043-Snowman-drop-and-put-back-pumpkin.patch +++ b/patches/server/0043-Snowman-drop-and-put-back-pumpkin.patch @@ -32,10 +32,10 @@ index 7fbe1a62e9c67a8bdaf13aaa9fae1d8742d75148..0733f9c057fef17fd79a4769f19b78f4 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 2ed4b811d05d53fd99be70c37ebacc867fb33da9..469784fc896f1cc739bd4b943c170b53f74735f2 100644 +index 6f353f5673981ff4679f5f2d434bfcad3d19592a..42d7104b39eba64a41632a4b430f2bcf8b29ff01 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -994,6 +994,8 @@ public class PurpurWorldConfig { +@@ -995,6 +995,8 @@ public class PurpurWorldConfig { public boolean snowGolemRidableInWater = false; public boolean snowGolemLeaveTrailWhenRidden = false; public double snowGolemMaxHealth = 4.0D; @@ -44,7 +44,7 @@ index 2ed4b811d05d53fd99be70c37ebacc867fb33da9..469784fc896f1cc739bd4b943c170b53 private void snowGolemSettings() { snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable); snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater); -@@ -1004,6 +1006,8 @@ public class PurpurWorldConfig { +@@ -1005,6 +1007,8 @@ public class PurpurWorldConfig { set("mobs.snow_golem.attributes.max_health", oldValue); } snowGolemMaxHealth = getDouble("mobs.snow_golem.attributes.max_health", snowGolemMaxHealth); diff --git a/patches/server/0044-Ender-dragon-always-drop-full-exp.patch b/patches/server/0044-Ender-dragon-always-drop-full-exp.patch index d79b11f4a..c0d16f895 100644 --- a/patches/server/0044-Ender-dragon-always-drop-full-exp.patch +++ b/patches/server/0044-Ender-dragon-always-drop-full-exp.patch @@ -18,10 +18,10 @@ index d3caa18f5de2d96eae691655dd13e83f82c61e0c..f637cd740ec3801ce1c387473b5c4ff6 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 469784fc896f1cc739bd4b943c170b53f74735f2..0c026a779905d3e0947ac4a91397f82ac5d2921b 100644 +index 42d7104b39eba64a41632a4b430f2bcf8b29ff01..58a3023d7b2c55d08529d0f51f296f910a45594d 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -376,6 +376,7 @@ public class PurpurWorldConfig { +@@ -377,6 +377,7 @@ public class PurpurWorldConfig { public boolean enderDragonRidableInWater = false; public double enderDragonMaxY = 256D; public double enderDragonMaxHealth = 200.0D; @@ -29,7 +29,7 @@ index 469784fc896f1cc739bd4b943c170b53f74735f2..0c026a779905d3e0947ac4a91397f82a private void enderDragonSettings() { enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable); enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater); -@@ -390,6 +391,7 @@ public class PurpurWorldConfig { +@@ -391,6 +392,7 @@ public class PurpurWorldConfig { set("mobs.ender_dragon.attributes.max_health", oldValue); } enderDragonMaxHealth = getDouble("mobs.ender_dragon.attributes.max_health", enderDragonMaxHealth); diff --git a/patches/server/0045-Signs-editable-on-right-click.patch b/patches/server/0045-Signs-editable-on-right-click.patch index 699ff8d71..da3df9b86 100644 --- a/patches/server/0045-Signs-editable-on-right-click.patch +++ b/patches/server/0045-Signs-editable-on-right-click.patch @@ -35,10 +35,10 @@ index 1844ea93f8cea420f01937f85ed17c0ec1bb8bf0..9e80ba8970cad91ea22ac701f76e1413 } else { return InteractionResult.PASS; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 0c026a779905d3e0947ac4a91397f82ac5d2921b..82e79d28a75a0610e37044cf3df2e23e9fa088ff 100644 +index 58a3023d7b2c55d08529d0f51f296f910a45594d..d11e315819cdcb1f4a0febeecaa6549e4a2f7e11 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -137,6 +137,11 @@ public class PurpurWorldConfig { +@@ -138,6 +138,11 @@ public class PurpurWorldConfig { }); } diff --git a/patches/server/0046-Signs-allow-color-codes.patch b/patches/server/0046-Signs-allow-color-codes.patch index f2e8da55d..7355d39ae 100644 --- a/patches/server/0046-Signs-allow-color-codes.patch +++ b/patches/server/0046-Signs-allow-color-codes.patch @@ -70,10 +70,10 @@ index 344d3a8c1162f1a4ab5fc2b7676680ddace46649..156a153abe59f86db7f942155d8a21de @Override public ClientboundBlockEntityDataPacket getUpdatePacket() { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 82e79d28a75a0610e37044cf3df2e23e9fa088ff..1849f7970c5356f84a2b50a2a1f1b9742d822c67 100644 +index d11e315819cdcb1f4a0febeecaa6549e4a2f7e11..74d40217bfea2e8774f06522a02373666c84a003 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -137,8 +137,10 @@ public class PurpurWorldConfig { +@@ -138,8 +138,10 @@ public class PurpurWorldConfig { }); } diff --git a/patches/server/0047-Allow-soil-to-moisten-from-water-directly-under-it.patch b/patches/server/0047-Allow-soil-to-moisten-from-water-directly-under-it.patch index 43f7a9927..22b1b1ee2 100644 --- a/patches/server/0047-Allow-soil-to-moisten-from-water-directly-under-it.patch +++ b/patches/server/0047-Allow-soil-to-moisten-from-water-directly-under-it.patch @@ -18,10 +18,10 @@ index a242a80b16c7d074d52a52728646224b1a0091d4..ee5bc54e37e5ae120e846ddd2cae5ca3 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 1849f7970c5356f84a2b50a2a1f1b9742d822c67..8164b35f2c2d80a6b75ac10bd4fe293e47da3eba 100644 +index 74d40217bfea2e8774f06522a02373666c84a003..29c0d3ea1eb0e14b0c58c540512aa0c4c7feac1f 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -137,6 +137,11 @@ public class PurpurWorldConfig { +@@ -138,6 +138,11 @@ public class PurpurWorldConfig { }); } diff --git a/patches/server/0048-Minecart-settings-and-WASD-controls.patch b/patches/server/0048-Minecart-settings-and-WASD-controls.patch index 1f936b11a..187e7eba5 100644 --- a/patches/server/0048-Minecart-settings-and-WASD-controls.patch +++ b/patches/server/0048-Minecart-settings-and-WASD-controls.patch @@ -148,10 +148,10 @@ index 04d5ef90cd4171f9360017ac0c01ce48ae6ec983..7538262e14c86e4da9cd4cb887b76f64 protected final float explosionResistance; protected final boolean isRandomlyTicking; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 8164b35f2c2d80a6b75ac10bd4fe293e47da3eba..47dc4ea4779ff72d0fd204e5c360cba415544325 100644 +index 29c0d3ea1eb0e14b0c58c540512aa0c4c7feac1f..63ee287bb2baa87f56a3a59e4859a0cfe38e696b 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -97,6 +97,68 @@ public class PurpurWorldConfig { +@@ -98,6 +98,68 @@ public class PurpurWorldConfig { armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight); } diff --git a/patches/server/0049-Disable-loot-drops-on-death-by-cramming.patch b/patches/server/0049-Disable-loot-drops-on-death-by-cramming.patch index e468a2ca0..595d1631d 100644 --- a/patches/server/0049-Disable-loot-drops-on-death-by-cramming.patch +++ b/patches/server/0049-Disable-loot-drops-on-death-by-cramming.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Disable loot drops on death by cramming diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index ef9cb7eba59e4a1f730cc608d7aece77de8b0e4d..a88b37884e564303a86422cf50faadaf41b9d3f3 100644 +index c59882224b44d1d477ca8d84155b7f3b9f7da0ce..172f7746a93afa1ee7990eeab1d3da2fc210aa99 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1707,8 +1707,10 @@ public abstract class LivingEntity extends Entity { @@ -20,10 +20,10 @@ index ef9cb7eba59e4a1f730cc608d7aece77de8b0e4d..a88b37884e564303a86422cf50faadaf // CraftBukkit start - Call death event org.bukkit.event.entity.EntityDeathEvent deathEvent = CraftEventFactory.callEntityDeathEvent(this, this.drops); // Paper diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 47dc4ea4779ff72d0fd204e5c360cba415544325..1b305531e884eba8511944b518b69bcac199b631 100644 +index 63ee287bb2baa87f56a3a59e4859a0cfe38e696b..85c6d25580ebcb885e82b21bdac5330583825430 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -199,6 +199,11 @@ public class PurpurWorldConfig { +@@ -200,6 +200,11 @@ public class PurpurWorldConfig { }); } diff --git a/patches/server/0050-Players-should-not-cram-to-death.patch b/patches/server/0050-Players-should-not-cram-to-death.patch index 1d70535c0..f70f8f850 100644 --- a/patches/server/0050-Players-should-not-cram-to-death.patch +++ b/patches/server/0050-Players-should-not-cram-to-death.patch @@ -18,10 +18,10 @@ index 394da2bb29809477351da3cb782bf5b8e3aadc3b..c5618b6231ffcb711cf9e2b2d6b739e4 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 1b305531e884eba8511944b518b69bcac199b631..9e105df03e783bd2f29786230a2a66a46ab572e3 100644 +index 85c6d25580ebcb885e82b21bdac5330583825430..5fd8eb62a249987cfe9e232724f58dd44a7e4837 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -165,6 +165,7 @@ public class PurpurWorldConfig { +@@ -166,6 +166,7 @@ public class PurpurWorldConfig { public boolean idleTimeoutUpdateTabList = false; public int playerSpawnInvulnerableTicks = 60; public boolean playerInvulnerableWhileAcceptingResourcePack = false; @@ -29,7 +29,7 @@ index 1b305531e884eba8511944b518b69bcac199b631..9e105df03e783bd2f29786230a2a66a4 private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -172,6 +173,7 @@ public class PurpurWorldConfig { +@@ -173,6 +174,7 @@ public class PurpurWorldConfig { idleTimeoutUpdateTabList = getBoolean("gameplay-mechanics.player.idle-timeout.update-tab-list", idleTimeoutUpdateTabList); playerSpawnInvulnerableTicks = getInt("gameplay-mechanics.player.spawn-invulnerable-ticks", playerSpawnInvulnerableTicks); playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack); diff --git a/patches/server/0051-Option-to-toggle-milk-curing-bad-omen.patch b/patches/server/0051-Option-to-toggle-milk-curing-bad-omen.patch index c3f31836b..827c84187 100644 --- a/patches/server/0051-Option-to-toggle-milk-curing-bad-omen.patch +++ b/patches/server/0051-Option-to-toggle-milk-curing-bad-omen.patch @@ -28,10 +28,10 @@ index f33977d95b6db473be4f95075ba99caf90ad0220..56dc04d8875971ee9a5d077a695509af return stack.isEmpty() ? new ItemStack(Items.BUCKET) : stack; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 9e105df03e783bd2f29786230a2a66a46ab572e3..c612eaaef7072e6d737b52bcb9dc425e5af6154c 100644 +index 5fd8eb62a249987cfe9e232724f58dd44a7e4837..cb86a58f96c8d9b91c69603dbd507fcb81a45cfd 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -202,8 +202,10 @@ public class PurpurWorldConfig { +@@ -203,8 +203,10 @@ public class PurpurWorldConfig { } public boolean disableDropsOnCrammingDeath = false; diff --git a/patches/server/0057-Add-option-to-allow-loyalty-on-tridents-to-work-in-t.patch b/patches/server/0057-Add-option-to-allow-loyalty-on-tridents-to-work-in-t.patch index 4e942beb4..b4c1b2efb 100644 --- a/patches/server/0057-Add-option-to-allow-loyalty-on-tridents-to-work-in-t.patch +++ b/patches/server/0057-Add-option-to-allow-loyalty-on-tridents-to-work-in-t.patch @@ -18,10 +18,10 @@ index c95eef8596fe3e1ca83e620a6c54b164c797cbe1..1e6a5404d767318de29184b3e3a2bc41 if (!this.level.isClientSide && this.pickup == AbstractArrow.Pickup.ALLOWED) { this.spawnAtLocation(this.getPickupItem(), 0.1F); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index c612eaaef7072e6d737b52bcb9dc425e5af6154c..f390aec2afc030a7de92b5be1c21ee751ea686f7 100644 +index cb86a58f96c8d9b91c69603dbd507fcb81a45cfd..cb44ee2bb42963d9adb8abb813a27fa18670a02e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -203,9 +203,11 @@ public class PurpurWorldConfig { +@@ -204,9 +204,11 @@ public class PurpurWorldConfig { public boolean disableDropsOnCrammingDeath = false; public boolean milkCuresBadOmen = true; diff --git a/patches/server/0058-Add-enderman-and-creeper-griefing-controls.patch b/patches/server/0058-Add-enderman-and-creeper-griefing-controls.patch index d09290482..deb22526d 100644 --- a/patches/server/0058-Add-enderman-and-creeper-griefing-controls.patch +++ b/patches/server/0058-Add-enderman-and-creeper-griefing-controls.patch @@ -38,10 +38,10 @@ index b061ecc42122ef66fbf87fe017023abca5728a01..6e0b5fbf5b0d216b6b7c647d45ef37cd } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index f390aec2afc030a7de92b5be1c21ee751ea686f7..b1f0d9f958fa414fff40725575f852af42c83161 100644 +index cb44ee2bb42963d9adb8abb813a27fa18670a02e..38b94f99f6c45f3144f7b262e5cc2b40045b6b04 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -375,6 +375,7 @@ public class PurpurWorldConfig { +@@ -376,6 +376,7 @@ public class PurpurWorldConfig { public boolean creeperRidableInWater = false; public double creeperMaxHealth = 20.0D; public double creeperChargedChance = 0.0D; @@ -49,7 +49,7 @@ index f390aec2afc030a7de92b5be1c21ee751ea686f7..b1f0d9f958fa414fff40725575f852af private void creeperSettings() { creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable); creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater); -@@ -385,6 +386,7 @@ public class PurpurWorldConfig { +@@ -386,6 +387,7 @@ public class PurpurWorldConfig { } creeperMaxHealth = getDouble("mobs.creeper.attributes.max_health", creeperMaxHealth); creeperChargedChance = getDouble("mobs.creeper.naturally-charged-chance", creeperChargedChance); @@ -57,7 +57,7 @@ index f390aec2afc030a7de92b5be1c21ee751ea686f7..b1f0d9f958fa414fff40725575f852af } public boolean dolphinRidable = false; -@@ -482,6 +484,7 @@ public class PurpurWorldConfig { +@@ -483,6 +485,7 @@ public class PurpurWorldConfig { public boolean endermanRidable = false; public boolean endermanRidableInWater = false; public double endermanMaxHealth = 40.0D; @@ -65,7 +65,7 @@ index f390aec2afc030a7de92b5be1c21ee751ea686f7..b1f0d9f958fa414fff40725575f852af private void endermanSettings() { endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable); endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater); -@@ -491,6 +494,7 @@ public class PurpurWorldConfig { +@@ -492,6 +495,7 @@ public class PurpurWorldConfig { set("mobs.enderman.attributes.max_health", oldValue); } endermanMaxHealth = getDouble("mobs.enderman.attributes.max_health", endermanMaxHealth); diff --git a/patches/server/0059-Villagers-follow-emerald-blocks.patch b/patches/server/0059-Villagers-follow-emerald-blocks.patch index a9213e425..96b5d4582 100644 --- a/patches/server/0059-Villagers-follow-emerald-blocks.patch +++ b/patches/server/0059-Villagers-follow-emerald-blocks.patch @@ -41,10 +41,10 @@ index d2588a91b55aebdecf8e1644498111ccf84a9dc9..393061e13375bf7a7ee57973b4abac83 this.goalSelector.addGoal(8, new WaterAvoidingRandomStrollGoal(this, 0.35D)); this.goalSelector.addGoal(9, new InteractGoal(this, Player.class, 3.0F, 1.0F)); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b1f0d9f958fa414fff40725575f852af42c83161..2894dad132d9ede51314dc035975a208af711012 100644 +index 38b94f99f6c45f3144f7b262e5cc2b40045b6b04..d1dc534309146d6fead7881dd669dc41c3c46c17 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1234,6 +1234,7 @@ public class PurpurWorldConfig { +@@ -1235,6 +1235,7 @@ public class PurpurWorldConfig { public double villagerMaxHealth = 20.0D; public int villagerBrainTicks = 1; public boolean villagerUseBrainTicksOnlyWhenLagging = true; @@ -52,7 +52,7 @@ index b1f0d9f958fa414fff40725575f852af42c83161..2894dad132d9ede51314dc035975a208 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1245,6 +1246,7 @@ public class PurpurWorldConfig { +@@ -1246,6 +1247,7 @@ public class PurpurWorldConfig { villagerMaxHealth = getDouble("mobs.villager.attributes.max_health", villagerMaxHealth); villagerBrainTicks = getInt("mobs.villager.brain-ticks", villagerBrainTicks); villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging); @@ -60,7 +60,7 @@ index b1f0d9f958fa414fff40725575f852af42c83161..2894dad132d9ede51314dc035975a208 } public boolean vindicatorRidable = false; -@@ -1264,6 +1266,7 @@ public class PurpurWorldConfig { +@@ -1265,6 +1267,7 @@ public class PurpurWorldConfig { public boolean wanderingTraderRidable = false; public boolean wanderingTraderRidableInWater = false; public double wanderingTraderMaxHealth = 20.0D; @@ -68,7 +68,7 @@ index b1f0d9f958fa414fff40725575f852af42c83161..2894dad132d9ede51314dc035975a208 private void wanderingTraderSettings() { wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable); wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater); -@@ -1273,6 +1276,7 @@ public class PurpurWorldConfig { +@@ -1274,6 +1277,7 @@ public class PurpurWorldConfig { set("mobs.wandering_trader.attributes.max_health", oldValue); } wanderingTraderMaxHealth = getDouble("mobs.wandering_trader.attributes.max_health", wanderingTraderMaxHealth); diff --git a/patches/server/0060-Allow-leashing-villagers.patch b/patches/server/0060-Allow-leashing-villagers.patch index 9904ad458..67e0c61b9 100644 --- a/patches/server/0060-Allow-leashing-villagers.patch +++ b/patches/server/0060-Allow-leashing-villagers.patch @@ -49,10 +49,10 @@ index 393061e13375bf7a7ee57973b4abac83ffa15fa3..c48935d35a6141c41db22e3ec172d599 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 2894dad132d9ede51314dc035975a208af711012..f6edfcd18ee077525554978bc2600e95cc0b66c2 100644 +index d1dc534309146d6fead7881dd669dc41c3c46c17..04ad7b73d2a482abe9bfe9b100950e6f3da30d20 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1235,6 +1235,7 @@ public class PurpurWorldConfig { +@@ -1236,6 +1236,7 @@ public class PurpurWorldConfig { public int villagerBrainTicks = 1; public boolean villagerUseBrainTicksOnlyWhenLagging = true; public boolean villagerFollowEmeraldBlock = false; @@ -60,7 +60,7 @@ index 2894dad132d9ede51314dc035975a208af711012..f6edfcd18ee077525554978bc2600e95 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1247,6 +1248,7 @@ public class PurpurWorldConfig { +@@ -1248,6 +1249,7 @@ public class PurpurWorldConfig { villagerBrainTicks = getInt("mobs.villager.brain-ticks", villagerBrainTicks); villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging); villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock); @@ -68,7 +68,7 @@ index 2894dad132d9ede51314dc035975a208af711012..f6edfcd18ee077525554978bc2600e95 } public boolean vindicatorRidable = false; -@@ -1267,6 +1269,7 @@ public class PurpurWorldConfig { +@@ -1268,6 +1270,7 @@ public class PurpurWorldConfig { public boolean wanderingTraderRidableInWater = false; public double wanderingTraderMaxHealth = 20.0D; public boolean wanderingTraderFollowEmeraldBlock = false; @@ -76,7 +76,7 @@ index 2894dad132d9ede51314dc035975a208af711012..f6edfcd18ee077525554978bc2600e95 private void wanderingTraderSettings() { wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable); wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater); -@@ -1277,6 +1280,7 @@ public class PurpurWorldConfig { +@@ -1278,6 +1281,7 @@ public class PurpurWorldConfig { } wanderingTraderMaxHealth = getDouble("mobs.wandering_trader.attributes.max_health", wanderingTraderMaxHealth); wanderingTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", wanderingTraderFollowEmeraldBlock); diff --git a/patches/server/0061-Implement-configurable-search-radius-for-villagers-t.patch b/patches/server/0061-Implement-configurable-search-radius-for-villagers-t.patch index 4f760d96a..c9ba6a685 100644 --- a/patches/server/0061-Implement-configurable-search-radius-for-villagers-t.patch +++ b/patches/server/0061-Implement-configurable-search-radius-for-villagers-t.patch @@ -18,10 +18,10 @@ index 0c6583751e75d175338aaf411fb26baa1946a9b4..bad3b9eb0ab8612f9c80c52caff38ffe for (int i = 0; i < 10; ++i) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index f6edfcd18ee077525554978bc2600e95cc0b66c2..9509cbc44413353c621a1469a320a7a4e531c1c8 100644 +index 04ad7b73d2a482abe9bfe9b100950e6f3da30d20..b37d922ba6082f21057b924e1184a81371a50840 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1236,6 +1236,8 @@ public class PurpurWorldConfig { +@@ -1237,6 +1237,8 @@ public class PurpurWorldConfig { public boolean villagerUseBrainTicksOnlyWhenLagging = true; public boolean villagerFollowEmeraldBlock = false; public boolean villagerCanBeLeashed = false; @@ -30,7 +30,7 @@ index f6edfcd18ee077525554978bc2600e95cc0b66c2..9509cbc44413353c621a1469a320a7a4 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1249,6 +1251,8 @@ public class PurpurWorldConfig { +@@ -1250,6 +1252,8 @@ public class PurpurWorldConfig { villagerUseBrainTicksOnlyWhenLagging = getBoolean("mobs.villager.use-brain-ticks-only-when-lagging", villagerUseBrainTicksOnlyWhenLagging); villagerFollowEmeraldBlock = getBoolean("mobs.villager.follow-emerald-blocks", villagerFollowEmeraldBlock); villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed); diff --git a/patches/server/0062-Implement-infinite-lava.patch b/patches/server/0062-Implement-infinite-lava.patch index 6d1295406..2369795a2 100644 --- a/patches/server/0062-Implement-infinite-lava.patch +++ b/patches/server/0062-Implement-infinite-lava.patch @@ -58,10 +58,10 @@ index 695783e64564b1d2a178d57a89737d2a97ab9014..cd1a33a1f10d04a91358f51d736bda34 protected boolean canConvertToSource() { return false; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 9509cbc44413353c621a1469a320a7a4e531c1c8..e16e4d59d51bfd7c5dbffe690c0d4d4064e4130a 100644 +index b37d922ba6082f21057b924e1184a81371a50840..ef1be8d744283b74ff09c0d5badaed77c31e004a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -215,6 +215,13 @@ public class PurpurWorldConfig { +@@ -216,6 +216,13 @@ public class PurpurWorldConfig { farmlandGetsMoistFromBelow = getBoolean("blocks.farmland.gets-moist-from-below", farmlandGetsMoistFromBelow); } diff --git a/patches/server/0063-Make-lava-flow-speed-configurable.patch b/patches/server/0063-Make-lava-flow-speed-configurable.patch index 2fbe24621..07d9b398b 100644 --- a/patches/server/0063-Make-lava-flow-speed-configurable.patch +++ b/patches/server/0063-Make-lava-flow-speed-configurable.patch @@ -18,10 +18,10 @@ index cd1a33a1f10d04a91358f51d736bda34110324c4..b0d671ba015d1ad37fdf600b8e70def2 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index e16e4d59d51bfd7c5dbffe690c0d4d4064e4130a..da467704ad57edb2baa0471a483efd709ba44724 100644 +index ef1be8d744283b74ff09c0d5badaed77c31e004a..6ae6000856817e3951e01980d68ea359078886ed 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -217,9 +217,13 @@ public class PurpurWorldConfig { +@@ -218,9 +218,13 @@ public class PurpurWorldConfig { public boolean lavaInfinite = false; public int lavaInfiniteRequiredSources = 2; diff --git a/patches/server/0064-Add-player-death-exp-control-options.patch b/patches/server/0064-Add-player-death-exp-control-options.patch index eb3ee118d..ddd664d1d 100644 --- a/patches/server/0064-Add-player-death-exp-control-options.patch +++ b/patches/server/0064-Add-player-death-exp-control-options.patch @@ -31,10 +31,10 @@ index d6b610a848f37db24af9b219be2f22aeaf892388..52d43c2bf1fa1bfa97aab02a9837c6b1 return 0; } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index da467704ad57edb2baa0471a483efd709ba44724..6985134eacf932b349a3a436ea7a14268314a8ea 100644 +index 6ae6000856817e3951e01980d68ea359078886ed..ac018249cdb97c679d5a48fcd6d6142228940d85 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -166,6 +166,8 @@ public class PurpurWorldConfig { +@@ -167,6 +167,8 @@ public class PurpurWorldConfig { public int playerSpawnInvulnerableTicks = 60; public boolean playerInvulnerableWhileAcceptingResourcePack = false; public boolean playersShouldCramToDeath = true; @@ -43,7 +43,7 @@ index da467704ad57edb2baa0471a483efd709ba44724..6985134eacf932b349a3a436ea7a1426 private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -174,6 +176,8 @@ public class PurpurWorldConfig { +@@ -175,6 +177,8 @@ public class PurpurWorldConfig { playerSpawnInvulnerableTicks = getInt("gameplay-mechanics.player.spawn-invulnerable-ticks", playerSpawnInvulnerableTicks); playerInvulnerableWhileAcceptingResourcePack = getBoolean("gameplay-mechanics.player.invulnerable-while-accepting-resource-pack", playerInvulnerableWhileAcceptingResourcePack); playersShouldCramToDeath = getBoolean("gameplay-mechanics.player.should-cram-to-death", playersShouldCramToDeath); diff --git a/patches/server/0065-Configurable-void-damage-height-and-damage.patch b/patches/server/0065-Configurable-void-damage-height-and-damage.patch index 8df367e8a..3d3266028 100644 --- a/patches/server/0065-Configurable-void-damage-height-and-damage.patch +++ b/patches/server/0065-Configurable-void-damage-height-and-damage.patch @@ -31,10 +31,10 @@ index 31f3767c7d9e9fc5f3bd91c7ec163bce8ada64db..8f550154b12521662889bbc91f5cd8e2 protected void updateSwingTime() { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 6985134eacf932b349a3a436ea7a14268314a8ea..5a74d39198c03771aaf810e20fb47ca6f352bbd0 100644 +index ac018249cdb97c679d5a48fcd6d6142228940d85..7fb6bedf494add10b2b5cc849f89f87b12821b94 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -208,10 +208,14 @@ public class PurpurWorldConfig { +@@ -209,10 +209,14 @@ public class PurpurWorldConfig { public boolean disableDropsOnCrammingDeath = false; public boolean milkCuresBadOmen = true; public double tridentLoyaltyVoidReturnHeight = 0.0D; diff --git a/patches/server/0067-Dispenser-curse-of-binding-protection.patch b/patches/server/0067-Dispenser-curse-of-binding-protection.patch index 7f7e3da1c..1e58e1b69 100644 --- a/patches/server/0067-Dispenser-curse-of-binding-protection.patch +++ b/patches/server/0067-Dispenser-curse-of-binding-protection.patch @@ -43,10 +43,10 @@ index aab4a63e61aced51b1b6c885fd8b8426a4f14408..dba3b8e0671ee63ff077155a8964f3e2 // CraftBukkit start Level world = pointer.getLevel(); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 5a74d39198c03771aaf810e20fb47ca6f352bbd0..ce5b48ce8bd412a11ccc5428cfdee0b152570fd9 100644 +index 7fb6bedf494add10b2b5cc849f89f87b12821b94..78af09318d961ef8355e0c92f7a572d4d9a572b3 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -218,6 +218,11 @@ public class PurpurWorldConfig { +@@ -219,6 +219,11 @@ public class PurpurWorldConfig { voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt); } diff --git a/patches/server/0068-Add-option-for-boats-to-eject-players-on-land.patch b/patches/server/0068-Add-option-for-boats-to-eject-players-on-land.patch index 6446ce34b..77d3ec132 100644 --- a/patches/server/0068-Add-option-for-boats-to-eject-players-on-land.patch +++ b/patches/server/0068-Add-option-for-boats-to-eject-players-on-land.patch @@ -17,10 +17,10 @@ index aa7c022c4faade23bd9061311d4152cf845d3331..d4a19fc38027717e43353bc62ef23e56 } else { return Boat.Status.IN_AIR; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index ce5b48ce8bd412a11ccc5428cfdee0b152570fd9..fd49391f0050e5943e51dc69deec174082518868 100644 +index 78af09318d961ef8355e0c92f7a572d4d9a572b3..b022574dca704f93df22bef22d26f1cdc4ec4e20 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -205,12 +205,14 @@ public class PurpurWorldConfig { +@@ -206,12 +206,14 @@ public class PurpurWorldConfig { }); } diff --git a/patches/server/0069-Mending-mends-most-damages-equipment-first.patch b/patches/server/0069-Mending-mends-most-damages-equipment-first.patch index 00ad40abc..dfb181628 100644 --- a/patches/server/0069-Mending-mends-most-damages-equipment-first.patch +++ b/patches/server/0069-Mending-mends-most-damages-equipment-first.patch @@ -73,10 +73,10 @@ index d439e8ce87bf7da03683a336941c7673b8b166e4..955e482e4bc83f2b777cd2e4254c40be Entry entry = getRandomItemWith(enchantment, entityliving); return entry != null ? entry.getValue() : ItemStack.EMPTY; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index fd49391f0050e5943e51dc69deec174082518868..1a74ed951699b71af64caa087bb5375caba82051 100644 +index b022574dca704f93df22bef22d26f1cdc4ec4e20..47f3934b297d8cdf1d5983a66b8542854e38e3a5 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -205,6 +205,7 @@ public class PurpurWorldConfig { +@@ -206,6 +206,7 @@ public class PurpurWorldConfig { }); } @@ -84,7 +84,7 @@ index fd49391f0050e5943e51dc69deec174082518868..1a74ed951699b71af64caa087bb5375c public boolean boatEjectPlayersOnLand = false; public boolean disableDropsOnCrammingDeath = false; public boolean milkCuresBadOmen = true; -@@ -212,6 +213,7 @@ public class PurpurWorldConfig { +@@ -213,6 +214,7 @@ public class PurpurWorldConfig { public double voidDamageHeight = -64.0D; public double voidDamageDealt = 4.0D; private void miscGameplayMechanicsSettings() { diff --git a/patches/server/0071-Implement-elytra-settings.patch b/patches/server/0071-Implement-elytra-settings.patch index b553ec9a8..3a39138dd 100644 --- a/patches/server/0071-Implement-elytra-settings.patch +++ b/patches/server/0071-Implement-elytra-settings.patch @@ -99,10 +99,10 @@ index 510ed67a7de2b503ab8b01db57ed09ee33b0d825..3f53dc8f250ad3f7616ce7ef0a2353ca entityhuman.startAutoSpinAttack(20); if (entityhuman.isOnGround()) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 1a74ed951699b71af64caa087bb5375caba82051..217de624c94e6cc6f6ede013e281cdbf28d63338 100644 +index 47f3934b297d8cdf1d5983a66b8542854e38e3a5..e4ba096aea461c4fcdcb50f2343eaf4feb3027b6 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -97,6 +97,19 @@ public class PurpurWorldConfig { +@@ -98,6 +98,19 @@ public class PurpurWorldConfig { armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight); } diff --git a/patches/server/0072-Item-entity-immunities.patch b/patches/server/0072-Item-entity-immunities.patch index c77685524..9af6c8df4 100644 --- a/patches/server/0072-Item-entity-immunities.patch +++ b/patches/server/0072-Item-entity-immunities.patch @@ -94,10 +94,10 @@ index 158719d46c96bb733a00e08c8285f41a48406abf..5201e59c7ce9e92790c185279ba69d7f + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 217de624c94e6cc6f6ede013e281cdbf28d63338..98e42d551427a6fa8c8ed59e3191be4dd162db01 100644 +index e4ba096aea461c4fcdcb50f2343eaf4feb3027b6..d4f79d0132122fc8f039f08db6f1f262e50c6d3e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -110,6 +110,49 @@ public class PurpurWorldConfig { +@@ -111,6 +111,49 @@ public class PurpurWorldConfig { elytraDamagePerTridentBoost = getInt("gameplay-mechanics.elytra.damage-per-boost.trident", elytraDamagePerTridentBoost); } diff --git a/patches/server/0076-Configurable-jockey-options.patch b/patches/server/0076-Configurable-jockey-options.patch index a5ed6a8aa..fc14a7bd7 100644 --- a/patches/server/0076-Configurable-jockey-options.patch +++ b/patches/server/0076-Configurable-jockey-options.patch @@ -167,10 +167,10 @@ index 8464026df1b46ad30301fed4944aa1d3cd39bd9e..5b5958e37918b97fa994500fe94cd0e5 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 98e42d551427a6fa8c8ed59e3191be4dd162db01..38f07a1ca300bd78baeec8bbe50cae2f73359762 100644 +index d4f79d0132122fc8f039f08db6f1f262e50c6d3e..f1f9ed6311b69d8c1a2e439f76496598ca1f779a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -519,6 +519,9 @@ public class PurpurWorldConfig { +@@ -520,6 +520,9 @@ public class PurpurWorldConfig { public boolean drownedRidableInWater = false; public double drownedMaxHealth = 20.0D; public double drownedSpawnReinforcements = 0.1D; @@ -180,7 +180,7 @@ index 98e42d551427a6fa8c8ed59e3191be4dd162db01..38f07a1ca300bd78baeec8bbe50cae2f private void drownedSettings() { drownedRidable = getBoolean("mobs.drowned.ridable", drownedRidable); drownedRidableInWater = getBoolean("mobs.drowned.ridable-in-water", drownedRidableInWater); -@@ -529,6 +532,9 @@ public class PurpurWorldConfig { +@@ -530,6 +533,9 @@ public class PurpurWorldConfig { } drownedMaxHealth = getDouble("mobs.drowned.attributes.max_health", drownedMaxHealth); drownedSpawnReinforcements = getDouble("mobs.drowned.attributes.spawn_reinforcements", drownedSpawnReinforcements); @@ -190,7 +190,7 @@ index 98e42d551427a6fa8c8ed59e3191be4dd162db01..38f07a1ca300bd78baeec8bbe50cae2f } public boolean elderGuardianRidable = false; -@@ -741,6 +747,9 @@ public class PurpurWorldConfig { +@@ -742,6 +748,9 @@ public class PurpurWorldConfig { public boolean huskRidableInWater = false; public double huskMaxHealth = 20.0D; public double huskSpawnReinforcements = 0.1D; @@ -200,7 +200,7 @@ index 98e42d551427a6fa8c8ed59e3191be4dd162db01..38f07a1ca300bd78baeec8bbe50cae2f private void huskSettings() { huskRidable = getBoolean("mobs.husk.ridable", huskRidable); huskRidableInWater = getBoolean("mobs.husk.ridable-in-water", huskRidableInWater); -@@ -751,6 +760,9 @@ public class PurpurWorldConfig { +@@ -752,6 +761,9 @@ public class PurpurWorldConfig { } huskMaxHealth = getDouble("mobs.husk.attributes.max_health", huskMaxHealth); huskSpawnReinforcements = getDouble("mobs.husk.attributes.spawn_reinforcements", huskSpawnReinforcements); @@ -210,7 +210,7 @@ index 98e42d551427a6fa8c8ed59e3191be4dd162db01..38f07a1ca300bd78baeec8bbe50cae2f } public boolean illusionerRidable = false; -@@ -1451,6 +1463,9 @@ public class PurpurWorldConfig { +@@ -1452,6 +1464,9 @@ public class PurpurWorldConfig { public boolean zombieRidableInWater = false; public double zombieMaxHealth = 20.0D; public double zombieSpawnReinforcements = 0.1D; @@ -220,7 +220,7 @@ index 98e42d551427a6fa8c8ed59e3191be4dd162db01..38f07a1ca300bd78baeec8bbe50cae2f private void zombieSettings() { zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable); zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater); -@@ -1461,6 +1476,9 @@ public class PurpurWorldConfig { +@@ -1462,6 +1477,9 @@ public class PurpurWorldConfig { } zombieMaxHealth = getDouble("mobs.zombie.attributes.max_health", zombieMaxHealth); zombieSpawnReinforcements = getDouble("mobs.zombie.attributes.spawn_reinforcements", zombieSpawnReinforcements); @@ -230,7 +230,7 @@ index 98e42d551427a6fa8c8ed59e3191be4dd162db01..38f07a1ca300bd78baeec8bbe50cae2f } public boolean zombieHorseRidableInWater = false; -@@ -1494,6 +1512,9 @@ public class PurpurWorldConfig { +@@ -1495,6 +1513,9 @@ public class PurpurWorldConfig { public boolean zombieVillagerRidableInWater = false; public double zombieVillagerMaxHealth = 20.0D; public double zombieVillagerSpawnReinforcements = 0.1D; @@ -240,7 +240,7 @@ index 98e42d551427a6fa8c8ed59e3191be4dd162db01..38f07a1ca300bd78baeec8bbe50cae2f private void zombieVillagerSettings() { zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable); zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater); -@@ -1504,12 +1525,18 @@ public class PurpurWorldConfig { +@@ -1505,12 +1526,18 @@ public class PurpurWorldConfig { } zombieVillagerMaxHealth = getDouble("mobs.zombie_villager.attributes.max_health", zombieVillagerMaxHealth); zombieVillagerSpawnReinforcements = getDouble("mobs.zombie_villager.attributes.spawn_reinforcements", zombieVillagerSpawnReinforcements); @@ -259,7 +259,7 @@ index 98e42d551427a6fa8c8ed59e3191be4dd162db01..38f07a1ca300bd78baeec8bbe50cae2f private void zombifiedPiglinSettings() { zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable); zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater); -@@ -1520,5 +1547,8 @@ public class PurpurWorldConfig { +@@ -1521,5 +1548,8 @@ public class PurpurWorldConfig { } zombifiedPiglinMaxHealth = getDouble("mobs.zombified_piglin.attributes.max_health", zombifiedPiglinMaxHealth); zombifiedPiglinSpawnReinforcements = getDouble("mobs.zombified_piglin.attributes.spawn_reinforcements", zombifiedPiglinSpawnReinforcements); diff --git a/patches/server/0077-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch b/patches/server/0077-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch index 0a40b7ecf..ef78f217c 100644 --- a/patches/server/0077-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch +++ b/patches/server/0077-Phantoms-attracted-to-crystals-and-crystals-shoot-ph.patch @@ -258,10 +258,10 @@ index 5e069ac0c57d2a3a23f6e4483d12ce298d172691..916c29d08fbcf245ad6f50f8e8cc1736 private float speed = 0.1F; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 38f07a1ca300bd78baeec8bbe50cae2f73359762..9e57a48a53e5435ef358749482174f1bb9aff7a2 100644 +index f1f9ed6311b69d8c1a2e439f76496598ca1f779a..8ce8fa59d89a50f9afc3808b8521d76da76f8ad0 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -932,6 +932,9 @@ public class PurpurWorldConfig { +@@ -933,6 +933,9 @@ public class PurpurWorldConfig { public int phantomFlameFireTime = 8; public boolean phantomAllowGriefing = false; public double phantomMaxHealth = 20.0D; @@ -271,7 +271,7 @@ index 38f07a1ca300bd78baeec8bbe50cae2f73359762..9e57a48a53e5435ef358749482174f1b private void phantomSettings() { phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable); phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater); -@@ -945,6 +948,9 @@ public class PurpurWorldConfig { +@@ -946,6 +949,9 @@ public class PurpurWorldConfig { set("mobs.phantom.attributes.max_health", oldValue); } phantomMaxHealth = getDouble("mobs.phantom.attributes.max_health", phantomMaxHealth); diff --git a/patches/server/0078-Add-phantom-spawning-options.patch b/patches/server/0078-Add-phantom-spawning-options.patch index 334a7fc6b..9b30aeb8e 100644 --- a/patches/server/0078-Add-phantom-spawning-options.patch +++ b/patches/server/0078-Add-phantom-spawning-options.patch @@ -48,10 +48,10 @@ index 79504dc3448402e73b09c4232b1fd0488872cf68..300c9f136edace2babea4a574090b184 for (int l = 0; l < k; ++l) { // Paper start diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 9e57a48a53e5435ef358749482174f1bb9aff7a2..8e0b9b3117c0d88fe5988d7fe1b7c5bb5be7d28e 100644 +index 8ce8fa59d89a50f9afc3808b8521d76da76f8ad0..0f192f2f487a16fd881aee9bc66198aa514167d7 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -935,6 +935,18 @@ public class PurpurWorldConfig { +@@ -936,6 +936,18 @@ public class PurpurWorldConfig { public double phantomAttackedByCrystalRadius = 0.0D; public float phantomAttackedByCrystalDamage = 1.0F; public double phantomOrbitCrystalRadius = 0.0D; @@ -70,7 +70,7 @@ index 9e57a48a53e5435ef358749482174f1bb9aff7a2..8e0b9b3117c0d88fe5988d7fe1b7c5bb private void phantomSettings() { phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable); phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater); -@@ -951,6 +963,18 @@ public class PurpurWorldConfig { +@@ -952,6 +964,18 @@ public class PurpurWorldConfig { phantomAttackedByCrystalRadius = getDouble("mobs.phantom.attacked-by-crystal-range", phantomAttackedByCrystalRadius); phantomAttackedByCrystalDamage = (float) getDouble("mobs.phantom.attacked-by-crystal-damage", phantomAttackedByCrystalDamage); phantomOrbitCrystalRadius = getDouble("mobs.phantom.orbit-crystal-radius", phantomOrbitCrystalRadius); diff --git a/patches/server/0079-Implement-bed-explosion-options.patch b/patches/server/0079-Implement-bed-explosion-options.patch index 326afb972..5bda4b5ba 100644 --- a/patches/server/0079-Implement-bed-explosion-options.patch +++ b/patches/server/0079-Implement-bed-explosion-options.patch @@ -27,10 +27,10 @@ index 163a7861f987c3832aac51cc6df950c768546731..bf5765b6af9c7807d50f7daaacb5d524 } } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 8e0b9b3117c0d88fe5988d7fe1b7c5bb5be7d28e..9759d5ba2d7bf0ccc86b7a109ae115952031371c 100644 +index 0f192f2f487a16fd881aee9bc66198aa514167d7..ecd50e72600cdec834c57570565bc5f19faaecb0 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -278,6 +278,22 @@ public class PurpurWorldConfig { +@@ -279,6 +279,22 @@ public class PurpurWorldConfig { voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt); } diff --git a/patches/server/0080-Implement-respawn-anchor-explosion-options.patch b/patches/server/0080-Implement-respawn-anchor-explosion-options.patch index eaa7105f1..2177f1df4 100644 --- a/patches/server/0080-Implement-respawn-anchor-explosion-options.patch +++ b/patches/server/0080-Implement-respawn-anchor-explosion-options.patch @@ -18,10 +18,10 @@ index af4eb4a8814491afef449a2874521636957d7557..365c28300ecfbe0161716972adf22a8a public static boolean canSetSpawn(Level world) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 9759d5ba2d7bf0ccc86b7a109ae115952031371c..e96302393e76bbd20fe4245d978ae1a6086b5164 100644 +index ecd50e72600cdec834c57570565bc5f19faaecb0..091aa1b404a8d8b2f71501d3a3425c2e56114829 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -315,6 +315,22 @@ public class PurpurWorldConfig { +@@ -316,6 +316,22 @@ public class PurpurWorldConfig { lavaSpeedNotNether = getInt("blocks.lava.speed.not-nether", lavaSpeedNotNether); } diff --git a/patches/server/0083-Entity-lifespan.patch b/patches/server/0083-Entity-lifespan.patch index cad5d42ed..65223d753 100644 --- a/patches/server/0083-Entity-lifespan.patch +++ b/patches/server/0083-Entity-lifespan.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Entity lifespan diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index f7c915ababdacd0901787d6dd1c08accacadabe5..df79f95ab2c8b9106cac889787b840b166ff0a9c 100644 +index 2c35070bc7c0a4195f824643c093df1c6aa59dfc..ea53ece9afe9e35323a88647901a83a4bf4225b8 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -126,6 +126,7 @@ public abstract class Mob extends LivingEntity { @@ -89,10 +89,10 @@ index f7c915ababdacd0901787d6dd1c08accacadabe5..df79f95ab2c8b9106cac889787b840b1 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index e96302393e76bbd20fe4245d978ae1a6086b5164..41678daa4765aa01ec91cdbe554fc1dd7316e292 100644 +index 091aa1b404a8d8b2f71501d3a3425c2e56114829..591aabe5c297bcecdb23c7c901c6e9737369d119 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -110,6 +110,11 @@ public class PurpurWorldConfig { +@@ -111,6 +111,11 @@ public class PurpurWorldConfig { elytraDamagePerTridentBoost = getInt("gameplay-mechanics.elytra.damage-per-boost.trident", elytraDamagePerTridentBoost); } diff --git a/patches/server/0084-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch b/patches/server/0084-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch index ad1ed345e..2adf20b42 100644 --- a/patches/server/0084-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch +++ b/patches/server/0084-Add-option-to-teleport-to-spawn-if-outside-world-bor.patch @@ -55,10 +55,10 @@ index f1a8b91f620152a3da3c11769c3c2353ccdba3cf..0c14ccc74abcc68ecc5422b38bc729dc } } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 41678daa4765aa01ec91cdbe554fc1dd7316e292..6d453f43651cec45bb0099d8fa8ee14bd20b3de9 100644 +index 591aabe5c297bcecdb23c7c901c6e9737369d119..2c16ac45f3a5589ad2dac6e40dfa4dfd593486fe 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -229,6 +229,7 @@ public class PurpurWorldConfig { +@@ -230,6 +230,7 @@ public class PurpurWorldConfig { public boolean playersShouldCramToDeath = true; public String playerDeathExpDropEquation = "expLevel * 7"; public int playerDeathExpDropMax = 100; @@ -66,7 +66,7 @@ index 41678daa4765aa01ec91cdbe554fc1dd7316e292..6d453f43651cec45bb0099d8fa8ee14b private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -239,6 +240,7 @@ public class PurpurWorldConfig { +@@ -240,6 +241,7 @@ public class PurpurWorldConfig { playersShouldCramToDeath = getBoolean("gameplay-mechanics.player.should-cram-to-death", playersShouldCramToDeath); playerDeathExpDropEquation = getString("gameplay-mechanics.player.exp-dropped-on-death.equation", playerDeathExpDropEquation); playerDeathExpDropMax = getInt("gameplay-mechanics.player.exp-dropped-on-death.maximum", playerDeathExpDropMax); diff --git a/patches/server/0085-Squid-EAR-immunity.patch b/patches/server/0085-Squid-EAR-immunity.patch index 6fed58821..934187e9d 100644 --- a/patches/server/0085-Squid-EAR-immunity.patch +++ b/patches/server/0085-Squid-EAR-immunity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Squid EAR immunity diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 6d453f43651cec45bb0099d8fa8ee14bd20b3de9..378eda35a9f60412f36007320b7a86457dd95846 100644 +index 2c16ac45f3a5589ad2dac6e40dfa4dfd593486fe..d1e5cbb239b043aade27d5e6e058a91241cce65a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1268,6 +1268,7 @@ public class PurpurWorldConfig { +@@ -1269,6 +1269,7 @@ public class PurpurWorldConfig { public boolean squidRidable = false; public double squidMaxHealth = 10.0D; @@ -16,7 +16,7 @@ index 6d453f43651cec45bb0099d8fa8ee14bd20b3de9..378eda35a9f60412f36007320b7a8645 private void squidSettings() { squidRidable = getBoolean("mobs.squid.ridable", squidRidable); if (PurpurConfig.version < 10) { -@@ -1276,6 +1277,7 @@ public class PurpurWorldConfig { +@@ -1277,6 +1278,7 @@ public class PurpurWorldConfig { set("mobs.squid.attributes.max_health", oldValue); } squidMaxHealth = getDouble("mobs.squid.attributes.max_health", squidMaxHealth); diff --git a/patches/server/0087-Phantoms-burn-in-light.patch b/patches/server/0087-Phantoms-burn-in-light.patch index b1501e1f6..31c33547b 100644 --- a/patches/server/0087-Phantoms-burn-in-light.patch +++ b/patches/server/0087-Phantoms-burn-in-light.patch @@ -47,10 +47,10 @@ index 916c29d08fbcf245ad6f50f8e8cc173677b01081..c55aba456aa144e58fc35877c61eff30 list.sort(Comparator.comparing(Entity::getY).reversed()); // Paper - remap fix Iterator iterator = list.iterator(); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 378eda35a9f60412f36007320b7a86457dd95846..e74ea145d561b4cfef3310061dbc38a7252637ea 100644 +index d1e5cbb239b043aade27d5e6e058a91241cce65a..0c69310177c648357486ab18b3921e4c49041590 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -986,6 +986,9 @@ public class PurpurWorldConfig { +@@ -987,6 +987,9 @@ public class PurpurWorldConfig { public int phantomSpawnOverheadRadius = 10; public int phantomSpawnMinPerAttempt = 1; public int phantomSpawnMaxPerAttempt = -1; @@ -60,7 +60,7 @@ index 378eda35a9f60412f36007320b7a86457dd95846..e74ea145d561b4cfef3310061dbc38a7 private void phantomSettings() { phantomRidable = getBoolean("mobs.phantom.ridable", phantomRidable); phantomRidableInWater = getBoolean("mobs.phantom.ridable-in-water", phantomRidableInWater); -@@ -1014,6 +1017,9 @@ public class PurpurWorldConfig { +@@ -1015,6 +1018,9 @@ public class PurpurWorldConfig { phantomSpawnOverheadRadius = getInt("mobs.phantom.spawn.overhead.radius", phantomSpawnOverheadRadius); phantomSpawnMinPerAttempt = getInt("mobs.phantom.spawn.per-attempt.min", phantomSpawnMinPerAttempt); phantomSpawnMaxPerAttempt = getInt("mobs.phantom.spawn.per-attempt.max", phantomSpawnMaxPerAttempt); diff --git a/patches/server/0088-Configurable-villager-breeding.patch b/patches/server/0088-Configurable-villager-breeding.patch index 890e6efc2..4b02d6a65 100644 --- a/patches/server/0088-Configurable-villager-breeding.patch +++ b/patches/server/0088-Configurable-villager-breeding.patch @@ -18,10 +18,10 @@ index bad3b9eb0ab8612f9c80c52caff38ffe791d112c..4752205ab570ab8f6ae7f0a15ae610b6 private boolean hungry() { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index e74ea145d561b4cfef3310061dbc38a7252637ea..d9412405c5eaee5c342ecbbf481f695d3fa308b0 100644 +index 0c69310177c648357486ab18b3921e4c49041590..1556c9a9f99078eb970993aa90e96313acb71e09 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1411,6 +1411,7 @@ public class PurpurWorldConfig { +@@ -1412,6 +1412,7 @@ public class PurpurWorldConfig { public boolean villagerCanBeLeashed = false; public int villagerSpawnIronGolemRadius = 0; public int villagerSpawnIronGolemLimit = 0; @@ -29,7 +29,7 @@ index e74ea145d561b4cfef3310061dbc38a7252637ea..d9412405c5eaee5c342ecbbf481f695d private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1426,6 +1427,7 @@ public class PurpurWorldConfig { +@@ -1427,6 +1428,7 @@ public class PurpurWorldConfig { villagerCanBeLeashed = getBoolean("mobs.villager.can-be-leashed", villagerCanBeLeashed); villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius); villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit); diff --git a/patches/server/0089-Redstone-deactivates-spawners.patch b/patches/server/0089-Redstone-deactivates-spawners.patch index 7ae98e203..7114f1299 100644 --- a/patches/server/0089-Redstone-deactivates-spawners.patch +++ b/patches/server/0089-Redstone-deactivates-spawners.patch @@ -17,10 +17,10 @@ index c601b8b12756682a4cb300be8ebed4319902c5b5..eec88d3947d435559d8ce175f72c5efb } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index d9412405c5eaee5c342ecbbf481f695d3fa308b0..7687900ab8a057f5b8c88ab24b05094b4407fede 100644 +index 1556c9a9f99078eb970993aa90e96313acb71e09..341bb1676190ccf67b1dce42e3e5aed97dc9bef8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -345,6 +345,11 @@ public class PurpurWorldConfig { +@@ -346,6 +346,11 @@ public class PurpurWorldConfig { signRightClickEdit = getBoolean("blocks.sign.right-click-edit", signRightClickEdit); } diff --git a/patches/server/0090-Totems-work-in-inventory.patch b/patches/server/0090-Totems-work-in-inventory.patch index b7def77d9..bcb7e833a 100644 --- a/patches/server/0090-Totems-work-in-inventory.patch +++ b/patches/server/0090-Totems-work-in-inventory.patch @@ -29,10 +29,10 @@ index 0c14ccc74abcc68ecc5422b38bc729dc659b9b8b..b909eeba0539ab133e274a15b0b479b5 event.setCancelled(itemstack == null); this.level.getCraftServer().getPluginManager().callEvent(event); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 7687900ab8a057f5b8c88ab24b05094b4407fede..c0a8bd071cfd87d1c156e1c1a6866357cc3e107c 100644 +index 341bb1676190ccf67b1dce42e3e5aed97dc9bef8..58c1f069281866488f0b83f2c6c2de715b7ff98c 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -230,6 +230,7 @@ public class PurpurWorldConfig { +@@ -231,6 +231,7 @@ public class PurpurWorldConfig { public String playerDeathExpDropEquation = "expLevel * 7"; public int playerDeathExpDropMax = 100; public boolean teleportIfOutsideBorder = false; @@ -40,7 +40,7 @@ index 7687900ab8a057f5b8c88ab24b05094b4407fede..c0a8bd071cfd87d1c156e1c1a6866357 private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -241,6 +242,7 @@ public class PurpurWorldConfig { +@@ -242,6 +243,7 @@ public class PurpurWorldConfig { playerDeathExpDropEquation = getString("gameplay-mechanics.player.exp-dropped-on-death.equation", playerDeathExpDropEquation); playerDeathExpDropMax = getInt("gameplay-mechanics.player.exp-dropped-on-death.maximum", playerDeathExpDropMax); teleportIfOutsideBorder = getBoolean("gameplay-mechanics.player.teleport-if-outside-border", teleportIfOutsideBorder); diff --git a/patches/server/0091-Add-vindicator-johnny-spawn-chance.patch b/patches/server/0091-Add-vindicator-johnny-spawn-chance.patch index 39ef6b257..979997bc5 100644 --- a/patches/server/0091-Add-vindicator-johnny-spawn-chance.patch +++ b/patches/server/0091-Add-vindicator-johnny-spawn-chance.patch @@ -30,10 +30,10 @@ index 76e6ea34db3942e9dd7646ad7ca1259f4387a4d8..9096c40ad5784d9097e889f0f43b6cf1 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index c0a8bd071cfd87d1c156e1c1a6866357cc3e107c..8a5b7b852fc29d049c13160bd97b4f16176b1a11 100644 +index 58c1f069281866488f0b83f2c6c2de715b7ff98c..cd05aad2e21d37e2e75866d061256e881f6b124a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1440,6 +1440,7 @@ public class PurpurWorldConfig { +@@ -1441,6 +1441,7 @@ public class PurpurWorldConfig { public boolean vindicatorRidable = false; public boolean vindicatorRidableInWater = false; public double vindicatorMaxHealth = 24.0D; @@ -41,7 +41,7 @@ index c0a8bd071cfd87d1c156e1c1a6866357cc3e107c..8a5b7b852fc29d049c13160bd97b4f16 private void vindicatorSettings() { vindicatorRidable = getBoolean("mobs.vindicator.ridable", vindicatorRidable); vindicatorRidableInWater = getBoolean("mobs.vindicator.ridable-in-water", vindicatorRidableInWater); -@@ -1449,6 +1450,7 @@ public class PurpurWorldConfig { +@@ -1450,6 +1451,7 @@ public class PurpurWorldConfig { set("mobs.vindicator.attributes.max_health", oldValue); } vindicatorMaxHealth = getDouble("mobs.vindicator.attributes.max_health", vindicatorMaxHealth); diff --git a/patches/server/0093-Dispensers-place-anvils-option.patch b/patches/server/0093-Dispensers-place-anvils-option.patch index 7c81de097..38e3d3613 100644 --- a/patches/server/0093-Dispensers-place-anvils-option.patch +++ b/patches/server/0093-Dispensers-place-anvils-option.patch @@ -41,10 +41,10 @@ index 92623ae25249d63efb92be8bd6c95228f9155ad2..20bf6d01046488eff53a109f5239351a static void setEntityPokingOutOfBlock(BlockSource pointer, Entity entity, Direction direction) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 8a5b7b852fc29d049c13160bd97b4f16176b1a11..9cd23e80ddf1cda60e1c342c11025145846b11f3 100644 +index cd05aad2e21d37e2e75866d061256e881f6b124a..fee446ecacad393f8e7dcd56fbcabfb6e15bb0f6 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -304,8 +304,10 @@ public class PurpurWorldConfig { +@@ -305,8 +305,10 @@ public class PurpurWorldConfig { } public boolean dispenserApplyCursedArmor = true; diff --git a/patches/server/0094-Allow-anvil-colors.patch b/patches/server/0094-Allow-anvil-colors.patch index 5f0dcc9c9..b157fb100 100644 --- a/patches/server/0094-Allow-anvil-colors.patch +++ b/patches/server/0094-Allow-anvil-colors.patch @@ -37,10 +37,10 @@ index ddfb89d62d2ec316683e9f0f5550e298ab26d137..410ac71efff92dfa1f1e11895d0f5bf3 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 9cd23e80ddf1cda60e1c342c11025145846b11f3..d051f003711a61f194e848ccf4f476de0ac5ec49 100644 +index fee446ecacad393f8e7dcd56fbcabfb6e15bb0f6..40e4b8ae6a3347203dff7af4fc99e53ba752cf91 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -287,6 +287,11 @@ public class PurpurWorldConfig { +@@ -288,6 +288,11 @@ public class PurpurWorldConfig { voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt); } diff --git a/patches/server/0095-Add-no-random-tick-block-list.patch b/patches/server/0095-Add-no-random-tick-block-list.patch index 5d3aa348d..82f2e5a1a 100644 --- a/patches/server/0095-Add-no-random-tick-block-list.patch +++ b/patches/server/0095-Add-no-random-tick-block-list.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add no-random-tick block list diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index f3a6b6713843e4b600440c8845fe10938920869b..f0c4a16d9b95bc64c1c43154b2bff9a36885ec77 100644 +index d53497ca3ada4c1205695f54dd7e163f3cc63afb..5316b5e9bfe57caed88a3ff38715e67ffd59df33 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -483,7 +483,7 @@ public class ServerLevel extends Level implements WorldGenLevel { @@ -35,10 +35,10 @@ index 7538262e14c86e4da9cd4cb887b76f649bfef2e6..f34973be478de4f088a0593b45bd89e5 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index d051f003711a61f194e848ccf4f476de0ac5ec49..e53c175340aa8bcab04a75348c29cef6209ba285 100644 +index 40e4b8ae6a3347203dff7af4fc99e53ba752cf91..a418801c944abe432f083dc77c60ce479ac3e7c8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -287,6 +287,28 @@ public class PurpurWorldConfig { +@@ -288,6 +288,28 @@ public class PurpurWorldConfig { voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt); } diff --git a/patches/server/0096-Add-option-to-disable-dolphin-treasure-searching.patch b/patches/server/0096-Add-option-to-disable-dolphin-treasure-searching.patch index 32d3cecd2..4a06f8280 100644 --- a/patches/server/0096-Add-option-to-disable-dolphin-treasure-searching.patch +++ b/patches/server/0096-Add-option-to-disable-dolphin-treasure-searching.patch @@ -17,10 +17,10 @@ index c372d47a929e06c8cfb0df86cf4e9bfee4d4b300..2aead13e8f879b614445715fb1912a20 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index e53c175340aa8bcab04a75348c29cef6209ba285..b12f3a1a88033af6e041549064b50d24493c53eb 100644 +index a418801c944abe432f083dc77c60ce479ac3e7c8..329d5badbe340f9473d370b99b844dd6e7288f70 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -553,6 +553,7 @@ public class PurpurWorldConfig { +@@ -554,6 +554,7 @@ public class PurpurWorldConfig { public float dolphinSpitSpeed = 1.0F; public float dolphinSpitDamage = 2.0F; public double dolphinMaxHealth = 10.0D; @@ -28,7 +28,7 @@ index e53c175340aa8bcab04a75348c29cef6209ba285..b12f3a1a88033af6e041549064b50d24 private void dolphinSettings() { dolphinRidable = getBoolean("mobs.dolphin.ridable", dolphinRidable); dolphinSpitCooldown = getInt("mobs.dolphin.spit.cooldown", dolphinSpitCooldown); -@@ -564,6 +565,7 @@ public class PurpurWorldConfig { +@@ -565,6 +566,7 @@ public class PurpurWorldConfig { set("mobs.dolphin.attributes.max_health", oldValue); } dolphinMaxHealth = getDouble("mobs.dolphin.attributes.max_health", dolphinMaxHealth); diff --git a/patches/server/0098-Stop-squids-floating-on-top-of-water.patch b/patches/server/0098-Stop-squids-floating-on-top-of-water.patch index f9cfeb609..b5a69a8ff 100644 --- a/patches/server/0098-Stop-squids-floating-on-top-of-water.patch +++ b/patches/server/0098-Stop-squids-floating-on-top-of-water.patch @@ -60,10 +60,10 @@ index 6f7e6429c35eea346517cbf08cf223fc6d838a8c..6a77112180556675af38cb1b3ce0b38a + // Purpur } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b12f3a1a88033af6e041549064b50d24493c53eb..5fcfb4867cb60295b2100c5179deeefcc6adaf54 100644 +index 329d5badbe340f9473d370b99b844dd6e7288f70..e79e9037fba32c9904583e6b2c7980faf0c2eae9 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1313,6 +1313,7 @@ public class PurpurWorldConfig { +@@ -1314,6 +1314,7 @@ public class PurpurWorldConfig { public boolean squidRidable = false; public double squidMaxHealth = 10.0D; public boolean squidImmuneToEAR = true; @@ -71,7 +71,7 @@ index b12f3a1a88033af6e041549064b50d24493c53eb..5fcfb4867cb60295b2100c5179deeefc private void squidSettings() { squidRidable = getBoolean("mobs.squid.ridable", squidRidable); if (PurpurConfig.version < 10) { -@@ -1322,6 +1323,7 @@ public class PurpurWorldConfig { +@@ -1323,6 +1324,7 @@ public class PurpurWorldConfig { } squidMaxHealth = getDouble("mobs.squid.attributes.max_health", squidMaxHealth); squidImmuneToEAR = getBoolean("mobs.squid.immune-to-EAR", squidImmuneToEAR); diff --git a/patches/server/0101-Entities-can-use-portals-configuration.patch b/patches/server/0101-Entities-can-use-portals-configuration.patch index 5437eeec5..75879c43b 100644 --- a/patches/server/0101-Entities-can-use-portals-configuration.patch +++ b/patches/server/0101-Entities-can-use-portals-configuration.patch @@ -27,10 +27,10 @@ index c5a1e46cc01e0f296a02536e70dc1443bb23a26f..63ab08c00048feba74e4b3c25308ee75 public float getBlockExplosionResistance(Explosion explosion, BlockGetter world, BlockPos pos, BlockState blockState, FluidState fluidState, float max) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 5fcfb4867cb60295b2100c5179deeefcc6adaf54..0d33e68749a8e16036f38ac830247ce09bb1d6ac 100644 +index e79e9037fba32c9904583e6b2c7980faf0c2eae9..c50c21d3bb03c6f7ba87cfea4a28bf9b1a5c3c76 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -273,6 +273,7 @@ public class PurpurWorldConfig { +@@ -274,6 +274,7 @@ public class PurpurWorldConfig { public boolean useBetterMending = false; public boolean boatEjectPlayersOnLand = false; public boolean disableDropsOnCrammingDeath = false; @@ -38,7 +38,7 @@ index 5fcfb4867cb60295b2100c5179deeefcc6adaf54..0d33e68749a8e16036f38ac830247ce0 public boolean milkCuresBadOmen = true; public double tridentLoyaltyVoidReturnHeight = 0.0D; public double voidDamageHeight = -64.0D; -@@ -281,6 +282,7 @@ public class PurpurWorldConfig { +@@ -282,6 +283,7 @@ public class PurpurWorldConfig { useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending); boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand); disableDropsOnCrammingDeath = getBoolean("gameplay-mechanics.disable-drops-on-cramming-death", disableDropsOnCrammingDeath); diff --git a/patches/server/0103-Customizable-wither-health-and-healing.patch b/patches/server/0103-Customizable-wither-health-and-healing.patch index 1ad3c3c6b..df838c2d4 100644 --- a/patches/server/0103-Customizable-wither-health-and-healing.patch +++ b/patches/server/0103-Customizable-wither-health-and-healing.patch @@ -23,10 +23,10 @@ index 12cd1b453150e098975c34e00ec9277ff9730c75..ee13bdfb5cfc9992d26126804c0a0bb5 this.bossEvent.setProgress(this.getHealth() / this.getMaxHealth()); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 0d33e68749a8e16036f38ac830247ce09bb1d6ac..48bf586acd5968819bdbbf8f224bb1dc9b47a8f5 100644 +index c50c21d3bb03c6f7ba87cfea4a28bf9b1a5c3c76..dc7bba566ec321f645848c734ab00a627e85bcb8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1524,6 +1524,8 @@ public class PurpurWorldConfig { +@@ -1525,6 +1525,8 @@ public class PurpurWorldConfig { public boolean witherRidableInWater = false; public double witherMaxY = 256D; public double witherMaxHealth = 300.0D; @@ -35,7 +35,7 @@ index 0d33e68749a8e16036f38ac830247ce09bb1d6ac..48bf586acd5968819bdbbf8f224bb1dc private void witherSettings() { witherRidable = getBoolean("mobs.wither.ridable", witherRidable); witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater); -@@ -1538,6 +1540,8 @@ public class PurpurWorldConfig { +@@ -1539,6 +1541,8 @@ public class PurpurWorldConfig { set("mobs.wither.attributes.max_health", oldValue); } witherMaxHealth = getDouble("mobs.wither.attributes.max_health", witherMaxHealth); diff --git a/patches/server/0104-Allow-toggling-special-MobSpawners-per-world.patch b/patches/server/0104-Allow-toggling-special-MobSpawners-per-world.patch index 56e93c922..77f76d25c 100644 --- a/patches/server/0104-Allow-toggling-special-MobSpawners-per-world.patch +++ b/patches/server/0104-Allow-toggling-special-MobSpawners-per-world.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Allow toggling special MobSpawners per world In vanilla, these are all hardcoded on for world type 0 (overworld) and hardcoded off for every other world type. Default config behaviour matches this. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index f0c4a16d9b95bc64c1c43154b2bff9a36885ec77..bfbcdaa117fd8860aa3e287a7e311f2f3bb42281 100644 +index 5316b5e9bfe57caed88a3ff38715e67ffd59df33..7944a33cf36878c9e4853637bfb9cba22ba8bc4d 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java @@ -83,6 +83,7 @@ import net.minecraft.world.entity.MobCategory; @@ -94,10 +94,10 @@ index f8ede3588bfda9a7d4d5807311a3e9c2651fd0a3..56967cef0f184def046935e20148574f if (NaturalSpawner.isSpawnPositionOk(SpawnPlacements.Type.ON_GROUND, world, blockposition2, EntityType.WANDERING_TRADER)) { blockposition1 = blockposition2; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 48bf586acd5968819bdbbf8f224bb1dc9b47a8f5..8c41d2b2729593a807efb5a9d10b13e9f7dcbd28 100644 +index dc7bba566ec321f645848c734ab00a627e85bcb8..2cb1d795b11203c2f5cd85d7ff049faeac7ac71a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -71,6 +71,12 @@ public class PurpurWorldConfig { +@@ -72,6 +72,12 @@ public class PurpurWorldConfig { return PurpurConfig.config.getBoolean("world-settings." + worldName + "." + path, PurpurConfig.config.getBoolean("world-settings.default." + path)); } @@ -110,7 +110,7 @@ index 48bf586acd5968819bdbbf8f224bb1dc9b47a8f5..8c41d2b2729593a807efb5a9d10b13e9 private double getDouble(String path, double def) { PurpurConfig.config.addDefault("world-settings.default." + path, def); return PurpurConfig.config.getDouble("world-settings." + worldName + "." + path, PurpurConfig.config.getDouble("world-settings.default." + path)); -@@ -220,6 +226,21 @@ public class PurpurWorldConfig { +@@ -221,6 +227,21 @@ public class PurpurWorldConfig { } } diff --git a/patches/server/0105-Raid-cooldown-setting.patch b/patches/server/0105-Raid-cooldown-setting.patch index 4fc2e4e81..aade6f3fd 100644 --- a/patches/server/0105-Raid-cooldown-setting.patch +++ b/patches/server/0105-Raid-cooldown-setting.patch @@ -52,10 +52,10 @@ index 45e369aa69a6b78def42b619b1b1b8259d4b30ea..de7443e7a27e51eabaed2d6d348ec8ea if (!this.raidMap.containsKey(raid.getId())) { this.raidMap.put(raid.getId(), raid); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 8c41d2b2729593a807efb5a9d10b13e9f7dcbd28..ad656e046e199510528eb2a51d004d438915ebef 100644 +index 2cb1d795b11203c2f5cd85d7ff049faeac7ac71a..5dd75f2766558101726eac91a66b44fe424036ce 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -299,6 +299,7 @@ public class PurpurWorldConfig { +@@ -300,6 +300,7 @@ public class PurpurWorldConfig { public double tridentLoyaltyVoidReturnHeight = 0.0D; public double voidDamageHeight = -64.0D; public double voidDamageDealt = 4.0D; @@ -63,7 +63,7 @@ index 8c41d2b2729593a807efb5a9d10b13e9f7dcbd28..ad656e046e199510528eb2a51d004d43 private void miscGameplayMechanicsSettings() { useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending); boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand); -@@ -308,6 +309,7 @@ public class PurpurWorldConfig { +@@ -309,6 +310,7 @@ public class PurpurWorldConfig { tridentLoyaltyVoidReturnHeight = getDouble("gameplay-mechanics.trident-loyalty-void-return-height", tridentLoyaltyVoidReturnHeight); voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight); voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt); diff --git a/patches/server/0106-Despawn-rate-config-options-per-projectile-type.patch b/patches/server/0106-Despawn-rate-config-options-per-projectile-type.patch index 66ec4d9ad..006a4d5e5 100644 --- a/patches/server/0106-Despawn-rate-config-options-per-projectile-type.patch +++ b/patches/server/0106-Despawn-rate-config-options-per-projectile-type.patch @@ -289,10 +289,10 @@ index 4a11f7417b438ee5711a720aca3321c88e970b2a..46b74271ce5f614f07754db14d2a552c + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index ad656e046e199510528eb2a51d004d438915ebef..8a7b456397d278b61a8ef1f21aad498bf0afe64c 100644 +index 5dd75f2766558101726eac91a66b44fe424036ce..9fc43202b0f06763f8dbe9a740abd53c8cb4ed6e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -266,6 +266,35 @@ public class PurpurWorldConfig { +@@ -267,6 +267,35 @@ public class PurpurWorldConfig { totemOfUndyingWorksInInventory = getBoolean("gameplay-mechanics.player.totem-of-undying-works-in-inventory", totemOfUndyingWorksInInventory); } diff --git a/patches/server/0107-Add-option-to-disable-zombie-aggressiveness-towards-.patch b/patches/server/0107-Add-option-to-disable-zombie-aggressiveness-towards-.patch index b22d4aa7e..06bb3ca76 100644 --- a/patches/server/0107-Add-option-to-disable-zombie-aggressiveness-towards-.patch +++ b/patches/server/0107-Add-option-to-disable-zombie-aggressiveness-towards-.patch @@ -71,10 +71,10 @@ index f6e33ca1933792a3a417f54d20fea8dc4a41c1b5..7eed6c176345c766a99d4304d61d2835 this.targetSelector.addGoal(5, new NearestAttackableTargetGoal<>(this, Turtle.class, 10, true, false, Turtle.BABY_ON_LAND_SELECTOR)); } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 8a7b456397d278b61a8ef1f21aad498bf0afe64c..f6ae1959d600fe6955e8d9a72cde2df4d229a2cc 100644 +index 9fc43202b0f06763f8dbe9a740abd53c8cb4ed6e..ff4ed0c1bdf5fbf2c137f0d059b6f696ab32e780 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1645,6 +1645,7 @@ public class PurpurWorldConfig { +@@ -1646,6 +1646,7 @@ public class PurpurWorldConfig { public boolean zombieJockeyOnlyBaby = true; public double zombieJockeyChance = 0.05D; public boolean zombieJockeyTryExistingChickens = true; @@ -82,7 +82,7 @@ index 8a7b456397d278b61a8ef1f21aad498bf0afe64c..f6ae1959d600fe6955e8d9a72cde2df4 private void zombieSettings() { zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable); zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater); -@@ -1658,6 +1659,7 @@ public class PurpurWorldConfig { +@@ -1659,6 +1660,7 @@ public class PurpurWorldConfig { zombieJockeyOnlyBaby = getBoolean("mobs.zombie.jockey.only-babies", zombieJockeyOnlyBaby); zombieJockeyChance = getDouble("mobs.zombie.jockey.chance", zombieJockeyChance); zombieJockeyTryExistingChickens = getBoolean("mobs.zombie.jockey.try-existing-chickens", zombieJockeyTryExistingChickens); diff --git a/patches/server/0108-Persistent-TileEntity-Lore-and-DisplayName.patch b/patches/server/0108-Persistent-TileEntity-Lore-and-DisplayName.patch index c594fcaf1..fb221980e 100644 --- a/patches/server/0108-Persistent-TileEntity-Lore-and-DisplayName.patch +++ b/patches/server/0108-Persistent-TileEntity-Lore-and-DisplayName.patch @@ -189,10 +189,10 @@ index c3a07ccccd5cc38552363c82398f432c8d624288..132c9e6a643995d9fde535a78d9edc9e + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index f6ae1959d600fe6955e8d9a72cde2df4d229a2cc..821a9103156dc8d3ea498af394bc414016c5eced 100644 +index ff4ed0c1bdf5fbf2c137f0d059b6f696ab32e780..4339e247345cc6d007fcb1a84cdb65d7b5667f25 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -325,6 +325,7 @@ public class PurpurWorldConfig { +@@ -326,6 +326,7 @@ public class PurpurWorldConfig { public boolean disableDropsOnCrammingDeath = false; public boolean entitiesCanUsePortals = true; public boolean milkCuresBadOmen = true; @@ -200,7 +200,7 @@ index f6ae1959d600fe6955e8d9a72cde2df4d229a2cc..821a9103156dc8d3ea498af394bc4140 public double tridentLoyaltyVoidReturnHeight = 0.0D; public double voidDamageHeight = -64.0D; public double voidDamageDealt = 4.0D; -@@ -335,6 +336,7 @@ public class PurpurWorldConfig { +@@ -336,6 +337,7 @@ public class PurpurWorldConfig { disableDropsOnCrammingDeath = getBoolean("gameplay-mechanics.disable-drops-on-cramming-death", disableDropsOnCrammingDeath); entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals); milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen); diff --git a/patches/server/0110-Flying-squids-Oh-my.patch b/patches/server/0110-Flying-squids-Oh-my.patch index ae3be48b6..777584991 100644 --- a/patches/server/0110-Flying-squids-Oh-my.patch +++ b/patches/server/0110-Flying-squids-Oh-my.patch @@ -58,10 +58,10 @@ index 2affff346a7fe81480e86cb61996039df0569853..12be4a2f25a7def8341acda47d10a256 float f1 = Mth.cos(f) * 0.2F; float f2 = -0.1F + this.squid.getRandom().nextFloat() * 0.2F; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 821a9103156dc8d3ea498af394bc414016c5eced..212c5bded10587ee7cca5c9bc89e7f355b485b13 100644 +index 4339e247345cc6d007fcb1a84cdb65d7b5667f25..ad05c691e51e30d44b5bb807228a470498a5a7bd 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -812,9 +812,11 @@ public class PurpurWorldConfig { +@@ -813,9 +813,11 @@ public class PurpurWorldConfig { public boolean glowSquidRidable = false; public double glowSquidMaxHealth = 10.0D; @@ -73,7 +73,7 @@ index 821a9103156dc8d3ea498af394bc414016c5eced..212c5bded10587ee7cca5c9bc89e7f35 } public boolean goatRidable = false; -@@ -1370,6 +1372,7 @@ public class PurpurWorldConfig { +@@ -1371,6 +1373,7 @@ public class PurpurWorldConfig { public double squidMaxHealth = 10.0D; public boolean squidImmuneToEAR = true; public double squidOffsetWaterCheck = 0.0D; @@ -81,7 +81,7 @@ index 821a9103156dc8d3ea498af394bc414016c5eced..212c5bded10587ee7cca5c9bc89e7f35 private void squidSettings() { squidRidable = getBoolean("mobs.squid.ridable", squidRidable); if (PurpurConfig.version < 10) { -@@ -1380,6 +1383,7 @@ public class PurpurWorldConfig { +@@ -1381,6 +1384,7 @@ public class PurpurWorldConfig { squidMaxHealth = getDouble("mobs.squid.attributes.max_health", squidMaxHealth); squidImmuneToEAR = getBoolean("mobs.squid.immune-to-EAR", squidImmuneToEAR); squidOffsetWaterCheck = getDouble("mobs.squid.water-offset-check", squidOffsetWaterCheck); diff --git a/patches/server/0111-Infinity-bow-settings.patch b/patches/server/0111-Infinity-bow-settings.patch index fafb4bcd5..bbf26abcd 100644 --- a/patches/server/0111-Infinity-bow-settings.patch +++ b/patches/server/0111-Infinity-bow-settings.patch @@ -27,10 +27,10 @@ index afe33f20578177cb517e1c116e6319481642e66c..fe4695adbb506733b4029ecfabcfda3d } else { user.startUsingItem(hand); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 212c5bded10587ee7cca5c9bc89e7f355b485b13..0821a3b8a4a8d36ed31f44c58d305cf7f37a0c19 100644 +index ad05c691e51e30d44b5bb807228a470498a5a7bd..54c5e96002a25f7f9d8c876c3d57aced6e5b2d25 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -121,6 +121,17 @@ public class PurpurWorldConfig { +@@ -122,6 +122,17 @@ public class PurpurWorldConfig { entityLifeSpan = getInt("gameplay-mechanics.entity-lifespan", entityLifeSpan); } diff --git a/patches/server/0112-Stonecutter-damage.patch b/patches/server/0112-Stonecutter-damage.patch index 9245cf910..aa9aa1e37 100644 --- a/patches/server/0112-Stonecutter-damage.patch +++ b/patches/server/0112-Stonecutter-damage.patch @@ -61,10 +61,10 @@ index 2ad5ff9a1d7de54e75436e99da8a73db9dc91bde..60605a8a021cc56f9c3ba22bc43c43c3 } else if (blockState.is(Blocks.HONEY_BLOCK)) { return BlockPathTypes.STICKY_HONEY; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 0821a3b8a4a8d36ed31f44c58d305cf7f37a0c19..6fc344bacb5943971a49e5ae6ceb22443525eeb1 100644 +index 54c5e96002a25f7f9d8c876c3d57aced6e5b2d25..0f6af8555c9acbe3eb3088859557adc6b9742c88 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -448,6 +448,11 @@ public class PurpurWorldConfig { +@@ -449,6 +449,11 @@ public class PurpurWorldConfig { spawnerDeactivateByRedstone = getBoolean("blocks.spawner.deactivate-by-redstone", spawnerDeactivateByRedstone); } diff --git a/patches/server/0113-Configurable-daylight-cycle.patch b/patches/server/0113-Configurable-daylight-cycle.patch index b25fecaff..0359fe849 100644 --- a/patches/server/0113-Configurable-daylight-cycle.patch +++ b/patches/server/0113-Configurable-daylight-cycle.patch @@ -70,10 +70,10 @@ index 7944a33cf36878c9e4853637bfb9cba22ba8bc4d..3bc63f24bf8c07b89562887bdc8cf756 public void tickCustomSpawners(boolean spawnMonsters, boolean spawnAnimals) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 6fc344bacb5943971a49e5ae6ceb22443525eeb1..0d924990f60019c6a6b9d1ac37e176af43cae93c 100644 +index 0f6af8555c9acbe3eb3088859557adc6b9742c88..875f1265f36d2c7785d525ccd8ce3fca17922f9b 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -103,6 +103,13 @@ public class PurpurWorldConfig { +@@ -104,6 +104,13 @@ public class PurpurWorldConfig { armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight); } diff --git a/patches/server/0115-Furnace-uses-lava-from-underneath.patch b/patches/server/0115-Furnace-uses-lava-from-underneath.patch index bb729d111..be5cb02fa 100644 --- a/patches/server/0115-Furnace-uses-lava-from-underneath.patch +++ b/patches/server/0115-Furnace-uses-lava-from-underneath.patch @@ -48,10 +48,10 @@ index 242d9b2ecb852d812d4887883cb2aabfd21e3715..2c64622577fdb6c2a5746471121403b6 private static boolean canBurn(@Nullable Recipe recipe, NonNullList slots, int count) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 0d924990f60019c6a6b9d1ac37e176af43cae93c..47ef898f0581dceccd1d33c9b13bcb3908e17a3d 100644 +index 875f1265f36d2c7785d525ccd8ce3fca17922f9b..b03f972040cf11a659560afa696a2f0498a6dd53 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -416,6 +416,17 @@ public class PurpurWorldConfig { +@@ -417,6 +417,17 @@ public class PurpurWorldConfig { farmlandGetsMoistFromBelow = getBoolean("blocks.farmland.gets-moist-from-below", farmlandGetsMoistFromBelow); } diff --git a/patches/server/0117-Ability-to-re-add-farmland-mechanics-from-Alpha.patch b/patches/server/0117-Ability-to-re-add-farmland-mechanics-from-Alpha.patch index 97dfcd52e..977c64ead 100644 --- a/patches/server/0117-Ability-to-re-add-farmland-mechanics-from-Alpha.patch +++ b/patches/server/0117-Ability-to-re-add-farmland-mechanics-from-Alpha.patch @@ -24,10 +24,10 @@ index ee5bc54e37e5ae120e846ddd2cae5ca39c293c98..f2ddc1c9c4fa029544866b779b4b0359 return; } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 47ef898f0581dceccd1d33c9b13bcb3908e17a3d..61116813f0f798f8f90467541bf5cde55714a053 100644 +index b03f972040cf11a659560afa696a2f0498a6dd53..5d428641a91c73bccf65e5a8247a64bf958d7a9e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -412,8 +412,10 @@ public class PurpurWorldConfig { +@@ -413,8 +413,10 @@ public class PurpurWorldConfig { } public boolean farmlandGetsMoistFromBelow = false; diff --git a/patches/server/0118-Add-adjustable-breeding-cooldown-to-config.patch b/patches/server/0118-Add-adjustable-breeding-cooldown-to-config.patch index 1df0eb0bb..e2324756b 100644 --- a/patches/server/0118-Add-adjustable-breeding-cooldown-to-config.patch +++ b/patches/server/0118-Add-adjustable-breeding-cooldown-to-config.patch @@ -95,10 +95,10 @@ index e52a708904d7c7d8d19e9def3bc915a9141c2bed..42c9952ee868fa54d9b6f2db8e08e3bc this.world = new CraftWorld((ServerLevel) this, gen, env); this.ticksPerAnimalSpawns = this.getCraftServer().getTicksPerAnimalSpawns(); // CraftBukkit diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 61116813f0f798f8f90467541bf5cde55714a053..914d3a6ac675d9b2e348af281db22768cc5ee616 100644 +index 5d428641a91c73bccf65e5a8247a64bf958d7a9e..db5bbd12e6f9d2ab173b0d186f449a26c9562091 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -348,6 +348,7 @@ public class PurpurWorldConfig { +@@ -349,6 +349,7 @@ public class PurpurWorldConfig { public double voidDamageHeight = -64.0D; public double voidDamageDealt = 4.0D; public int raidCooldownSeconds = 0; @@ -106,7 +106,7 @@ index 61116813f0f798f8f90467541bf5cde55714a053..914d3a6ac675d9b2e348af281db22768 private void miscGameplayMechanicsSettings() { useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending); boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand); -@@ -359,6 +360,7 @@ public class PurpurWorldConfig { +@@ -360,6 +361,7 @@ public class PurpurWorldConfig { voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight); voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt); raidCooldownSeconds = getInt("gameplay-mechanics.raid-cooldown-seconds", raidCooldownSeconds); diff --git a/patches/server/0119-Make-entity-breeding-times-configurable.patch b/patches/server/0119-Make-entity-breeding-times-configurable.patch index 07939399a..d88a7097f 100644 --- a/patches/server/0119-Make-entity-breeding-times-configurable.patch +++ b/patches/server/0119-Make-entity-breeding-times-configurable.patch @@ -474,10 +474,10 @@ index 5d289be8f0ef003abbce992e7662f6ddce4f4a99..5e3d7321a73144c3e4c43c18c5b748b2 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559daa81fab1b 100644 +index db5bbd12e6f9d2ab173b0d186f449a26c9562091..ce8d9aceaf367198f2dc81c9b675cee321063c07 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -486,9 +486,11 @@ public class PurpurWorldConfig { +@@ -487,9 +487,11 @@ public class PurpurWorldConfig { public boolean axolotlRidable = false; public double axolotlMaxHealth = 14.0D; @@ -489,7 +489,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean batRidable = false; -@@ -518,6 +520,7 @@ public class PurpurWorldConfig { +@@ -519,6 +521,7 @@ public class PurpurWorldConfig { public boolean beeRidableInWater = false; public double beeMaxY = 256D; public double beeMaxHealth = 10.0D; @@ -497,7 +497,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void beeSettings() { beeRidable = getBoolean("mobs.bee.ridable", beeRidable); beeRidableInWater = getBoolean("mobs.bee.ridable-in-water", beeRidableInWater); -@@ -528,6 +531,7 @@ public class PurpurWorldConfig { +@@ -529,6 +532,7 @@ public class PurpurWorldConfig { set("mobs.bee.attributes.max_health", oldValue); } beeMaxHealth = getDouble("mobs.bee.attributes.max_health", beeMaxHealth); @@ -505,7 +505,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean blazeRidable = false; -@@ -552,6 +556,7 @@ public class PurpurWorldConfig { +@@ -553,6 +557,7 @@ public class PurpurWorldConfig { public int catSpawnDelay = 1200; public int catSpawnSwampHutScanRange = 16; public int catSpawnVillageScanRange = 48; @@ -513,7 +513,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void catSettings() { catRidable = getBoolean("mobs.cat.ridable", catRidable); catRidableInWater = getBoolean("mobs.cat.ridable-in-water", catRidableInWater); -@@ -564,6 +569,7 @@ public class PurpurWorldConfig { +@@ -565,6 +570,7 @@ public class PurpurWorldConfig { catSpawnDelay = getInt("mobs.cat.spawn-delay", catSpawnDelay); catSpawnSwampHutScanRange = getInt("mobs.cat.scan-range-for-other-cats.swamp-hut", catSpawnSwampHutScanRange); catSpawnVillageScanRange = getInt("mobs.cat.scan-range-for-other-cats.village", catSpawnVillageScanRange); @@ -521,7 +521,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean caveSpiderRidable = false; -@@ -584,6 +590,7 @@ public class PurpurWorldConfig { +@@ -585,6 +591,7 @@ public class PurpurWorldConfig { public boolean chickenRidableInWater = false; public double chickenMaxHealth = 4.0D; public boolean chickenRetaliate = false; @@ -529,7 +529,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void chickenSettings() { chickenRidable = getBoolean("mobs.chicken.ridable", chickenRidable); chickenRidableInWater = getBoolean("mobs.chicken.ridable-in-water", chickenRidableInWater); -@@ -594,6 +601,7 @@ public class PurpurWorldConfig { +@@ -595,6 +602,7 @@ public class PurpurWorldConfig { } chickenMaxHealth = getDouble("mobs.chicken.attributes.max_health", chickenMaxHealth); chickenRetaliate = getBoolean("mobs.chicken.retaliate", chickenRetaliate); @@ -537,7 +537,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean codRidable = false; -@@ -612,6 +620,7 @@ public class PurpurWorldConfig { +@@ -613,6 +621,7 @@ public class PurpurWorldConfig { public boolean cowRidableInWater = false; public double cowMaxHealth = 10.0D; public int cowFeedMushrooms = 0; @@ -545,7 +545,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void cowSettings() { cowRidable = getBoolean("mobs.cow.ridable", cowRidable); cowRidableInWater = getBoolean("mobs.cow.ridable-in-water", cowRidableInWater); -@@ -622,6 +631,7 @@ public class PurpurWorldConfig { +@@ -623,6 +632,7 @@ public class PurpurWorldConfig { } cowMaxHealth = getDouble("mobs.cow.attributes.max_health", cowMaxHealth); cowFeedMushrooms = getInt("mobs.cow.feed-mushrooms-for-mooshroom", cowFeedMushrooms); @@ -553,7 +553,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean creeperRidable = false; -@@ -669,6 +679,7 @@ public class PurpurWorldConfig { +@@ -670,6 +680,7 @@ public class PurpurWorldConfig { public double donkeyJumpStrengthMax = 0.5D; public double donkeyMovementSpeedMin = 0.175D; public double donkeyMovementSpeedMax = 0.175D; @@ -561,7 +561,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void donkeySettings() { donkeyRidableInWater = getBoolean("mobs.donkey.ridable-in-water", donkeyRidableInWater); if (PurpurConfig.version < 10) { -@@ -684,6 +695,7 @@ public class PurpurWorldConfig { +@@ -685,6 +696,7 @@ public class PurpurWorldConfig { donkeyJumpStrengthMax = getDouble("mobs.donkey.attributes.jump_strength.max", donkeyJumpStrengthMax); donkeyMovementSpeedMin = getDouble("mobs.donkey.attributes.movement_speed.min", donkeyMovementSpeedMin); donkeyMovementSpeedMax = getDouble("mobs.donkey.attributes.movement_speed.max", donkeyMovementSpeedMax); @@ -569,7 +569,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean drownedRidable = false; -@@ -790,6 +802,7 @@ public class PurpurWorldConfig { +@@ -791,6 +803,7 @@ public class PurpurWorldConfig { public boolean foxRidableInWater = false; public double foxMaxHealth = 10.0D; public boolean foxTypeChangesWithTulips = false; @@ -577,7 +577,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void foxSettings() { foxRidable = getBoolean("mobs.fox.ridable", foxRidable); foxRidableInWater = getBoolean("mobs.fox.ridable-in-water", foxRidableInWater); -@@ -800,6 +813,7 @@ public class PurpurWorldConfig { +@@ -801,6 +814,7 @@ public class PurpurWorldConfig { } foxMaxHealth = getDouble("mobs.fox.attributes.max_health", foxMaxHealth); foxTypeChangesWithTulips = getBoolean("mobs.fox.tulips-change-type", foxTypeChangesWithTulips); @@ -585,7 +585,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean ghastRidable = false; -@@ -860,10 +874,12 @@ public class PurpurWorldConfig { +@@ -861,10 +875,12 @@ public class PurpurWorldConfig { public boolean goatRidable = false; public boolean goatRidableInWater = false; public double goatMaxHealth = 10.0D; @@ -598,7 +598,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean guardianRidable = false; -@@ -881,6 +897,7 @@ public class PurpurWorldConfig { +@@ -882,6 +898,7 @@ public class PurpurWorldConfig { public boolean hoglinRidable = false; public boolean hoglinRidableInWater = false; public double hoglinMaxHealth = 40.0D; @@ -606,7 +606,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void hoglinSettings() { hoglinRidable = getBoolean("mobs.hoglin.ridable", hoglinRidable); hoglinRidableInWater = getBoolean("mobs.hoglin.ridable-in-water", hoglinRidableInWater); -@@ -890,6 +907,7 @@ public class PurpurWorldConfig { +@@ -891,6 +908,7 @@ public class PurpurWorldConfig { set("mobs.hoglin.attributes.max_health", oldValue); } hoglinMaxHealth = getDouble("mobs.hoglin.attributes.max_health", hoglinMaxHealth); @@ -614,7 +614,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean horseRidableInWater = false; -@@ -899,6 +917,7 @@ public class PurpurWorldConfig { +@@ -900,6 +918,7 @@ public class PurpurWorldConfig { public double horseJumpStrengthMax = 1.0D; public double horseMovementSpeedMin = 0.1125D; public double horseMovementSpeedMax = 0.3375D; @@ -622,7 +622,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void horseSettings() { horseRidableInWater = getBoolean("mobs.horse.ridable-in-water", horseRidableInWater); if (PurpurConfig.version < 10) { -@@ -914,6 +933,7 @@ public class PurpurWorldConfig { +@@ -915,6 +934,7 @@ public class PurpurWorldConfig { horseJumpStrengthMax = getDouble("mobs.horse.attributes.jump_strength.max", horseJumpStrengthMax); horseMovementSpeedMin = getDouble("mobs.horse.attributes.movement_speed.min", horseMovementSpeedMin); horseMovementSpeedMax = getDouble("mobs.horse.attributes.movement_speed.max", horseMovementSpeedMax); @@ -630,7 +630,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean huskRidable = false; -@@ -984,6 +1004,7 @@ public class PurpurWorldConfig { +@@ -985,6 +1005,7 @@ public class PurpurWorldConfig { public double llamaJumpStrengthMax = 0.5D; public double llamaMovementSpeedMin = 0.175D; public double llamaMovementSpeedMax = 0.175D; @@ -638,7 +638,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void llamaSettings() { llamaRidable = getBoolean("mobs.llama.ridable", llamaRidable); llamaRidableInWater = getBoolean("mobs.llama.ridable-in-water", llamaRidableInWater); -@@ -1000,6 +1021,7 @@ public class PurpurWorldConfig { +@@ -1001,6 +1022,7 @@ public class PurpurWorldConfig { llamaJumpStrengthMax = getDouble("mobs.llama.attributes.jump_strength.max", llamaJumpStrengthMax); llamaMovementSpeedMin = getDouble("mobs.llama.attributes.movement_speed.min", llamaMovementSpeedMin); llamaMovementSpeedMax = getDouble("mobs.llama.attributes.movement_speed.max", llamaMovementSpeedMax); @@ -646,7 +646,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean magmaCubeRidable = false; -@@ -1019,6 +1041,7 @@ public class PurpurWorldConfig { +@@ -1020,6 +1042,7 @@ public class PurpurWorldConfig { public boolean mooshroomRidable = false; public boolean mooshroomRidableInWater = false; public double mooshroomMaxHealth = 10.0D; @@ -654,7 +654,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void mooshroomSettings() { mooshroomRidable = getBoolean("mobs.mooshroom.ridable", mooshroomRidable); mooshroomRidableInWater = getBoolean("mobs.mooshroom.ridable-in-water", mooshroomRidableInWater); -@@ -1028,6 +1051,7 @@ public class PurpurWorldConfig { +@@ -1029,6 +1052,7 @@ public class PurpurWorldConfig { set("mobs.mooshroom.attributes.max_health", oldValue); } mooshroomMaxHealth = getDouble("mobs.mooshroom.attributes.max_health", mooshroomMaxHealth); @@ -662,7 +662,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean muleRidableInWater = false; -@@ -1037,6 +1061,7 @@ public class PurpurWorldConfig { +@@ -1038,6 +1062,7 @@ public class PurpurWorldConfig { public double muleJumpStrengthMax = 0.5D; public double muleMovementSpeedMin = 0.175D; public double muleMovementSpeedMax = 0.175D; @@ -670,7 +670,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void muleSettings() { muleRidableInWater = getBoolean("mobs.mule.ridable-in-water", muleRidableInWater); if (PurpurConfig.version < 10) { -@@ -1052,11 +1077,13 @@ public class PurpurWorldConfig { +@@ -1053,11 +1078,13 @@ public class PurpurWorldConfig { muleJumpStrengthMax = getDouble("mobs.mule.attributes.jump_strength.max", muleJumpStrengthMax); muleMovementSpeedMin = getDouble("mobs.mule.attributes.movement_speed.min", muleMovementSpeedMin); muleMovementSpeedMax = getDouble("mobs.mule.attributes.movement_speed.max", muleMovementSpeedMax); @@ -684,7 +684,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void ocelotSettings() { ocelotRidable = getBoolean("mobs.ocelot.ridable", ocelotRidable); ocelotRidableInWater = getBoolean("mobs.ocelot.ridable-in-water", ocelotRidableInWater); -@@ -1066,11 +1093,13 @@ public class PurpurWorldConfig { +@@ -1067,11 +1094,13 @@ public class PurpurWorldConfig { set("mobs.ocelot.attributes.max_health", oldValue); } ocelotMaxHealth = getDouble("mobs.ocelot.attributes.max_health", ocelotMaxHealth); @@ -698,7 +698,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void pandaSettings() { pandaRidable = getBoolean("mobs.panda.ridable", pandaRidable); pandaRidableInWater = getBoolean("mobs.panda.ridable-in-water", pandaRidableInWater); -@@ -1080,6 +1109,7 @@ public class PurpurWorldConfig { +@@ -1081,6 +1110,7 @@ public class PurpurWorldConfig { set("mobs.panda.attributes.max_health", oldValue); } pandaMaxHealth = getDouble("mobs.panda.attributes.max_health", pandaMaxHealth); @@ -706,7 +706,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean parrotRidable = false; -@@ -1160,6 +1190,7 @@ public class PurpurWorldConfig { +@@ -1161,6 +1191,7 @@ public class PurpurWorldConfig { public boolean pigRidableInWater = false; public double pigMaxHealth = 10.0D; public boolean pigGiveSaddleBack = false; @@ -714,7 +714,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void pigSettings() { pigRidable = getBoolean("mobs.pig.ridable", pigRidable); pigRidableInWater = getBoolean("mobs.pig.ridable-in-water", pigRidableInWater); -@@ -1170,6 +1201,7 @@ public class PurpurWorldConfig { +@@ -1171,6 +1202,7 @@ public class PurpurWorldConfig { } pigMaxHealth = getDouble("mobs.pig.attributes.max_health", pigMaxHealth); pigGiveSaddleBack = getBoolean("mobs.pig.give-saddle-back", pigGiveSaddleBack); @@ -722,7 +722,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean piglinRidable = false; -@@ -1219,6 +1251,7 @@ public class PurpurWorldConfig { +@@ -1220,6 +1252,7 @@ public class PurpurWorldConfig { public double polarBearMaxHealth = 30.0D; public String polarBearBreedableItemString = ""; public Item polarBearBreedableItem = null; @@ -730,7 +730,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void polarBearSettings() { polarBearRidable = getBoolean("mobs.polar_bear.ridable", polarBearRidable); polarBearRidableInWater = getBoolean("mobs.polar_bear.ridable-in-water", polarBearRidableInWater); -@@ -1231,6 +1264,7 @@ public class PurpurWorldConfig { +@@ -1232,6 +1265,7 @@ public class PurpurWorldConfig { polarBearBreedableItemString = getString("mobs.polar_bear.breedable-item", polarBearBreedableItemString); Item item = Registry.ITEM.get(new ResourceLocation(polarBearBreedableItemString)); if (item != Items.AIR) polarBearBreedableItem = item; @@ -738,7 +738,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean pufferfishRidable = false; -@@ -1250,6 +1284,7 @@ public class PurpurWorldConfig { +@@ -1251,6 +1285,7 @@ public class PurpurWorldConfig { public double rabbitMaxHealth = 3.0D; public double rabbitNaturalToast = 0.0D; public double rabbitNaturalKiller = 0.0D; @@ -746,7 +746,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void rabbitSettings() { rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable); rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater); -@@ -1261,6 +1296,7 @@ public class PurpurWorldConfig { +@@ -1262,6 +1297,7 @@ public class PurpurWorldConfig { rabbitMaxHealth = getDouble("mobs.rabbit.attributes.max_health", rabbitMaxHealth); rabbitNaturalToast = getDouble("mobs.rabbit.spawn-toast-chance", rabbitNaturalToast); rabbitNaturalKiller = getDouble("mobs.rabbit.spawn-killer-rabbit-chance", rabbitNaturalKiller); @@ -754,7 +754,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean ravagerRidable = false; -@@ -1292,6 +1328,7 @@ public class PurpurWorldConfig { +@@ -1293,6 +1329,7 @@ public class PurpurWorldConfig { public boolean sheepRidable = false; public boolean sheepRidableInWater = false; public double sheepMaxHealth = 8.0D; @@ -762,7 +762,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void sheepSettings() { sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable); sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater); -@@ -1301,6 +1338,7 @@ public class PurpurWorldConfig { +@@ -1302,6 +1339,7 @@ public class PurpurWorldConfig { set("mobs.sheep.attributes.max_health", oldValue); } sheepMaxHealth = getDouble("mobs.sheep.attributes.max_health", sheepMaxHealth); @@ -770,7 +770,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean shulkerRidable = false; -@@ -1455,6 +1493,7 @@ public class PurpurWorldConfig { +@@ -1456,6 +1494,7 @@ public class PurpurWorldConfig { public boolean striderRidable = false; public boolean striderRidableInWater = false; public double striderMaxHealth = 20.0D; @@ -778,7 +778,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void striderSettings() { striderRidable = getBoolean("mobs.strider.ridable", striderRidable); striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater); -@@ -1464,6 +1503,7 @@ public class PurpurWorldConfig { +@@ -1465,6 +1504,7 @@ public class PurpurWorldConfig { set("mobs.strider.attributes.max_health", oldValue); } striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth); @@ -786,7 +786,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean traderLlamaRidable = false; -@@ -1474,6 +1514,7 @@ public class PurpurWorldConfig { +@@ -1475,6 +1515,7 @@ public class PurpurWorldConfig { public double traderLlamaJumpStrengthMax = 0.5D; public double traderLlamaMovementSpeedMin = 0.175D; public double traderLlamaMovementSpeedMax = 0.175D; @@ -794,7 +794,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void traderLlamaSettings() { traderLlamaRidable = getBoolean("mobs.trader_llama.ridable", traderLlamaRidable); traderLlamaRidableInWater = getBoolean("mobs.trader_llama.ridable-in-water", traderLlamaRidableInWater); -@@ -1490,6 +1531,7 @@ public class PurpurWorldConfig { +@@ -1491,6 +1532,7 @@ public class PurpurWorldConfig { traderLlamaJumpStrengthMax = getDouble("mobs.trader_llama.attributes.jump_strength.max", traderLlamaJumpStrengthMax); traderLlamaMovementSpeedMin = getDouble("mobs.trader_llama.attributes.movement_speed.min", traderLlamaMovementSpeedMin); traderLlamaMovementSpeedMax = getDouble("mobs.trader_llama.attributes.movement_speed.max", traderLlamaMovementSpeedMax); @@ -802,7 +802,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean tropicalFishRidable = false; -@@ -1510,6 +1552,7 @@ public class PurpurWorldConfig { +@@ -1511,6 +1553,7 @@ public class PurpurWorldConfig { public boolean turtleEggsBreakFromExpOrbs = true; public boolean turtleEggsBreakFromItems = true; public boolean turtleEggsBreakFromMinecarts = true; @@ -810,7 +810,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void turtleEggSettings() { turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable); turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater); -@@ -1522,6 +1565,7 @@ public class PurpurWorldConfig { +@@ -1523,6 +1566,7 @@ public class PurpurWorldConfig { turtleEggsBreakFromExpOrbs = getBoolean("blocks.turtle_egg.break-from-exp-orbs", turtleEggsBreakFromExpOrbs); turtleEggsBreakFromItems = getBoolean("blocks.turtle_egg.break-from-items", turtleEggsBreakFromItems); turtleEggsBreakFromMinecarts = getBoolean("blocks.turtle_egg.break-from-minecarts", turtleEggsBreakFromMinecarts); @@ -818,7 +818,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean vexRidable = false; -@@ -1550,6 +1594,7 @@ public class PurpurWorldConfig { +@@ -1551,6 +1595,7 @@ public class PurpurWorldConfig { public int villagerSpawnIronGolemRadius = 0; public int villagerSpawnIronGolemLimit = 0; public boolean villagerCanBreed = true; @@ -826,7 +826,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1566,6 +1611,7 @@ public class PurpurWorldConfig { +@@ -1567,6 +1612,7 @@ public class PurpurWorldConfig { villagerSpawnIronGolemRadius = getInt("mobs.villager.spawn-iron-golem.radius", villagerSpawnIronGolemRadius); villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit); villagerCanBreed = getBoolean("mobs.villager.can-breed", villagerCanBreed); @@ -834,7 +834,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da } public boolean vindicatorRidable = false; -@@ -1657,6 +1703,7 @@ public class PurpurWorldConfig { +@@ -1658,6 +1704,7 @@ public class PurpurWorldConfig { public boolean wolfRidable = false; public boolean wolfRidableInWater = false; public double wolfMaxHealth = 8.0D; @@ -842,7 +842,7 @@ index 914d3a6ac675d9b2e348af281db22768cc5ee616..b86fdb60e693d3ad1016d10d3f3559da private void wolfSettings() { wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable); wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater); -@@ -1666,6 +1713,7 @@ public class PurpurWorldConfig { +@@ -1667,6 +1714,7 @@ public class PurpurWorldConfig { set("mobs.wolf.attributes.max_health", oldValue); } wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth); diff --git a/patches/server/0120-Apply-display-names-from-item-forms-of-entities-to-e.patch b/patches/server/0120-Apply-display-names-from-item-forms-of-entities-to-e.patch index 0536ba28a..427aec272 100644 --- a/patches/server/0120-Apply-display-names-from-item-forms-of-entities-to-e.patch +++ b/patches/server/0120-Apply-display-names-from-item-forms-of-entities-to-e.patch @@ -142,10 +142,10 @@ index 282bfe4904637aaff1bd29e30ed18ba843c07cab..ddd50db8bb92c147d7c1eef4d1df3ac5 if (((HangingEntity) object).survives()) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b86fdb60e693d3ad1016d10d3f3559daa81fab1b..5f68883f98fb9f3b8db7944627607970619c2d6c 100644 +index ce8d9aceaf367198f2dc81c9b675cee321063c07..ef724d7ad3598786e885d472bbb9bf009d50296d 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -99,8 +99,10 @@ public class PurpurWorldConfig { +@@ -100,8 +100,10 @@ public class PurpurWorldConfig { } public float armorstandStepHeight = 0.0F; @@ -156,7 +156,7 @@ index b86fdb60e693d3ad1016d10d3f3559daa81fab1b..5f68883f98fb9f3b8db7944627607970 } public int daytimeTicks = 12000; -@@ -344,6 +346,7 @@ public class PurpurWorldConfig { +@@ -345,6 +347,7 @@ public class PurpurWorldConfig { public boolean entitiesCanUsePortals = true; public boolean milkCuresBadOmen = true; public boolean persistentTileEntityDisplayNames = false; @@ -164,7 +164,7 @@ index b86fdb60e693d3ad1016d10d3f3559daa81fab1b..5f68883f98fb9f3b8db7944627607970 public double tridentLoyaltyVoidReturnHeight = 0.0D; public double voidDamageHeight = -64.0D; public double voidDamageDealt = 4.0D; -@@ -356,6 +359,7 @@ public class PurpurWorldConfig { +@@ -357,6 +360,7 @@ public class PurpurWorldConfig { entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals); milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen); persistentTileEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-tileentity-display-names-and-lore", persistentTileEntityDisplayNames); diff --git a/patches/server/0121-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch b/patches/server/0121-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch index 1f1b3e12d..858c70985 100644 --- a/patches/server/0121-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch +++ b/patches/server/0121-Set-name-visible-when-using-a-Name-Tag-on-an-Armor-S.patch @@ -17,10 +17,10 @@ index 623f78c078fb3aa2665d7e8a37672438227bce6b..500c69e555c7247e20ef8cc59d834155 ((Mob) newEntityLiving).setPersistenceRequired(); // Paper end diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 5f68883f98fb9f3b8db7944627607970619c2d6c..a2547df37f58b67776da9b5eeba73b0ca6acbc87 100644 +index ef724d7ad3598786e885d472bbb9bf009d50296d..18fcd53c428bfb2eae159ce0bc0fc2d8c4d83f45 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -100,9 +100,11 @@ public class PurpurWorldConfig { +@@ -101,9 +101,11 @@ public class PurpurWorldConfig { public float armorstandStepHeight = 0.0F; public boolean armorstandSetNameVisible = false; diff --git a/patches/server/0122-Add-twisting-and-weeping-vines-growth-rates.patch b/patches/server/0122-Add-twisting-and-weeping-vines-growth-rates.patch index 8848ce1a1..68b939666 100644 --- a/patches/server/0122-Add-twisting-and-weeping-vines-growth-rates.patch +++ b/patches/server/0122-Add-twisting-and-weeping-vines-growth-rates.patch @@ -82,10 +82,10 @@ index 35b2bad76c45b5a94ba7f2e9c7a8cfeb8c3f498b..d2cb1a7e7ea364cb8e2af4c4e756d8e4 + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index a2547df37f58b67776da9b5eeba73b0ca6acbc87..06a639b5b20e4c1e4cef7263bae8d9e328342b55 100644 +index 18fcd53c428bfb2eae159ce0bc0fc2d8c4d83f45..1b6684f9069180b99ea5f404ec6520741b62b805 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -412,6 +412,11 @@ public class PurpurWorldConfig { +@@ -413,6 +413,11 @@ public class PurpurWorldConfig { } } @@ -97,7 +97,7 @@ index a2547df37f58b67776da9b5eeba73b0ca6acbc87..06a639b5b20e4c1e4cef7263bae8d9e3 public boolean dispenserApplyCursedArmor = true; public boolean dispenserPlaceAnvils = false; private void dispenserSettings() { -@@ -481,6 +486,16 @@ public class PurpurWorldConfig { +@@ -482,6 +487,16 @@ public class PurpurWorldConfig { stonecutterDamage = (float) getDouble("blocks.stonecutter.damage", stonecutterDamage); } diff --git a/patches/server/0123-Kelp-weeping-and-twisting-vines-configurable-max-gro.patch b/patches/server/0123-Kelp-weeping-and-twisting-vines-configurable-max-gro.patch index b38b6eb2c..897e30b98 100644 --- a/patches/server/0123-Kelp-weeping-and-twisting-vines-configurable-max-gro.patch +++ b/patches/server/0123-Kelp-weeping-and-twisting-vines-configurable-max-gro.patch @@ -103,10 +103,10 @@ index d2cb1a7e7ea364cb8e2af4c4e756d8e45bc0ca10..bb99dda3c5167f23b2500a1f37cbc1ca // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 06a639b5b20e4c1e4cef7263bae8d9e328342b55..d2699241f5c01e33e13ed2ceac9a828d3cf87f41 100644 +index 1b6684f9069180b99ea5f404ec6520741b62b805..b95ad55bb37bed8acae07e7e6483950d694ed99a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -413,8 +413,10 @@ public class PurpurWorldConfig { +@@ -414,8 +414,10 @@ public class PurpurWorldConfig { } public double caveVinesGrowthModifier = 0.10D; @@ -117,7 +117,7 @@ index 06a639b5b20e4c1e4cef7263bae8d9e328342b55..d2699241f5c01e33e13ed2ceac9a828d } public boolean dispenserApplyCursedArmor = true; -@@ -453,6 +455,11 @@ public class PurpurWorldConfig { +@@ -454,6 +456,11 @@ public class PurpurWorldConfig { lavaSpeedNotNether = getInt("blocks.lava.speed.not-nether", lavaSpeedNotNether); } @@ -129,7 +129,7 @@ index 06a639b5b20e4c1e4cef7263bae8d9e328342b55..d2699241f5c01e33e13ed2ceac9a828d public boolean respawnAnchorExplode = true; public double respawnAnchorExplosionPower = 5.0D; public boolean respawnAnchorExplosionFire = true; -@@ -487,13 +494,17 @@ public class PurpurWorldConfig { +@@ -488,13 +495,17 @@ public class PurpurWorldConfig { } public double twistingVinesGrowthModifier = 0.10D; diff --git a/patches/server/0124-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch b/patches/server/0124-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch index 19dd06623..5b1f941c7 100644 --- a/patches/server/0124-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch +++ b/patches/server/0124-Add-config-for-allowing-Endermen-to-despawn-even-whi.patch @@ -21,10 +21,10 @@ index 5ebedd6a156b06e98aded57c817f63429a1ae380..c99d295b999a28dd1eb504179250445d private static class EndermanFreezeWhenLookedAt extends Goal { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index d2699241f5c01e33e13ed2ceac9a828d3cf87f41..4d43cd955ba4e46a1149075591139a8ace262282 100644 +index b95ad55bb37bed8acae07e7e6483950d694ed99a..6664c12ebd83b22fd70c2050c1270c68504ad82e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -790,6 +790,7 @@ public class PurpurWorldConfig { +@@ -791,6 +791,7 @@ public class PurpurWorldConfig { public boolean endermanRidableInWater = false; public double endermanMaxHealth = 40.0D; public boolean endermanAllowGriefing = true; @@ -32,7 +32,7 @@ index d2699241f5c01e33e13ed2ceac9a828d3cf87f41..4d43cd955ba4e46a1149075591139a8a private void endermanSettings() { endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable); endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater); -@@ -800,6 +801,7 @@ public class PurpurWorldConfig { +@@ -801,6 +802,7 @@ public class PurpurWorldConfig { } endermanMaxHealth = getDouble("mobs.enderman.attributes.max_health", endermanMaxHealth); endermanAllowGriefing = getBoolean("mobs.enderman.allow-griefing", endermanAllowGriefing); diff --git a/patches/server/0126-Add-configurable-snowball-damage.patch b/patches/server/0126-Add-configurable-snowball-damage.patch index 2ac9b9617..21c19ed88 100644 --- a/patches/server/0126-Add-configurable-snowball-damage.patch +++ b/patches/server/0126-Add-configurable-snowball-damage.patch @@ -18,10 +18,10 @@ index ed2f039c4042861bcfa2e41d8281eefd37daa9fa..d5d84893c77b4e60a19032d765d76bfd } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 4d43cd955ba4e46a1149075591139a8ace262282..b49e7d4c21449ad6ccfe24c837fb7ea619b539b4 100644 +index 6664c12ebd83b22fd70c2050c1270c68504ad82e..c9f7fb60d02087d291c73f2a761efac4981f72ba 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -288,6 +288,11 @@ public class PurpurWorldConfig { +@@ -289,6 +289,11 @@ public class PurpurWorldConfig { totemOfUndyingWorksInInventory = getBoolean("gameplay-mechanics.player.totem-of-undying-works-in-inventory", totemOfUndyingWorksInInventory); } diff --git a/patches/server/0127-Zombie-break-door-minimum-difficulty-option.patch b/patches/server/0127-Zombie-break-door-minimum-difficulty-option.patch index 789b9c206..4ed652181 100644 --- a/patches/server/0127-Zombie-break-door-minimum-difficulty-option.patch +++ b/patches/server/0127-Zombie-break-door-minimum-difficulty-option.patch @@ -44,10 +44,10 @@ index fe045f8e35fe2aac51032a67ce52b27a53a8eff0..03bc86c776596ca5964c22adb757115d + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b49e7d4c21449ad6ccfe24c837fb7ea619b539b4..72592ed2f2fc83974b9adcff7406bb84a77ed62a 100644 +index c9f7fb60d02087d291c73f2a761efac4981f72ba..f4abf71d8c0bf03fa7c413e62b1ea356a3c51a5c 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1777,6 +1777,7 @@ public class PurpurWorldConfig { +@@ -1778,6 +1778,7 @@ public class PurpurWorldConfig { public double zombieJockeyChance = 0.05D; public boolean zombieJockeyTryExistingChickens = true; public boolean zombieAggressiveTowardsVillagerWhenLagging = true; @@ -55,7 +55,7 @@ index b49e7d4c21449ad6ccfe24c837fb7ea619b539b4..72592ed2f2fc83974b9adcff7406bb84 private void zombieSettings() { zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable); zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater); -@@ -1791,6 +1792,11 @@ public class PurpurWorldConfig { +@@ -1792,6 +1793,11 @@ public class PurpurWorldConfig { zombieJockeyChance = getDouble("mobs.zombie.jockey.chance", zombieJockeyChance); zombieJockeyTryExistingChickens = getBoolean("mobs.zombie.jockey.try-existing-chickens", zombieJockeyTryExistingChickens); zombieAggressiveTowardsVillagerWhenLagging = getBoolean("mobs.zombie.aggressive-towards-villager-when-lagging", zombieAggressiveTowardsVillagerWhenLagging); diff --git a/patches/server/0129-Changeable-Mob-Left-Handed-Chance.patch b/patches/server/0129-Changeable-Mob-Left-Handed-Chance.patch index d8e1370a9..d3db1fe04 100644 --- a/patches/server/0129-Changeable-Mob-Left-Handed-Chance.patch +++ b/patches/server/0129-Changeable-Mob-Left-Handed-Chance.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Changeable Mob Left Handed Chance diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index df79f95ab2c8b9106cac889787b840b166ff0a9c..2f061e2825127e4a38e261ccacf56926a2421bb0 100644 +index ea53ece9afe9e35323a88647901a83a4bf4225b8..11042a7b13e5029162ad977b5835c82afdfcfe74 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -1204,7 +1204,7 @@ public abstract class Mob extends LivingEntity { @@ -18,10 +18,10 @@ index df79f95ab2c8b9106cac889787b840b166ff0a9c..2f061e2825127e4a38e261ccacf56926 } else { this.setLeftHanded(false); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 72592ed2f2fc83974b9adcff7406bb84a77ed62a..adf2d5b31a5e15cd0afb7bea2c9016f6857358e9 100644 +index f4abf71d8c0bf03fa7c413e62b1ea356a3c51a5c..aa1fafb4f10405bd78e353476f10dfe78be7445c 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -128,8 +128,10 @@ public class PurpurWorldConfig { +@@ -129,8 +129,10 @@ public class PurpurWorldConfig { } public int entityLifeSpan = 0; diff --git a/patches/server/0130-Add-boat-fall-damage-config.patch b/patches/server/0130-Add-boat-fall-damage-config.patch index a1a76fdee..afc1b8f9f 100644 --- a/patches/server/0130-Add-boat-fall-damage-config.patch +++ b/patches/server/0130-Add-boat-fall-damage-config.patch @@ -27,10 +27,10 @@ index e57e8e7553d41af9686283b74cc01791a76c5b0e..c04d22495f38a41aa9ca2477edd7a24d if (!flag && isSpawnInvulnerable() && source != DamageSource.OUT_OF_WORLD) { // Purpur diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index adf2d5b31a5e15cd0afb7bea2c9016f6857358e9..6207b9accb2971d6ff8c69c9a665aa35b53ef0d9 100644 +index aa1fafb4f10405bd78e353476f10dfe78be7445c..986295105cc4ee8a49260840f265bbf0d6cc5654 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -351,6 +351,7 @@ public class PurpurWorldConfig { +@@ -352,6 +352,7 @@ public class PurpurWorldConfig { public boolean useBetterMending = false; public boolean boatEjectPlayersOnLand = false; @@ -38,7 +38,7 @@ index adf2d5b31a5e15cd0afb7bea2c9016f6857358e9..6207b9accb2971d6ff8c69c9a665aa35 public boolean disableDropsOnCrammingDeath = false; public boolean entitiesCanUsePortals = true; public boolean milkCuresBadOmen = true; -@@ -364,6 +365,7 @@ public class PurpurWorldConfig { +@@ -365,6 +366,7 @@ public class PurpurWorldConfig { private void miscGameplayMechanicsSettings() { useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending); boatEjectPlayersOnLand = getBoolean("gameplay-mechanics.boat.eject-players-on-land", boatEjectPlayersOnLand); diff --git a/patches/server/0131-Snow-Golem-rate-of-fire-config.patch b/patches/server/0131-Snow-Golem-rate-of-fire-config.patch index 92cfd0560..d7b6210cb 100644 --- a/patches/server/0131-Snow-Golem-rate-of-fire-config.patch +++ b/patches/server/0131-Snow-Golem-rate-of-fire-config.patch @@ -23,10 +23,10 @@ index 0733f9c057fef17fd79a4769f19b78f4c83a7784..1697b573ffd0c5d17d2d538c40f5ce4b this.goalSelector.addGoal(3, new LookAtPlayerGoal(this, Player.class, 6.0F)); this.goalSelector.addGoal(4, new RandomLookAroundGoal(this)); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 6207b9accb2971d6ff8c69c9a665aa35b53ef0d9..42961f8d61204798ad4942dfa87d66d72eb62ae5 100644 +index 986295105cc4ee8a49260840f265bbf0d6cc5654..4b7dfa4149df5ddc3b5d868e471da613e8eb7c71 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1473,6 +1473,10 @@ public class PurpurWorldConfig { +@@ -1474,6 +1474,10 @@ public class PurpurWorldConfig { public double snowGolemMaxHealth = 4.0D; public boolean snowGolemDropsPumpkin = true; public boolean snowGolemPutPumpkinBack = false; @@ -37,7 +37,7 @@ index 6207b9accb2971d6ff8c69c9a665aa35b53ef0d9..42961f8d61204798ad4942dfa87d66d7 private void snowGolemSettings() { snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable); snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater); -@@ -1485,6 +1489,10 @@ public class PurpurWorldConfig { +@@ -1486,6 +1490,10 @@ public class PurpurWorldConfig { snowGolemMaxHealth = getDouble("mobs.snow_golem.attributes.max_health", snowGolemMaxHealth); snowGolemDropsPumpkin = getBoolean("mobs.snow_golem.drop-pumpkin-when-sheared", snowGolemDropsPumpkin); snowGolemPutPumpkinBack = getBoolean("mobs.snow_golem.pumpkin-can-be-added-back", snowGolemPutPumpkinBack); diff --git a/patches/server/0134-Lobotomize-stuck-villagers.patch b/patches/server/0134-Lobotomize-stuck-villagers.patch index 273446dbb..abbcd78b1 100644 --- a/patches/server/0134-Lobotomize-stuck-villagers.patch +++ b/patches/server/0134-Lobotomize-stuck-villagers.patch @@ -53,10 +53,10 @@ index 4752205ab570ab8f6ae7f0a15ae610b603ade2ea..ddfb060e229df3a11cef4e0cb08f0cd2 if (this.assignProfessionWhenSpawned) { this.assignProfessionWhenSpawned = false; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 42961f8d61204798ad4942dfa87d66d72eb62ae5..1ea67f92a3d3c09751df0f9e3b6a3cf64f2590e8 100644 +index 4b7dfa4149df5ddc3b5d868e471da613e8eb7c71..a854ec0ea0bd0709087a1bf340a7c1706d8007d5 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1646,6 +1646,8 @@ public class PurpurWorldConfig { +@@ -1647,6 +1647,8 @@ public class PurpurWorldConfig { public int villagerSpawnIronGolemLimit = 0; public boolean villagerCanBreed = true; public int villagerBreedingTicks = 6000; @@ -65,7 +65,7 @@ index 42961f8d61204798ad4942dfa87d66d72eb62ae5..1ea67f92a3d3c09751df0f9e3b6a3cf6 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1663,6 +1665,13 @@ public class PurpurWorldConfig { +@@ -1664,6 +1666,13 @@ public class PurpurWorldConfig { villagerSpawnIronGolemLimit = getInt("mobs.villager.spawn-iron-golem.limit", villagerSpawnIronGolemLimit); villagerCanBreed = getBoolean("mobs.villager.can-breed", villagerCanBreed); villagerBreedingTicks = getInt("mobs.villager.breeding-delay-ticks", villagerBreedingTicks); diff --git a/patches/server/0135-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch b/patches/server/0135-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch index c0b17d54c..efca7e868 100644 --- a/patches/server/0135-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch +++ b/patches/server/0135-Option-for-Villager-Clerics-to-farm-Nether-Wart.patch @@ -145,7 +145,7 @@ index b615dc2a2127f0874775d1707e96edfb4d95b987..72ae6b3282aac806ae11b87024ee940e brain.setMemory(MemoryModuleType.SECONDARY_JOB_SITE, list); } else { diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index 9ee0acdd5b3ce1eb5c78bd85c6732ad7f92655e2..30961a60449a20c4168c4b0a593402df3066379d 100644 +index ddfb060e229df3a11cef4e0cb08f0cd22122a66c..beaa009603b68dc1f7d541d594af22cbe9bb0e9d 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -236,7 +236,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler @@ -185,10 +185,10 @@ index 901fc6520d58a5fa5f2cf1b4fa78fec6008aa409..9050cd25663c71197c597aac0ab2e612 public static final VillagerProfession FISHERMAN = register("fisherman", PoiType.FISHERMAN, SoundEvents.VILLAGER_WORK_FISHERMAN); public static final VillagerProfession FLETCHER = register("fletcher", PoiType.FLETCHER, SoundEvents.VILLAGER_WORK_FLETCHER); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 1ea67f92a3d3c09751df0f9e3b6a3cf64f2590e8..5d043e559a190a70d6a3e53e00ad060a43bc37f9 100644 +index a854ec0ea0bd0709087a1bf340a7c1706d8007d5..279c9ecce2c16018a03d03954832db1d67a5bff9 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1648,6 +1648,8 @@ public class PurpurWorldConfig { +@@ -1649,6 +1649,8 @@ public class PurpurWorldConfig { public int villagerBreedingTicks = 6000; public boolean villagerLobotomizeEnabled = false; public int villagerLobotomizeCheck = 60; @@ -197,7 +197,7 @@ index 1ea67f92a3d3c09751df0f9e3b6a3cf64f2590e8..5d043e559a190a70d6a3e53e00ad060a private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1672,6 +1674,8 @@ public class PurpurWorldConfig { +@@ -1673,6 +1675,8 @@ public class PurpurWorldConfig { } villagerLobotomizeEnabled = getBoolean("mobs.villager.lobotomize.enabled", villagerLobotomizeEnabled); villagerLobotomizeCheck = getInt("mobs.villager.lobotomize.check-interval", villagerLobotomizeCheck); diff --git a/patches/server/0136-Toggle-for-Zombified-Piglin-death-always-counting-as.patch b/patches/server/0136-Toggle-for-Zombified-Piglin-death-always-counting-as.patch index 3ec01f13d..acdb9c875 100644 --- a/patches/server/0136-Toggle-for-Zombified-Piglin-death-always-counting-as.patch +++ b/patches/server/0136-Toggle-for-Zombified-Piglin-death-always-counting-as.patch @@ -35,10 +35,10 @@ index 5b5958e37918b97fa994500fe94cd0e57faa1948..64216c9d76ce5ec6a845915ca078b0c0 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 5d043e559a190a70d6a3e53e00ad060a43bc37f9..faa45f7be455fcc101523b452fc09ea9f42cfa51 100644 +index 279c9ecce2c16018a03d03954832db1d67a5bff9..85812544e5b56f979298cfc270370965dee1a684 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1880,6 +1880,7 @@ public class PurpurWorldConfig { +@@ -1881,6 +1881,7 @@ public class PurpurWorldConfig { public boolean zombifiedPiglinJockeyOnlyBaby = true; public double zombifiedPiglinJockeyChance = 0.05D; public boolean zombifiedPiglinJockeyTryExistingChickens = true; @@ -46,7 +46,7 @@ index 5d043e559a190a70d6a3e53e00ad060a43bc37f9..faa45f7be455fcc101523b452fc09ea9 private void zombifiedPiglinSettings() { zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable); zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater); -@@ -1893,5 +1894,6 @@ public class PurpurWorldConfig { +@@ -1894,5 +1895,6 @@ public class PurpurWorldConfig { zombifiedPiglinJockeyOnlyBaby = getBoolean("mobs.zombified_piglin.jockey.only-babies", zombifiedPiglinJockeyOnlyBaby); zombifiedPiglinJockeyChance = getDouble("mobs.zombified_piglin.jockey.chance", zombifiedPiglinJockeyChance); zombifiedPiglinJockeyTryExistingChickens = getBoolean("mobs.zombified_piglin.jockey.try-existing-chickens", zombifiedPiglinJockeyTryExistingChickens); diff --git a/patches/server/0138-Configurable-chance-for-wolves-to-spawn-rabid.patch b/patches/server/0138-Configurable-chance-for-wolves-to-spawn-rabid.patch index 48e4ef921..20b4cd4f7 100644 --- a/patches/server/0138-Configurable-chance-for-wolves-to-spawn-rabid.patch +++ b/patches/server/0138-Configurable-chance-for-wolves-to-spawn-rabid.patch @@ -201,10 +201,10 @@ index ef4abaf68de01b0879f7d0b330d2d57cc6bd10f9..3e7409ebf1f94b9cf55f2d0b0fe17ca8 return super.mobInteract(player, hand); } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index faa45f7be455fcc101523b452fc09ea9f42cfa51..43376091a2596af66772e5a3a967d945d5b8a32b 100644 +index 85812544e5b56f979298cfc270370965dee1a684..393b5065afdc914cea56db7cb7f84e851f813e01 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1767,6 +1767,8 @@ public class PurpurWorldConfig { +@@ -1768,6 +1768,8 @@ public class PurpurWorldConfig { public boolean wolfRidable = false; public boolean wolfRidableInWater = false; public double wolfMaxHealth = 8.0D; @@ -213,7 +213,7 @@ index faa45f7be455fcc101523b452fc09ea9f42cfa51..43376091a2596af66772e5a3a967d945 public int wolfBreedingTicks = 6000; private void wolfSettings() { wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable); -@@ -1777,6 +1779,8 @@ public class PurpurWorldConfig { +@@ -1778,6 +1780,8 @@ public class PurpurWorldConfig { set("mobs.wolf.attributes.max_health", oldValue); } wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth); diff --git a/patches/server/0139-Configurable-default-wolf-collar-color.patch b/patches/server/0139-Configurable-default-wolf-collar-color.patch index a37845ade..2bdb97d10 100644 --- a/patches/server/0139-Configurable-default-wolf-collar-color.patch +++ b/patches/server/0139-Configurable-default-wolf-collar-color.patch @@ -24,10 +24,10 @@ index 3e7409ebf1f94b9cf55f2d0b0fe17ca8ec44659f..518dd0e6b4889c049e438b393baa795a @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 43376091a2596af66772e5a3a967d945d5b8a32b..294c83b75d43132b58421e927e5359e874158b42 100644 +index 393b5065afdc914cea56db7cb7f84e851f813e01..90ec6012066305a92b18cd37328afa664699998e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1767,6 +1767,7 @@ public class PurpurWorldConfig { +@@ -1768,6 +1768,7 @@ public class PurpurWorldConfig { public boolean wolfRidable = false; public boolean wolfRidableInWater = false; public double wolfMaxHealth = 8.0D; @@ -35,7 +35,7 @@ index 43376091a2596af66772e5a3a967d945d5b8a32b..294c83b75d43132b58421e927e5359e8 public boolean wolfMilkCuresRabies = true; public double wolfNaturalRabid = 0.0D; public int wolfBreedingTicks = 6000; -@@ -1779,6 +1780,11 @@ public class PurpurWorldConfig { +@@ -1780,6 +1781,11 @@ public class PurpurWorldConfig { set("mobs.wolf.attributes.max_health", oldValue); } wolfMaxHealth = getDouble("mobs.wolf.attributes.max_health", wolfMaxHealth); diff --git a/patches/server/0140-Phantom-flames-on-swoop.patch b/patches/server/0140-Phantom-flames-on-swoop.patch index 713f5c1a9..c2547c2a7 100644 --- a/patches/server/0140-Phantom-flames-on-swoop.patch +++ b/patches/server/0140-Phantom-flames-on-swoop.patch @@ -17,10 +17,10 @@ index c55aba456aa144e58fc35877c61eff309eaa391f..c39e2d05fa81279a684532ee796880b1 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 294c83b75d43132b58421e927e5359e874158b42..316b0499c49924771d1361e35f3a4d2ce46a739b 100644 +index 90ec6012066305a92b18cd37328afa664699998e..78d2eed6542e6fff46fdd802ea52ebf68cd6129d 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1177,6 +1177,7 @@ public class PurpurWorldConfig { +@@ -1178,6 +1178,7 @@ public class PurpurWorldConfig { public float phantomFlameDamage = 1.0F; public int phantomFlameFireTime = 8; public boolean phantomAllowGriefing = false; @@ -28,7 +28,7 @@ index 294c83b75d43132b58421e927e5359e874158b42..316b0499c49924771d1361e35f3a4d2c public double phantomMaxHealth = 20.0D; public double phantomAttackedByCrystalRadius = 0.0D; public float phantomAttackedByCrystalDamage = 1.0F; -@@ -1203,6 +1204,7 @@ public class PurpurWorldConfig { +@@ -1204,6 +1205,7 @@ public class PurpurWorldConfig { phantomFlameDamage = (float) getDouble("mobs.phantom.flames.damage", phantomFlameDamage); phantomFlameFireTime = getInt("mobs.phantom.flames.fire-time", phantomFlameFireTime); phantomAllowGriefing = getBoolean("mobs.phantom.allow-griefing", phantomAllowGriefing); diff --git a/patches/server/0141-Option-for-chests-to-open-even-with-a-solid-block-on.patch b/patches/server/0141-Option-for-chests-to-open-even-with-a-solid-block-on.patch index aebc97114..1722626fd 100644 --- a/patches/server/0141-Option-for-chests-to-open-even-with-a-solid-block-on.patch +++ b/patches/server/0141-Option-for-chests-to-open-even-with-a-solid-block-on.patch @@ -17,10 +17,10 @@ index d980a556785b52fe827310b83638139df0816b11..3c8c02fc92374def12254f7ffad604b2 return world.getBlockState(blockposition1).isRedstoneConductor(world, blockposition1); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 316b0499c49924771d1361e35f3a4d2ce46a739b..b3fd2b88b84c16c77dd2dc7ca2331126c9174624 100644 +index 78d2eed6542e6fff46fdd802ea52ebf68cd6129d..08c4d8b90e36195bdc15c9264d8064209cb72cf0 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -428,6 +428,11 @@ public class PurpurWorldConfig { +@@ -429,6 +429,11 @@ public class PurpurWorldConfig { caveVinesMaxGrowthAge = getInt("blocks.cave_vines.max-growth-age", caveVinesMaxGrowthAge); } diff --git a/patches/server/0143-Striders-give-saddle-back.patch b/patches/server/0143-Striders-give-saddle-back.patch index f412ba1ac..89a5b4fcc 100644 --- a/patches/server/0143-Striders-give-saddle-back.patch +++ b/patches/server/0143-Striders-give-saddle-back.patch @@ -28,10 +28,10 @@ index 9d314470361b2e17afdadc355c084254e5b03aff..66dab9b4e5ae05deeae11c8588a0b855 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b3fd2b88b84c16c77dd2dc7ca2331126c9174624..8cdc3f0ff720aeb613b32e03b910aeda06ea916e 100644 +index 08c4d8b90e36195bdc15c9264d8064209cb72cf0..dfcda4459ae7571c83ea962259171d70ce92094d 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1552,6 +1552,7 @@ public class PurpurWorldConfig { +@@ -1553,6 +1553,7 @@ public class PurpurWorldConfig { public boolean striderRidableInWater = false; public double striderMaxHealth = 20.0D; public int striderBreedingTicks = 6000; @@ -39,7 +39,7 @@ index b3fd2b88b84c16c77dd2dc7ca2331126c9174624..8cdc3f0ff720aeb613b32e03b910aeda private void striderSettings() { striderRidable = getBoolean("mobs.strider.ridable", striderRidable); striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater); -@@ -1562,6 +1563,7 @@ public class PurpurWorldConfig { +@@ -1563,6 +1564,7 @@ public class PurpurWorldConfig { } striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth); striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks); diff --git a/patches/server/0145-Full-netherite-armor-grants-fire-resistance.patch b/patches/server/0145-Full-netherite-armor-grants-fire-resistance.patch index 2e818ff16..45f24ce59 100644 --- a/patches/server/0145-Full-netherite-armor-grants-fire-resistance.patch +++ b/patches/server/0145-Full-netherite-armor-grants-fire-resistance.patch @@ -26,10 +26,10 @@ index d57a1984328750f5a6db748ef2db21fb3e2dff00..656b62c93dcbe15a79ebe684c18f4dc3 protected ItemCooldowns createItemCooldowns() { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 8cdc3f0ff720aeb613b32e03b910aeda06ea916e..18142fa6aa364fa228d3b5baa4b36a07db44deff 100644 +index dfcda4459ae7571c83ea962259171d70ce92094d..b01f1dd14b47922abcb28599e72ab12085ced23c 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -265,6 +265,19 @@ public class PurpurWorldConfig { +@@ -266,6 +266,19 @@ public class PurpurWorldConfig { villageSiegeSpawning = getBoolean("gameplay-mechanics.mob-spawning.village-sieges", predicate); } diff --git a/patches/server/0148-Add-mobGriefing-bypass-to-everything-affected.patch b/patches/server/0148-Add-mobGriefing-bypass-to-everything-affected.patch index 28146ed10..d1648a2f9 100644 --- a/patches/server/0148-Add-mobGriefing-bypass-to-everything-affected.patch +++ b/patches/server/0148-Add-mobGriefing-bypass-to-everything-affected.patch @@ -393,10 +393,10 @@ index e98fc3c235f9160f1928a8afb0d7991a6d3430cb..db35f756b7adb6b113659ae13b08ab89 return true; // Purpur end diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b794908660d55ebb 100644 +index b01f1dd14b47922abcb28599e72ab12085ced23c..9215917b9460796f4a498c51b1c4c50e900eaa5a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -367,9 +367,12 @@ public class PurpurWorldConfig { +@@ -368,9 +368,12 @@ public class PurpurWorldConfig { public boolean boatsDoFallDamage = true; public boolean disableDropsOnCrammingDeath = false; public boolean entitiesCanUsePortals = true; @@ -409,7 +409,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 public double tridentLoyaltyVoidReturnHeight = 0.0D; public double voidDamageHeight = -64.0D; public double voidDamageDealt = 4.0D; -@@ -381,9 +384,12 @@ public class PurpurWorldConfig { +@@ -382,9 +385,12 @@ public class PurpurWorldConfig { boatsDoFallDamage = getBoolean("gameplay-mechanics.boat.do-fall-damage", boatsDoFallDamage); disableDropsOnCrammingDeath = getBoolean("gameplay-mechanics.disable-drops-on-cramming-death", disableDropsOnCrammingDeath); entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals); @@ -422,7 +422,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 tridentLoyaltyVoidReturnHeight = getDouble("gameplay-mechanics.trident-loyalty-void-return-height", tridentLoyaltyVoidReturnHeight); voidDamageHeight = getDouble("gameplay-mechanics.void-damage-height", voidDamageHeight); voidDamageDealt = getDouble("gameplay-mechanics.void-damage-dealt", voidDamageDealt); -@@ -453,9 +459,11 @@ public class PurpurWorldConfig { +@@ -454,9 +460,11 @@ public class PurpurWorldConfig { dispenserPlaceAnvils = getBoolean("blocks.dispenser.place-anvils", dispenserPlaceAnvils); } @@ -434,7 +434,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 farmlandGetsMoistFromBelow = getBoolean("blocks.farmland.gets-moist-from-below", farmlandGetsMoistFromBelow); farmlandAlpha = getBoolean("blocks.farmland.use-alpha-farmland", farmlandAlpha); } -@@ -487,6 +495,11 @@ public class PurpurWorldConfig { +@@ -488,6 +496,11 @@ public class PurpurWorldConfig { kelpMaxGrowthAge = getInt("blocks.kelp.max-growth-age", kelpMaxGrowthAge); } @@ -446,7 +446,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 public boolean respawnAnchorExplode = true; public double respawnAnchorExplosionPower = 5.0D; public boolean respawnAnchorExplosionFire = true; -@@ -520,6 +533,11 @@ public class PurpurWorldConfig { +@@ -521,6 +534,11 @@ public class PurpurWorldConfig { stonecutterDamage = (float) getDouble("blocks.stonecutter.damage", stonecutterDamage); } @@ -458,7 +458,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 public double twistingVinesGrowthModifier = 0.10D; public int twistingVinesMaxGrowthAge = 25; private void twistingVinesSettings() { -@@ -698,6 +716,7 @@ public class PurpurWorldConfig { +@@ -699,6 +717,7 @@ public class PurpurWorldConfig { public double creeperMaxHealth = 20.0D; public double creeperChargedChance = 0.0D; public boolean creeperAllowGriefing = true; @@ -466,7 +466,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void creeperSettings() { creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable); creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater); -@@ -709,6 +728,7 @@ public class PurpurWorldConfig { +@@ -710,6 +729,7 @@ public class PurpurWorldConfig { creeperMaxHealth = getDouble("mobs.creeper.attributes.max_health", creeperMaxHealth); creeperChargedChance = getDouble("mobs.creeper.naturally-charged-chance", creeperChargedChance); creeperAllowGriefing = getBoolean("mobs.creeper.allow-griefing", creeperAllowGriefing); @@ -474,7 +474,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean dolphinRidable = false; -@@ -796,6 +816,7 @@ public class PurpurWorldConfig { +@@ -797,6 +817,7 @@ public class PurpurWorldConfig { public double enderDragonMaxY = 256D; public double enderDragonMaxHealth = 200.0D; public boolean enderDragonAlwaysDropsFullExp = false; @@ -482,7 +482,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void enderDragonSettings() { enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable); enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater); -@@ -811,6 +832,7 @@ public class PurpurWorldConfig { +@@ -812,6 +833,7 @@ public class PurpurWorldConfig { } enderDragonMaxHealth = getDouble("mobs.ender_dragon.attributes.max_health", enderDragonMaxHealth); enderDragonAlwaysDropsFullExp = getBoolean("mobs.ender_dragon.always-drop-full-exp", enderDragonAlwaysDropsFullExp); @@ -490,7 +490,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean endermanRidable = false; -@@ -818,6 +840,7 @@ public class PurpurWorldConfig { +@@ -819,6 +841,7 @@ public class PurpurWorldConfig { public double endermanMaxHealth = 40.0D; public boolean endermanAllowGriefing = true; public boolean endermanDespawnEvenWithBlock = false; @@ -498,7 +498,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void endermanSettings() { endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable); endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater); -@@ -829,6 +852,7 @@ public class PurpurWorldConfig { +@@ -830,6 +853,7 @@ public class PurpurWorldConfig { endermanMaxHealth = getDouble("mobs.enderman.attributes.max_health", endermanMaxHealth); endermanAllowGriefing = getBoolean("mobs.enderman.allow-griefing", endermanAllowGriefing); endermanDespawnEvenWithBlock = getBoolean("mobs.enderman.can-despawn-with-held-block", endermanDespawnEvenWithBlock); @@ -506,7 +506,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean endermiteRidable = false; -@@ -848,6 +872,7 @@ public class PurpurWorldConfig { +@@ -849,6 +873,7 @@ public class PurpurWorldConfig { public boolean evokerRidable = false; public boolean evokerRidableInWater = false; public double evokerMaxHealth = 24.0D; @@ -514,7 +514,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void evokerSettings() { evokerRidable = getBoolean("mobs.evoker.ridable", evokerRidable); evokerRidableInWater = getBoolean("mobs.evoker.ridable-in-water", evokerRidableInWater); -@@ -857,6 +882,7 @@ public class PurpurWorldConfig { +@@ -858,6 +883,7 @@ public class PurpurWorldConfig { set("mobs.evoker.attributes.max_health", oldValue); } evokerMaxHealth = getDouble("mobs.evoker.attributes.max_health", evokerMaxHealth); @@ -522,7 +522,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean foxRidable = false; -@@ -864,6 +890,7 @@ public class PurpurWorldConfig { +@@ -865,6 +891,7 @@ public class PurpurWorldConfig { public double foxMaxHealth = 10.0D; public boolean foxTypeChangesWithTulips = false; public int foxBreedingTicks = 6000; @@ -530,7 +530,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void foxSettings() { foxRidable = getBoolean("mobs.fox.ridable", foxRidable); foxRidableInWater = getBoolean("mobs.fox.ridable-in-water", foxRidableInWater); -@@ -875,6 +902,7 @@ public class PurpurWorldConfig { +@@ -876,6 +903,7 @@ public class PurpurWorldConfig { foxMaxHealth = getDouble("mobs.fox.attributes.max_health", foxMaxHealth); foxTypeChangesWithTulips = getBoolean("mobs.fox.tulips-change-type", foxTypeChangesWithTulips); foxBreedingTicks = getInt("mobs.fox.breeding-delay-ticks", foxBreedingTicks); @@ -538,7 +538,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean ghastRidable = false; -@@ -1270,6 +1298,7 @@ public class PurpurWorldConfig { +@@ -1271,6 +1299,7 @@ public class PurpurWorldConfig { public boolean piglinRidable = false; public boolean piglinRidableInWater = false; public double piglinMaxHealth = 16.0D; @@ -546,7 +546,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void piglinSettings() { piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable); piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater); -@@ -1279,6 +1308,7 @@ public class PurpurWorldConfig { +@@ -1280,6 +1309,7 @@ public class PurpurWorldConfig { set("mobs.piglin.attributes.max_health", oldValue); } piglinMaxHealth = getDouble("mobs.piglin.attributes.max_health", piglinMaxHealth); @@ -554,7 +554,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean piglinBruteRidable = false; -@@ -1298,6 +1328,7 @@ public class PurpurWorldConfig { +@@ -1299,6 +1329,7 @@ public class PurpurWorldConfig { public boolean pillagerRidable = false; public boolean pillagerRidableInWater = false; public double pillagerMaxHealth = 24.0D; @@ -562,7 +562,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void pillagerSettings() { pillagerRidable = getBoolean("mobs.pillager.ridable", pillagerRidable); pillagerRidableInWater = getBoolean("mobs.pillager.ridable-in-water", pillagerRidableInWater); -@@ -1307,6 +1338,7 @@ public class PurpurWorldConfig { +@@ -1308,6 +1339,7 @@ public class PurpurWorldConfig { set("mobs.pillager.attributes.max_health", oldValue); } pillagerMaxHealth = getDouble("mobs.pillager.attributes.max_health", pillagerMaxHealth); @@ -570,7 +570,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean polarBearRidable = false; -@@ -1348,6 +1380,7 @@ public class PurpurWorldConfig { +@@ -1349,6 +1381,7 @@ public class PurpurWorldConfig { public double rabbitNaturalToast = 0.0D; public double rabbitNaturalKiller = 0.0D; public int rabbitBreedingTicks = 6000; @@ -578,7 +578,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void rabbitSettings() { rabbitRidable = getBoolean("mobs.rabbit.ridable", rabbitRidable); rabbitRidableInWater = getBoolean("mobs.rabbit.ridable-in-water", rabbitRidableInWater); -@@ -1360,11 +1393,13 @@ public class PurpurWorldConfig { +@@ -1361,11 +1394,13 @@ public class PurpurWorldConfig { rabbitNaturalToast = getDouble("mobs.rabbit.spawn-toast-chance", rabbitNaturalToast); rabbitNaturalKiller = getDouble("mobs.rabbit.spawn-killer-rabbit-chance", rabbitNaturalKiller); rabbitBreedingTicks = getInt("mobs.rabbit.breeding-delay-ticks", rabbitBreedingTicks); @@ -592,7 +592,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void ravagerSettings() { ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable); ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater); -@@ -1374,6 +1409,7 @@ public class PurpurWorldConfig { +@@ -1375,6 +1410,7 @@ public class PurpurWorldConfig { set("mobs.ravager.attributes.max_health", oldValue); } ravagerMaxHealth = getDouble("mobs.ravager.attributes.max_health", ravagerMaxHealth); @@ -600,7 +600,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean salmonRidable = false; -@@ -1392,6 +1428,7 @@ public class PurpurWorldConfig { +@@ -1393,6 +1429,7 @@ public class PurpurWorldConfig { public boolean sheepRidableInWater = false; public double sheepMaxHealth = 8.0D; public int sheepBreedingTicks = 6000; @@ -608,7 +608,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void sheepSettings() { sheepRidable = getBoolean("mobs.sheep.ridable", sheepRidable); sheepRidableInWater = getBoolean("mobs.sheep.ridable-in-water", sheepRidableInWater); -@@ -1402,6 +1439,7 @@ public class PurpurWorldConfig { +@@ -1403,6 +1440,7 @@ public class PurpurWorldConfig { } sheepMaxHealth = getDouble("mobs.sheep.attributes.max_health", sheepMaxHealth); sheepBreedingTicks = getInt("mobs.sheep.breeding-delay-ticks", sheepBreedingTicks); @@ -616,7 +616,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean shulkerRidable = false; -@@ -1421,6 +1459,7 @@ public class PurpurWorldConfig { +@@ -1422,6 +1460,7 @@ public class PurpurWorldConfig { public boolean silverfishRidable = false; public boolean silverfishRidableInWater = false; public double silverfishMaxHealth = 8.0D; @@ -624,7 +624,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void silverfishSettings() { silverfishRidable = getBoolean("mobs.silverfish.ridable", silverfishRidable); silverfishRidableInWater = getBoolean("mobs.silverfish.ridable-in-water", silverfishRidableInWater); -@@ -1430,6 +1469,7 @@ public class PurpurWorldConfig { +@@ -1431,6 +1470,7 @@ public class PurpurWorldConfig { set("mobs.silverfish.attributes.max_health", oldValue); } silverfishMaxHealth = getDouble("mobs.silverfish.attributes.max_health", silverfishMaxHealth); @@ -632,7 +632,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean skeletonRidable = false; -@@ -1497,6 +1537,7 @@ public class PurpurWorldConfig { +@@ -1498,6 +1538,7 @@ public class PurpurWorldConfig { public int snowGolemSnowBallMax = 20; public float snowGolemSnowBallModifier = 10.0F; public double snowGolemAttackDistance = 1.25D; @@ -640,7 +640,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void snowGolemSettings() { snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable); snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater); -@@ -1513,6 +1554,7 @@ public class PurpurWorldConfig { +@@ -1514,6 +1555,7 @@ public class PurpurWorldConfig { snowGolemSnowBallMax = getInt("mobs.snow_golem.max-shoot-interval-ticks", snowGolemSnowBallMax); snowGolemSnowBallModifier = (float) getDouble("mobs.snow_golem.snow-ball-modifier", snowGolemSnowBallModifier); snowGolemAttackDistance = getDouble("mobs.snow_golem.attack-distance", snowGolemAttackDistance); @@ -648,7 +648,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean squidRidable = false; -@@ -1672,6 +1714,7 @@ public class PurpurWorldConfig { +@@ -1673,6 +1715,7 @@ public class PurpurWorldConfig { public int villagerLobotomizeCheck = 60; public boolean villagerClericsFarmWarts = false; public boolean villagerClericFarmersThrowWarts = true; @@ -656,7 +656,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1698,6 +1741,7 @@ public class PurpurWorldConfig { +@@ -1699,6 +1742,7 @@ public class PurpurWorldConfig { villagerLobotomizeCheck = getInt("mobs.villager.lobotomize.check-interval", villagerLobotomizeCheck); villagerClericsFarmWarts = getBoolean("mobs.villager.clerics-farm-warts", villagerClericsFarmWarts); villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts); @@ -664,7 +664,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean vindicatorRidable = false; -@@ -1754,6 +1798,7 @@ public class PurpurWorldConfig { +@@ -1755,6 +1799,7 @@ public class PurpurWorldConfig { public double witherMaxHealth = 300.0D; public float witherHealthRegenAmount = 1.0f; public int witherHealthRegenDelay = 20; @@ -672,7 +672,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void witherSettings() { witherRidable = getBoolean("mobs.wither.ridable", witherRidable); witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater); -@@ -1770,6 +1815,7 @@ public class PurpurWorldConfig { +@@ -1771,6 +1816,7 @@ public class PurpurWorldConfig { witherMaxHealth = getDouble("mobs.wither.attributes.max_health", witherMaxHealth); witherHealthRegenAmount = (float) getDouble("mobs.wither.health-regen-amount", witherHealthRegenAmount); witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay); @@ -680,7 +680,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 } public boolean witherSkeletonRidable = false; -@@ -1835,6 +1881,7 @@ public class PurpurWorldConfig { +@@ -1836,6 +1882,7 @@ public class PurpurWorldConfig { public boolean zombieJockeyTryExistingChickens = true; public boolean zombieAggressiveTowardsVillagerWhenLagging = true; public Difficulty zombieBreakDoorMinDifficulty = Difficulty.HARD; @@ -688,7 +688,7 @@ index 18142fa6aa364fa228d3b5baa4b36a07db44deff..affb6ce2c48b3bfbf3ded132b7949086 private void zombieSettings() { zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable); zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater); -@@ -1854,6 +1901,7 @@ public class PurpurWorldConfig { +@@ -1855,6 +1902,7 @@ public class PurpurWorldConfig { } catch (IllegalArgumentException ignore) { zombieBreakDoorMinDifficulty = Difficulty.HARD; } diff --git a/patches/server/0149-Config-to-allow-Note-Block-sounds-when-blocked.patch b/patches/server/0149-Config-to-allow-Note-Block-sounds-when-blocked.patch index 888508513..b25c1f566 100644 --- a/patches/server/0149-Config-to-allow-Note-Block-sounds-when-blocked.patch +++ b/patches/server/0149-Config-to-allow-Note-Block-sounds-when-blocked.patch @@ -22,10 +22,10 @@ index d3c8fd8399629efb8bcbaf7d9a0c43340fcdfeda..c74df3b5c2a25469ad3fb6a853438bbc org.bukkit.event.block.NotePlayEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callNotePlayEvent(world, blockposition, data.getValue(NoteBlock.INSTRUMENT), data.getValue(NoteBlock.NOTE)); if (!event.isCancelled()) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index affb6ce2c48b3bfbf3ded132b794908660d55ebb..d1ad1f384ae289dd516cbe27e611c66d70ba4853 100644 +index 9215917b9460796f4a498c51b1c4c50e900eaa5a..c83b43a37df66653811e56f0369b6416d5e8240f 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -370,6 +370,7 @@ public class PurpurWorldConfig { +@@ -371,6 +371,7 @@ public class PurpurWorldConfig { public boolean entitiesPickUpLootBypassMobGriefing = false; public boolean fireballsBypassMobGriefing = false; public boolean milkCuresBadOmen = true; @@ -33,7 +33,7 @@ index affb6ce2c48b3bfbf3ded132b794908660d55ebb..d1ad1f384ae289dd516cbe27e611c66d public boolean persistentTileEntityDisplayNames = false; public boolean persistentDroppableEntityDisplayNames = false; public boolean projectilesBypassMobGriefing = false; -@@ -387,6 +388,7 @@ public class PurpurWorldConfig { +@@ -388,6 +389,7 @@ public class PurpurWorldConfig { entitiesPickUpLootBypassMobGriefing = getBoolean("gameplay-mechanics.entities-pick-up-loot-bypass-mob-griefing", entitiesPickUpLootBypassMobGriefing); fireballsBypassMobGriefing = getBoolean("gameplay-mechanics.fireballs-bypass-mob-griefing", fireballsBypassMobGriefing); milkCuresBadOmen = getBoolean("gameplay-mechanics.milk-cures-bad-omen", milkCuresBadOmen); diff --git a/patches/server/0150-Add-EntityTeleportHinderedEvent.patch b/patches/server/0150-Add-EntityTeleportHinderedEvent.patch index 42165c545..6ae24d3d7 100644 --- a/patches/server/0150-Add-EntityTeleportHinderedEvent.patch +++ b/patches/server/0150-Add-EntityTeleportHinderedEvent.patch @@ -78,10 +78,10 @@ index 09cbce5aec6eabfa220f7de81b492a180cb8ca1e..265770975ad1190283103b04cdd52a07 blockEntity.teleportCooldown = 100; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index d1ad1f384ae289dd516cbe27e611c66d70ba4853..e1b8d150f952d2b80ad37caeb273f60c3553aa11 100644 +index c83b43a37df66653811e56f0369b6416d5e8240f..66bf3fb4a799a172e8662d68549df8fbecb23d34 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -369,6 +369,7 @@ public class PurpurWorldConfig { +@@ -370,6 +370,7 @@ public class PurpurWorldConfig { public boolean entitiesCanUsePortals = true; public boolean entitiesPickUpLootBypassMobGriefing = false; public boolean fireballsBypassMobGriefing = false; @@ -89,7 +89,7 @@ index d1ad1f384ae289dd516cbe27e611c66d70ba4853..e1b8d150f952d2b80ad37caeb273f60c public boolean milkCuresBadOmen = true; public boolean noteBlockIgnoreAbove = false; public boolean persistentTileEntityDisplayNames = false; -@@ -387,6 +388,7 @@ public class PurpurWorldConfig { +@@ -388,6 +389,7 @@ public class PurpurWorldConfig { entitiesCanUsePortals = getBoolean("gameplay-mechanics.entities-can-use-portals", entitiesCanUsePortals); entitiesPickUpLootBypassMobGriefing = getBoolean("gameplay-mechanics.entities-pick-up-loot-bypass-mob-griefing", entitiesPickUpLootBypassMobGriefing); fireballsBypassMobGriefing = getBoolean("gameplay-mechanics.fireballs-bypass-mob-griefing", fireballsBypassMobGriefing); @@ -113,7 +113,7 @@ index 52760eabb45c8d2a3db4056ef219e7ea5cf8d954..53fc3c278624d8c1d2f8bee6df27315d } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index b49d5e4edfea04cd916ffa23ea18aaf246898c2a..c6926c5b521fdfc2913d0f130752aca8ccd5fa63 100644 +index d38d724cd024bec0554b078b0c7fd479a51dd736..5b3bfb4c6fb717f172a62899f8e8ff81ba062c8c 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1003,6 +1003,10 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/server/0152-Farmland-trampling-changes.patch b/patches/server/0152-Farmland-trampling-changes.patch index c22fa4c33..7b2834b97 100644 --- a/patches/server/0152-Farmland-trampling-changes.patch +++ b/patches/server/0152-Farmland-trampling-changes.patch @@ -37,10 +37,10 @@ index 2a33fbdc1d047584b0cd4b3da5892ccd7efc6943..6bfaeaeb6f9accf269febbf3e0d71d57 if (CraftEventFactory.callEntityChangeBlockEvent(entity, pos, Blocks.DIRT.defaultBlockState()).isCancelled()) { return; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index e1b8d150f952d2b80ad37caeb273f60c3553aa11..5c021c6aef21ff3534a4b6a95fd1c0d5ac2ea2c1 100644 +index 66bf3fb4a799a172e8662d68549df8fbecb23d34..510a30590795c9d60e62529930e1b3e360e890cb 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -466,10 +466,16 @@ public class PurpurWorldConfig { +@@ -467,10 +467,16 @@ public class PurpurWorldConfig { public boolean farmlandBypassMobGriefing = false; public boolean farmlandGetsMoistFromBelow = false; public boolean farmlandAlpha = false; diff --git a/patches/server/0153-Movement-options-for-armor-stands.patch b/patches/server/0153-Movement-options-for-armor-stands.patch index 392ffc1ab..dc10730ed 100644 --- a/patches/server/0153-Movement-options-for-armor-stands.patch +++ b/patches/server/0153-Movement-options-for-armor-stands.patch @@ -66,10 +66,10 @@ index 796ab61f4513c02b0d55d34044d2f7084c447796..d119f8ab447bc17deabc494463de4961 + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 5c021c6aef21ff3534a4b6a95fd1c0d5ac2ea2c1..f4ce54d4078afc7c3a598dcdc8e4a19b3c68e246 100644 +index 510a30590795c9d60e62529930e1b3e360e890cb..8cadc5cf950b8189c9b0277a8778399769d41c91 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -101,10 +101,16 @@ public class PurpurWorldConfig { +@@ -102,10 +102,16 @@ public class PurpurWorldConfig { public float armorstandStepHeight = 0.0F; public boolean armorstandSetNameVisible = false; public boolean armorstandFixNametags = false; diff --git a/patches/server/0154-Fix-stuck-in-portals.patch b/patches/server/0154-Fix-stuck-in-portals.patch index 4cd90408d..352aff546 100644 --- a/patches/server/0154-Fix-stuck-in-portals.patch +++ b/patches/server/0154-Fix-stuck-in-portals.patch @@ -37,10 +37,10 @@ index 1ffbcac353fcb604ab41e3b4ed4f6555833c25ff..7d7d5db8c8206a68ae3c241e2106af45 this.isInsidePortal = true; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index f4ce54d4078afc7c3a598dcdc8e4a19b3c68e246..996f56d8b82fb35fec5c38da6fb99b171159ac7d 100644 +index 8cadc5cf950b8189c9b0277a8778399769d41c91..68363c8bfe8e61e3c59d3af019af8c103df9a67f 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -295,6 +295,7 @@ public class PurpurWorldConfig { +@@ -296,6 +296,7 @@ public class PurpurWorldConfig { public int playerDeathExpDropMax = 100; public boolean teleportIfOutsideBorder = false; public boolean totemOfUndyingWorksInInventory = false; @@ -48,7 +48,7 @@ index f4ce54d4078afc7c3a598dcdc8e4a19b3c68e246..996f56d8b82fb35fec5c38da6fb99b17 private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -307,6 +308,7 @@ public class PurpurWorldConfig { +@@ -308,6 +309,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); diff --git a/patches/server/0155-Toggle-for-water-sensitive-mob-damage.patch b/patches/server/0155-Toggle-for-water-sensitive-mob-damage.patch index fd4060aaf..2917cb63d 100644 --- a/patches/server/0155-Toggle-for-water-sensitive-mob-damage.patch +++ b/patches/server/0155-Toggle-for-water-sensitive-mob-damage.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Toggle for water sensitive mob damage diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index ec916af4cace6bdbe5412cbabcbfaed5b1198b39..2b8f2b72b3f1f3766436c41487ec8ecab350349a 100644 +index 67932ebc795c6d3b4b1956277ae9194c290ec599..eeb8f5413e3dfb88744891255514c65c9fda8fa8 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java @@ -861,7 +861,7 @@ public abstract class Mob extends LivingEntity { @@ -70,10 +70,10 @@ index 66dab9b4e5ae05deeae11c8588a0b855d8847bdc..19753a1855b11f8cdc9fb77e8d9079bb @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 996f56d8b82fb35fec5c38da6fb99b171159ac7d..ffd709328dfeac55e7afde6f48d391a616d94ec3 100644 +index 68363c8bfe8e61e3c59d3af019af8c103df9a67f..7801f5a1fdc6d24e809a80cfc785fe342b233ae8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -633,6 +633,7 @@ public class PurpurWorldConfig { +@@ -634,6 +634,7 @@ public class PurpurWorldConfig { public boolean blazeRidableInWater = false; public double blazeMaxY = 256D; public double blazeMaxHealth = 20.0D; @@ -81,7 +81,7 @@ index 996f56d8b82fb35fec5c38da6fb99b171159ac7d..ffd709328dfeac55e7afde6f48d391a6 private void blazeSettings() { blazeRidable = getBoolean("mobs.blaze.ridable", blazeRidable); blazeRidableInWater = getBoolean("mobs.blaze.ridable-in-water", blazeRidableInWater); -@@ -643,6 +644,7 @@ public class PurpurWorldConfig { +@@ -644,6 +645,7 @@ public class PurpurWorldConfig { set("mobs.blaze.attributes.max_health", oldValue); } blazeMaxHealth = getDouble("mobs.blaze.attributes.max_health", blazeMaxHealth); @@ -89,7 +89,7 @@ index 996f56d8b82fb35fec5c38da6fb99b171159ac7d..ffd709328dfeac55e7afde6f48d391a6 } public boolean catRidable = false; -@@ -859,6 +861,7 @@ public class PurpurWorldConfig { +@@ -860,6 +862,7 @@ public class PurpurWorldConfig { public boolean endermanAllowGriefing = true; public boolean endermanDespawnEvenWithBlock = false; public boolean endermanBypassMobGriefing = false; @@ -97,7 +97,7 @@ index 996f56d8b82fb35fec5c38da6fb99b171159ac7d..ffd709328dfeac55e7afde6f48d391a6 private void endermanSettings() { endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable); endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater); -@@ -871,6 +874,7 @@ public class PurpurWorldConfig { +@@ -872,6 +875,7 @@ public class PurpurWorldConfig { endermanAllowGriefing = getBoolean("mobs.enderman.allow-griefing", endermanAllowGriefing); endermanDespawnEvenWithBlock = getBoolean("mobs.enderman.can-despawn-with-held-block", endermanDespawnEvenWithBlock); endermanBypassMobGriefing = getBoolean("mobs.enderman.bypass-mob-griefing", endermanBypassMobGriefing); @@ -105,7 +105,7 @@ index 996f56d8b82fb35fec5c38da6fb99b171159ac7d..ffd709328dfeac55e7afde6f48d391a6 } public boolean endermiteRidable = false; -@@ -1556,6 +1560,7 @@ public class PurpurWorldConfig { +@@ -1557,6 +1561,7 @@ public class PurpurWorldConfig { public float snowGolemSnowBallModifier = 10.0F; public double snowGolemAttackDistance = 1.25D; public boolean snowGolemBypassMobGriefing = false; @@ -113,7 +113,7 @@ index 996f56d8b82fb35fec5c38da6fb99b171159ac7d..ffd709328dfeac55e7afde6f48d391a6 private void snowGolemSettings() { snowGolemRidable = getBoolean("mobs.snow_golem.ridable", snowGolemRidable); snowGolemRidableInWater = getBoolean("mobs.snow_golem.ridable-in-water", snowGolemRidableInWater); -@@ -1573,6 +1578,7 @@ public class PurpurWorldConfig { +@@ -1574,6 +1579,7 @@ public class PurpurWorldConfig { snowGolemSnowBallModifier = (float) getDouble("mobs.snow_golem.snow-ball-modifier", snowGolemSnowBallModifier); snowGolemAttackDistance = getDouble("mobs.snow_golem.attack-distance", snowGolemAttackDistance); snowGolemBypassMobGriefing = getBoolean("mobs.snow_golem.bypass-mob-griefing", snowGolemBypassMobGriefing); @@ -121,7 +121,7 @@ index 996f56d8b82fb35fec5c38da6fb99b171159ac7d..ffd709328dfeac55e7afde6f48d391a6 } public boolean squidRidable = false; -@@ -1626,6 +1632,7 @@ public class PurpurWorldConfig { +@@ -1627,6 +1633,7 @@ public class PurpurWorldConfig { public double striderMaxHealth = 20.0D; public int striderBreedingTicks = 6000; public boolean striderGiveSaddleBack = false; @@ -129,7 +129,7 @@ index 996f56d8b82fb35fec5c38da6fb99b171159ac7d..ffd709328dfeac55e7afde6f48d391a6 private void striderSettings() { striderRidable = getBoolean("mobs.strider.ridable", striderRidable); striderRidableInWater = getBoolean("mobs.strider.ridable-in-water", striderRidableInWater); -@@ -1637,6 +1644,7 @@ public class PurpurWorldConfig { +@@ -1638,6 +1645,7 @@ public class PurpurWorldConfig { striderMaxHealth = getDouble("mobs.strider.attributes.max_health", striderMaxHealth); striderBreedingTicks = getInt("mobs.strider.breeding-delay-ticks", striderBreedingTicks); striderGiveSaddleBack = getBoolean("mobs.strider.give-saddle-back", striderGiveSaddleBack); diff --git a/patches/server/0156-Config-to-always-tame-in-Creative.patch b/patches/server/0156-Config-to-always-tame-in-Creative.patch index b8e7c3ad4..d43456b58 100644 --- a/patches/server/0156-Config-to-always-tame-in-Creative.patch +++ b/patches/server/0156-Config-to-always-tame-in-Creative.patch @@ -59,10 +59,10 @@ index 518dd0e6b4889c049e438b393baa795a5eac3e7d..21e154c4e7fe261a41c891b481072fbd this.navigation.stop(); this.setTarget((LivingEntity) null); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index ffd709328dfeac55e7afde6f48d391a616d94ec3..7caf038c6465b5a7fb87eeb93df572f4ff7f0032 100644 +index 7801f5a1fdc6d24e809a80cfc785fe342b233ae8..90cb8803093e65109bad6818a88b293077d17928 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -371,6 +371,7 @@ public class PurpurWorldConfig { +@@ -372,6 +372,7 @@ public class PurpurWorldConfig { } public boolean useBetterMending = false; @@ -70,7 +70,7 @@ index ffd709328dfeac55e7afde6f48d391a616d94ec3..7caf038c6465b5a7fb87eeb93df572f4 public boolean boatEjectPlayersOnLand = false; public boolean boatsDoFallDamage = true; public boolean disableDropsOnCrammingDeath = false; -@@ -390,6 +391,7 @@ public class PurpurWorldConfig { +@@ -391,6 +392,7 @@ public class PurpurWorldConfig { public int animalBreedingCooldownSeconds = 0; private void miscGameplayMechanicsSettings() { useBetterMending = getBoolean("gameplay-mechanics.use-better-mending", useBetterMending); diff --git a/patches/server/0157-End-crystal-explosion-options.patch b/patches/server/0157-End-crystal-explosion-options.patch index ccbe58167..4ee6f9d44 100644 --- a/patches/server/0157-End-crystal-explosion-options.patch +++ b/patches/server/0157-End-crystal-explosion-options.patch @@ -52,10 +52,10 @@ index 92e65f3fbc8f5d77bb8cc31e7a7780c2589f4227..0c46507ab0b904fb1f79bc5421c88c03 this.onDestroyedBy(source); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 7caf038c6465b5a7fb87eeb93df572f4ff7f0032..085c3cb53b2a2fb9de748f0516ddc5e64f586537 100644 +index 90cb8803093e65109bad6818a88b293077d17928..4702127d6bc88a9edf02ec4c0b4ca24b9ba7d762 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -473,6 +473,35 @@ public class PurpurWorldConfig { +@@ -474,6 +474,35 @@ public class PurpurWorldConfig { dispenserPlaceAnvils = getBoolean("blocks.dispenser.place-anvils", dispenserPlaceAnvils); } diff --git a/patches/server/0159-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch b/patches/server/0159-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch index 92cb4d5d0..a31be76ba 100644 --- a/patches/server/0159-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch +++ b/patches/server/0159-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch @@ -29,10 +29,10 @@ index bdcbe92cbe431727f5879a04bf734811ffd03c3d..257a1b91c65d9f66173cfe8a31f598a0 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 085c3cb53b2a2fb9de748f0516ddc5e64f586537..5662726d87e6a13f36afc161a7f98bbefb12c91c 100644 +index 4702127d6bc88a9edf02ec4c0b4ca24b9ba7d762..4c4e9996fee6667f40982a7d00efd21a60ab8ec6 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -868,6 +868,7 @@ public class PurpurWorldConfig { +@@ -869,6 +869,7 @@ public class PurpurWorldConfig { public double enderDragonMaxHealth = 200.0D; public boolean enderDragonAlwaysDropsFullExp = false; public boolean enderDragonBypassMobGriefing = false; @@ -40,7 +40,7 @@ index 085c3cb53b2a2fb9de748f0516ddc5e64f586537..5662726d87e6a13f36afc161a7f98bbe private void enderDragonSettings() { enderDragonRidable = getBoolean("mobs.ender_dragon.ridable", enderDragonRidable); enderDragonRidableInWater = getBoolean("mobs.ender_dragon.ridable-in-water", enderDragonRidableInWater); -@@ -884,6 +885,7 @@ public class PurpurWorldConfig { +@@ -885,6 +886,7 @@ public class PurpurWorldConfig { enderDragonMaxHealth = getDouble("mobs.ender_dragon.attributes.max_health", enderDragonMaxHealth); enderDragonAlwaysDropsFullExp = getBoolean("mobs.ender_dragon.always-drop-full-exp", enderDragonAlwaysDropsFullExp); enderDragonBypassMobGriefing = getBoolean("mobs.ender_dragon.bypass-mob-griefing", enderDragonBypassMobGriefing); @@ -48,7 +48,7 @@ index 085c3cb53b2a2fb9de748f0516ddc5e64f586537..5662726d87e6a13f36afc161a7f98bbe } public boolean endermanRidable = false; -@@ -1856,6 +1858,7 @@ public class PurpurWorldConfig { +@@ -1857,6 +1859,7 @@ public class PurpurWorldConfig { public float witherHealthRegenAmount = 1.0f; public int witherHealthRegenDelay = 20; public boolean witherBypassMobGriefing = false; @@ -56,7 +56,7 @@ index 085c3cb53b2a2fb9de748f0516ddc5e64f586537..5662726d87e6a13f36afc161a7f98bbe private void witherSettings() { witherRidable = getBoolean("mobs.wither.ridable", witherRidable); witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater); -@@ -1873,6 +1876,7 @@ public class PurpurWorldConfig { +@@ -1874,6 +1877,7 @@ public class PurpurWorldConfig { witherHealthRegenAmount = (float) getDouble("mobs.wither.health-regen-amount", witherHealthRegenAmount); witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay); witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing); diff --git a/patches/server/0160-Dont-run-with-scissors.patch b/patches/server/0160-Dont-run-with-scissors.patch index b36ef45b7..d3be652e0 100644 --- a/patches/server/0160-Dont-run-with-scissors.patch +++ b/patches/server/0160-Dont-run-with-scissors.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Dont run with scissors! diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 76c6b0c9b585879d63a232f6633ffd7c72656d0a..600950663c20a096e0923341dbd733babf941ba0 100644 +index 637737d28d3a8951a5def99fe27fdb4db5057acb..daee19f2d949ecb10931444a4e1a3f27bd3edd3d 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1555,6 +1555,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Ser @@ -23,7 +23,7 @@ index 76c6b0c9b585879d63a232f6633ffd7c72656d0a..600950663c20a096e0923341dbd733ba this.lastGoodX = this.player.getX(); this.lastGoodY = this.player.getY(); diff --git a/src/main/java/net/pl3x/purpur/PurpurConfig.java b/src/main/java/net/pl3x/purpur/PurpurConfig.java -index e66c05541ff1f25346af60255d17542305cc3a9f..206d04cae6d94ae8ab816e5ae661dd5133be1996 100644 +index 7ed1d5b2aab3442f80532c62a398353e89c18b0c..45d536954b8007de69c6f74942c2293510739a5e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurConfig.java @@ -165,6 +165,7 @@ public class PurpurConfig { @@ -43,10 +43,10 @@ index e66c05541ff1f25346af60255d17542305cc3a9f..206d04cae6d94ae8ab816e5ae661dd51 public static int seedFeatureBamboo = -1; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 5662726d87e6a13f36afc161a7f98bbefb12c91c..75c093efea8f0c8188722065421abb702691a214 100644 +index 4c4e9996fee6667f40982a7d00efd21a60ab8ec6..e26f95fcc3fd1300af9a9101bf127d2418a4cb31 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -155,6 +155,8 @@ public class PurpurWorldConfig { +@@ -156,6 +156,8 @@ public class PurpurWorldConfig { public List itemImmuneToExplosion = new ArrayList<>(); public List itemImmuneToFire = new ArrayList<>(); public List itemImmuneToLightning = new ArrayList<>(); @@ -55,7 +55,7 @@ index 5662726d87e6a13f36afc161a7f98bbefb12c91c..75c093efea8f0c8188722065421abb70 private void itemSettings() { itemImmuneToCactus.clear(); getList("gameplay-mechanics.item.immune.cactus", new ArrayList<>()).forEach(key -> { -@@ -192,6 +194,8 @@ public class PurpurWorldConfig { +@@ -193,6 +195,8 @@ public class PurpurWorldConfig { Item item = Registry.ITEM.get(new ResourceLocation(key.toString())); if (item != Items.AIR) itemImmuneToLightning.add(item); }); diff --git a/patches/server/0161-One-Punch-Man.patch b/patches/server/0161-One-Punch-Man.patch index 3de7455f2..f4962b52f 100644 --- a/patches/server/0161-One-Punch-Man.patch +++ b/patches/server/0161-One-Punch-Man.patch @@ -30,10 +30,10 @@ index 11abf0df677a9d609d82cbcb8e3967fc4b613362..59e4e240420a11b19b6da199092590eb if (human) { // PAIL: Be sure to drag all this code from the EntityHuman subclass each update. diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 75c093efea8f0c8188722065421abb702691a214..871b37dba9ee7c77977e1ac5f00404d9b0b78149 100644 +index e26f95fcc3fd1300af9a9101bf127d2418a4cb31..0c86785e1cb7b323f3ca9542662acc43fd85c994 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -300,6 +300,7 @@ public class PurpurWorldConfig { +@@ -301,6 +301,7 @@ public class PurpurWorldConfig { public boolean teleportIfOutsideBorder = false; public boolean totemOfUndyingWorksInInventory = false; public boolean playerFixStuckPortal = false; @@ -41,7 +41,7 @@ index 75c093efea8f0c8188722065421abb702691a214..871b37dba9ee7c77977e1ac5f00404d9 private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -313,6 +314,7 @@ public class PurpurWorldConfig { +@@ -314,6 +315,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); diff --git a/patches/server/0162-Add-config-for-snow-on-blue-ice.patch b/patches/server/0162-Add-config-for-snow-on-blue-ice.patch index 86a2cb8d7..6c965c324 100644 --- a/patches/server/0162-Add-config-for-snow-on-blue-ice.patch +++ b/patches/server/0162-Add-config-for-snow-on-blue-ice.patch @@ -29,10 +29,10 @@ index 0169d874247a96c2e10a65ecb9c0c093f5a6ecfb..b760e2d014b3ae70671878082bb853b7 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 871b37dba9ee7c77977e1ac5f00404d9b0b78149..7422229fbe1acd1401b423cd05a2e2d17638386f 100644 +index 0c86785e1cb7b323f3ca9542662acc43fd85c994..7f1441f6ff759fc5caf7cd21649fc12a6b54de78 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -534,6 +534,11 @@ public class PurpurWorldConfig { +@@ -535,6 +535,11 @@ public class PurpurWorldConfig { furnaceUseLavaFromUnderneath = getBoolean("blocks.furnace.use-lava-from-underneath", furnaceUseLavaFromUnderneath); } diff --git a/patches/server/0163-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch b/patches/server/0163-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch index 3ece01097..d238d3751 100644 --- a/patches/server/0163-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch +++ b/patches/server/0163-Configurable-Ender-Pearl-cooldown-damage-and-Endermi.patch @@ -43,10 +43,10 @@ index 749ab72edc0d2e9c6f1161415ab8d59d3d6ca976..897c202c0905040072a06fdfa2032a7f // Paper end if (user instanceof net.minecraft.server.level.ServerPlayer) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 7422229fbe1acd1401b423cd05a2e2d17638386f..decb199d59c0e364ead5c13103dc9d74351eea72 100644 +index 7f1441f6ff759fc5caf7cd21649fc12a6b54de78..c76285978d8d485652541985b190444d4e6e08c2 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -157,6 +157,10 @@ public class PurpurWorldConfig { +@@ -158,6 +158,10 @@ public class PurpurWorldConfig { public List itemImmuneToLightning = new ArrayList<>(); public boolean dontRunWithScissors = false; public double scissorsRunningDamage = 1D; @@ -57,7 +57,7 @@ index 7422229fbe1acd1401b423cd05a2e2d17638386f..decb199d59c0e364ead5c13103dc9d74 private void itemSettings() { itemImmuneToCactus.clear(); getList("gameplay-mechanics.item.immune.cactus", new ArrayList<>()).forEach(key -> { -@@ -196,6 +200,10 @@ public class PurpurWorldConfig { +@@ -197,6 +201,10 @@ public class PurpurWorldConfig { }); dontRunWithScissors = getBoolean("gameplay-mechanics.item.shears.damage-if-sprinting", dontRunWithScissors); scissorsRunningDamage = getDouble("gameplay-mechanics.item.shears.sprinting-damage", scissorsRunningDamage); diff --git a/patches/server/0164-Config-to-ignore-nearby-mobs-when-sleeping.patch b/patches/server/0164-Config-to-ignore-nearby-mobs-when-sleeping.patch index 1a25a4a0b..82aa688ee 100644 --- a/patches/server/0164-Config-to-ignore-nearby-mobs-when-sleeping.patch +++ b/patches/server/0164-Config-to-ignore-nearby-mobs-when-sleeping.patch @@ -18,10 +18,10 @@ index 4951eefa3e8fe40751ca2d2c3871da1d17bf53dc..3774d2f5bf18cb448e81a1776207edf9 } } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index decb199d59c0e364ead5c13103dc9d74351eea72..b0ed6ce12254c9a0b71f9fe0cb2ed4edbe662376 100644 +index c76285978d8d485652541985b190444d4e6e08c2..281bd07cfc1c78e5831cab4147a941b65313ed26 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -309,6 +309,7 @@ public class PurpurWorldConfig { +@@ -310,6 +310,7 @@ public class PurpurWorldConfig { public boolean totemOfUndyingWorksInInventory = false; public boolean playerFixStuckPortal = false; public boolean creativeOnePunch = false; @@ -29,7 +29,7 @@ index decb199d59c0e364ead5c13103dc9d74351eea72..b0ed6ce12254c9a0b71f9fe0cb2ed4ed private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -323,6 +324,7 @@ public class PurpurWorldConfig { +@@ -324,6 +325,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); diff --git a/patches/server/0166-Config-Enderman-aggressiveness-towards-Endermites.patch b/patches/server/0166-Config-Enderman-aggressiveness-towards-Endermites.patch index bb5a26cda..663754a6f 100644 --- a/patches/server/0166-Config-Enderman-aggressiveness-towards-Endermites.patch +++ b/patches/server/0166-Config-Enderman-aggressiveness-towards-Endermites.patch @@ -18,10 +18,10 @@ index 3907b7cb559dabdd3cc347678d42071215c66a6c..e8779b23b5e1a399dde19fc66d820101 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b0ed6ce12254c9a0b71f9fe0cb2ed4edbe662376..0ccadc664bf2a763609b5a36d87f4153cb812e2e 100644 +index 281bd07cfc1c78e5831cab4147a941b65313ed26..f948a7793ecb3382ef687b544051217bff0e2301 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -916,6 +916,8 @@ public class PurpurWorldConfig { +@@ -917,6 +917,8 @@ public class PurpurWorldConfig { public boolean endermanDespawnEvenWithBlock = false; public boolean endermanBypassMobGriefing = false; public boolean endermanTakeDamageFromWater = true; @@ -30,7 +30,7 @@ index b0ed6ce12254c9a0b71f9fe0cb2ed4edbe662376..0ccadc664bf2a763609b5a36d87f4153 private void endermanSettings() { endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable); endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater); -@@ -924,11 +926,17 @@ public class PurpurWorldConfig { +@@ -925,11 +927,17 @@ public class PurpurWorldConfig { set("mobs.enderman.attributes.max-health", null); set("mobs.enderman.attributes.max_health", oldValue); } diff --git a/patches/server/0167-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch b/patches/server/0167-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch index 4f97216c4..c6228e870 100644 --- a/patches/server/0167-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch +++ b/patches/server/0167-Config-to-ignore-Dragon-Head-wearers-and-stare-aggro.patch @@ -20,10 +20,10 @@ index e8779b23b5e1a399dde19fc66d820101d61f36bc..ba61f78874d8578b862f317fe00a3162 } else { Vec3 vec3d = player.getViewVector(1.0F).normalize(); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 0ccadc664bf2a763609b5a36d87f4153cb812e2e..d7a22605ef8e3954ec5c6a60d5aae8404779977c 100644 +index f948a7793ecb3382ef687b544051217bff0e2301..ae24579b4ea9a292894f88561eb50aa377904df1 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -918,6 +918,8 @@ public class PurpurWorldConfig { +@@ -919,6 +919,8 @@ public class PurpurWorldConfig { public boolean endermanTakeDamageFromWater = true; public boolean endermanAggroEndermites = true; public boolean endermanAggroEndermitesOnlyIfPlayerSpawned = false; @@ -32,7 +32,7 @@ index 0ccadc664bf2a763609b5a36d87f4153cb812e2e..d7a22605ef8e3954ec5c6a60d5aae840 private void endermanSettings() { endermanRidable = getBoolean("mobs.enderman.ridable", endermanRidable); endermanRidableInWater = getBoolean("mobs.enderman.ridable-in-water", endermanRidableInWater); -@@ -937,6 +939,8 @@ public class PurpurWorldConfig { +@@ -938,6 +940,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); diff --git a/patches/server/0168-Tick-fluids-config.patch b/patches/server/0168-Tick-fluids-config.patch index 929976d89..9562d7238 100644 --- a/patches/server/0168-Tick-fluids-config.patch +++ b/patches/server/0168-Tick-fluids-config.patch @@ -36,10 +36,10 @@ index 087601ffdeea97ec4cbb9959607bdcbcbae7c6fa..ad24daa0c727df15dbe0549036290a6c } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index d7a22605ef8e3954ec5c6a60d5aae8404779977c..4b659deab12bf01c3a13e042cdf31748dca2a991 100644 +index ae24579b4ea9a292894f88561eb50aa377904df1..59f8d6e21fb328c9d728376d6920ebcbfc017956 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -400,6 +400,7 @@ public class PurpurWorldConfig { +@@ -401,6 +401,7 @@ public class PurpurWorldConfig { public boolean persistentTileEntityDisplayNames = false; public boolean persistentDroppableEntityDisplayNames = false; public boolean projectilesBypassMobGriefing = false; @@ -47,7 +47,7 @@ index d7a22605ef8e3954ec5c6a60d5aae8404779977c..4b659deab12bf01c3a13e042cdf31748 public double tridentLoyaltyVoidReturnHeight = 0.0D; public double voidDamageHeight = -64.0D; public double voidDamageDealt = 4.0D; -@@ -420,6 +421,7 @@ public class PurpurWorldConfig { +@@ -421,6 +422,7 @@ public class PurpurWorldConfig { persistentTileEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-tileentity-display-names-and-lore", persistentTileEntityDisplayNames); persistentDroppableEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-droppable-entity-display-names", persistentDroppableEntityDisplayNames); projectilesBypassMobGriefing = getBoolean("gameplay-mechanics.projectiles-bypass-mob-griefing", projectilesBypassMobGriefing); diff --git a/patches/server/0169-Config-to-disable-Llama-caravans.patch b/patches/server/0169-Config-to-disable-Llama-caravans.patch index a17d3cc54..c8f4cb405 100644 --- a/patches/server/0169-Config-to-disable-Llama-caravans.patch +++ b/patches/server/0169-Config-to-disable-Llama-caravans.patch @@ -32,10 +32,10 @@ index 93a05b945ac248df0ea7a0b9d7264a9c129c3bcf..8f12851f220bb23102f52f523a4c5d98 this.caravanHead.caravanTail = this; } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 4b659deab12bf01c3a13e042cdf31748dca2a991..63036ee73e01439d5c5317e8e269323aaa80ec81 100644 +index 59f8d6e21fb328c9d728376d6920ebcbfc017956..8b2cd66441b9b88a11d295b787fdbbddf8291c64 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1184,6 +1184,7 @@ public class PurpurWorldConfig { +@@ -1185,6 +1185,7 @@ public class PurpurWorldConfig { public double llamaMovementSpeedMin = 0.175D; public double llamaMovementSpeedMax = 0.175D; public int llamaBreedingTicks = 6000; @@ -43,7 +43,7 @@ index 4b659deab12bf01c3a13e042cdf31748dca2a991..63036ee73e01439d5c5317e8e269323a private void llamaSettings() { llamaRidable = getBoolean("mobs.llama.ridable", llamaRidable); llamaRidableInWater = getBoolean("mobs.llama.ridable-in-water", llamaRidableInWater); -@@ -1201,6 +1202,7 @@ public class PurpurWorldConfig { +@@ -1202,6 +1203,7 @@ public class PurpurWorldConfig { llamaMovementSpeedMin = getDouble("mobs.llama.attributes.movement_speed.min", llamaMovementSpeedMin); llamaMovementSpeedMax = getDouble("mobs.llama.attributes.movement_speed.max", llamaMovementSpeedMax); llamaBreedingTicks = getInt("mobs.llama.breeding-delay-ticks", llamaBreedingTicks); diff --git a/patches/server/0170-Config-to-make-Creepers-explode-on-death.patch b/patches/server/0170-Config-to-make-Creepers-explode-on-death.patch index 8b089ef7c..cce9a06cd 100644 --- a/patches/server/0170-Config-to-make-Creepers-explode-on-death.patch +++ b/patches/server/0170-Config-to-make-Creepers-explode-on-death.patch @@ -50,10 +50,10 @@ index c550b8c19837ed9bf730a3eb777bc00de4e7ceb2..02494dcc8a342f65b2855612aebeb019 private void spawnLingeringCloud() { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 63036ee73e01439d5c5317e8e269323aaa80ec81..99ec71be96ebb9d3bbdbc79fbab207b8da66b24d 100644 +index 8b2cd66441b9b88a11d295b787fdbbddf8291c64..0d79dd9d7293120ae0a5e6e032a0e41a65c55c4a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -791,6 +791,7 @@ public class PurpurWorldConfig { +@@ -792,6 +792,7 @@ public class PurpurWorldConfig { public double creeperChargedChance = 0.0D; public boolean creeperAllowGriefing = true; public boolean creeperBypassMobGriefing = false; @@ -61,7 +61,7 @@ index 63036ee73e01439d5c5317e8e269323aaa80ec81..99ec71be96ebb9d3bbdbc79fbab207b8 private void creeperSettings() { creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable); creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater); -@@ -803,6 +804,7 @@ public class PurpurWorldConfig { +@@ -804,6 +805,7 @@ public class PurpurWorldConfig { creeperChargedChance = getDouble("mobs.creeper.naturally-charged-chance", creeperChargedChance); creeperAllowGriefing = getBoolean("mobs.creeper.allow-griefing", creeperAllowGriefing); creeperBypassMobGriefing = getBoolean("mobs.creeper.bypass-mob-griefing", creeperBypassMobGriefing); diff --git a/patches/server/0171-Configurable-ravager-griefable-blocks-list.patch b/patches/server/0171-Configurable-ravager-griefable-blocks-list.patch index dfccd8c26..c94c4c5ab 100644 --- a/patches/server/0171-Configurable-ravager-griefable-blocks-list.patch +++ b/patches/server/0171-Configurable-ravager-griefable-blocks-list.patch @@ -31,10 +31,10 @@ index 3c51e6d419a244b9270119590aa299527163c331..b466b0430dd94777975a1e7ab9792166 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 99ec71be96ebb9d3bbdbc79fbab207b8da66b24d..a21d60951a6d307524c0d1cf5526fc1d1775bbb8 100644 +index 0d79dd9d7293120ae0a5e6e032a0e41a65c55c4a..8e97819337e41dcfeb58d7c1ad7c0de7f94cbd1d 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1494,6 +1494,7 @@ public class PurpurWorldConfig { +@@ -1495,6 +1495,7 @@ public class PurpurWorldConfig { public boolean ravagerRidableInWater = false; public double ravagerMaxHealth = 100.0D; public boolean ravagerBypassMobGriefing = false; @@ -42,7 +42,7 @@ index 99ec71be96ebb9d3bbdbc79fbab207b8da66b24d..a21d60951a6d307524c0d1cf5526fc1d private void ravagerSettings() { ravagerRidable = getBoolean("mobs.ravager.ridable", ravagerRidable); ravagerRidableInWater = getBoolean("mobs.ravager.ridable-in-water", ravagerRidableInWater); -@@ -1504,6 +1505,23 @@ public class PurpurWorldConfig { +@@ -1505,6 +1506,23 @@ public class PurpurWorldConfig { } ravagerMaxHealth = getDouble("mobs.ravager.attributes.max_health", ravagerMaxHealth); ravagerBypassMobGriefing = getBoolean("mobs.ravager.bypass-mob-griefing", ravagerBypassMobGriefing); diff --git a/patches/server/0172-Sneak-to-bulk-process-composter.patch b/patches/server/0172-Sneak-to-bulk-process-composter.patch index d57d245a8..dd9d6760f 100644 --- a/patches/server/0172-Sneak-to-bulk-process-composter.patch +++ b/patches/server/0172-Sneak-to-bulk-process-composter.patch @@ -75,10 +75,10 @@ index 4c9ae6bdb2f0358798f84928271a2d783dcba7b4..47bf769a031ae39cc72d2191195d1378 int i = (Integer) iblockdata.getValue(ComposterBlock.LEVEL); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index a21d60951a6d307524c0d1cf5526fc1d1775bbb8..062b0e4d2e442eca84eebe9334943dc0f2ded580 100644 +index 8e97819337e41dcfeb58d7c1ad7c0de7f94cbd1d..0dbaabbd8e8aa40b94b55e0747f04a87b66621c2 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -484,6 +484,11 @@ public class PurpurWorldConfig { +@@ -485,6 +485,11 @@ public class PurpurWorldConfig { chestOpenWithBlockOnTop = getBoolean("blocks.chest.open-with-solid-block-on-top", chestOpenWithBlockOnTop); } diff --git a/patches/server/0173-Config-for-skipping-night.patch b/patches/server/0173-Config-for-skipping-night.patch index e4d79029a..34932b308 100644 --- a/patches/server/0173-Config-for-skipping-night.patch +++ b/patches/server/0173-Config-for-skipping-night.patch @@ -18,10 +18,10 @@ index 3bc63f24bf8c07b89562887bdc8cf7569d7b33b4..27d41f7e03404d349a465848235c63b1 long l = this.levelData.getDayTime() + 24000L; TimeSkipEvent event = new TimeSkipEvent(this.getWorld(), TimeSkipEvent.SkipReason.NIGHT_SKIP, (l - l % 24000L) - this.getDayTime()); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 062b0e4d2e442eca84eebe9334943dc0f2ded580..f204e37af958cf2319269290c4bafeae6631d677 100644 +index 0dbaabbd8e8aa40b94b55e0747f04a87b66621c2..faed98c18ea0014ffb3c84ef4b6983683ee9b92c 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -310,6 +310,7 @@ public class PurpurWorldConfig { +@@ -311,6 +311,7 @@ public class PurpurWorldConfig { public boolean playerFixStuckPortal = false; public boolean creativeOnePunch = false; public boolean playerSleepNearMonsters = false; @@ -29,7 +29,7 @@ index 062b0e4d2e442eca84eebe9334943dc0f2ded580..f204e37af958cf2319269290c4bafeae private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -325,6 +326,7 @@ public class PurpurWorldConfig { +@@ -326,6 +327,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); diff --git a/patches/server/0174-Add-config-for-villager-trading.patch b/patches/server/0174-Add-config-for-villager-trading.patch index 0ae40a2d6..d175d7bfa 100644 --- a/patches/server/0174-Add-config-for-villager-trading.patch +++ b/patches/server/0174-Add-config-for-villager-trading.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add config for villager trading diff --git a/src/main/java/net/minecraft/world/entity/npc/Villager.java b/src/main/java/net/minecraft/world/entity/npc/Villager.java -index 30961a60449a20c4168c4b0a593402df3066379d..4df6a5cf1a2fb00e77814307b52f45a1dae49a58 100644 +index beaa009603b68dc1f7d541d594af22cbe9bb0e9d..b649ef2c96beeb6c2d98f54375bbeb1159c7f4ba 100644 --- a/src/main/java/net/minecraft/world/entity/npc/Villager.java +++ b/src/main/java/net/minecraft/world/entity/npc/Villager.java @@ -375,7 +375,7 @@ public class Villager extends AbstractVillager implements ReputationEventHandler @@ -31,10 +31,10 @@ index c48935d35a6141c41db22e3ec172d5994fd317a2..fa4644c11cbb252734a6f5dc21c861d2 this.openTradingScreen(player, this.getDisplayName(), 1); } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index f204e37af958cf2319269290c4bafeae6631d677..7fabd86e2013e58ede9b1100ea7a1c5dee413e1b 100644 +index faed98c18ea0014ffb3c84ef4b6983683ee9b92c..a6bc8130656d34d4a5134ef9bb7cb72f470573a8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1838,6 +1838,7 @@ public class PurpurWorldConfig { +@@ -1839,6 +1839,7 @@ public class PurpurWorldConfig { public boolean villagerClericsFarmWarts = false; public boolean villagerClericFarmersThrowWarts = true; public boolean villagerBypassMobGriefing = false; @@ -42,7 +42,7 @@ index f204e37af958cf2319269290c4bafeae6631d677..7fabd86e2013e58ede9b1100ea7a1c5d private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1865,6 +1866,7 @@ public class PurpurWorldConfig { +@@ -1866,6 +1867,7 @@ public class PurpurWorldConfig { villagerClericsFarmWarts = getBoolean("mobs.villager.clerics-farm-warts", villagerClericsFarmWarts); villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts); villagerBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerBypassMobGriefing); @@ -50,7 +50,7 @@ index f204e37af958cf2319269290c4bafeae6631d677..7fabd86e2013e58ede9b1100ea7a1c5d } public boolean vindicatorRidable = false; -@@ -1888,6 +1890,7 @@ public class PurpurWorldConfig { +@@ -1889,6 +1891,7 @@ public class PurpurWorldConfig { public double wanderingTraderMaxHealth = 20.0D; public boolean wanderingTraderFollowEmeraldBlock = false; public boolean wanderingTraderCanBeLeashed = false; @@ -58,7 +58,7 @@ index f204e37af958cf2319269290c4bafeae6631d677..7fabd86e2013e58ede9b1100ea7a1c5d private void wanderingTraderSettings() { wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable); wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater); -@@ -1899,6 +1902,7 @@ public class PurpurWorldConfig { +@@ -1900,6 +1903,7 @@ public class PurpurWorldConfig { wanderingTraderMaxHealth = getDouble("mobs.wandering_trader.attributes.max_health", wanderingTraderMaxHealth); wanderingTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", wanderingTraderFollowEmeraldBlock); wanderingTraderCanBeLeashed = getBoolean("mobs.wandering_trader.can-be-leashed", wanderingTraderCanBeLeashed); diff --git a/patches/server/0176-Drowning-Settings.patch b/patches/server/0176-Drowning-Settings.patch index 2f496fa09..7665dc3e2 100644 --- a/patches/server/0176-Drowning-Settings.patch +++ b/patches/server/0176-Drowning-Settings.patch @@ -40,10 +40,10 @@ index 59e4e240420a11b19b6da199092590ebe9096383..f6fa7ff3f896dca5e3b5cc5f7836f420 } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 7fabd86e2013e58ede9b1100ea7a1c5dee413e1b..23988159bbe135a2152adc6fd7844d597ced5401 100644 +index a6bc8130656d34d4a5134ef9bb7cb72f470573a8..f0d9ae3699d18f1efaf4f0c0ba9e00b258e8c3a8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -120,6 +120,15 @@ public class PurpurWorldConfig { +@@ -121,6 +121,15 @@ public class PurpurWorldConfig { nighttimeTicks = getInt("gameplay-mechanics.daylight-cycle-ticks.nighttime", nighttimeTicks); } diff --git a/patches/server/0177-Break-individual-slabs-when-sneaking.patch b/patches/server/0177-Break-individual-slabs-when-sneaking.patch index 31d051c98..3b01f9eb7 100644 --- a/patches/server/0177-Break-individual-slabs-when-sneaking.patch +++ b/patches/server/0177-Break-individual-slabs-when-sneaking.patch @@ -47,10 +47,10 @@ index eb7f8907bb362c0461194bbaf62917ce71c669f3..89f5e0d26500f1806dff9f91390546cd + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 23988159bbe135a2152adc6fd7844d597ced5401..550fa310e76c4625ea0aa3746ed9dae3fc82a0da 100644 +index f0d9ae3699d18f1efaf4f0c0ba9e00b258e8c3a8..0c73bb66f67e4d5b950e38521073ae2f67525602 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -611,6 +611,11 @@ public class PurpurWorldConfig { +@@ -612,6 +612,11 @@ public class PurpurWorldConfig { signRightClickEdit = getBoolean("blocks.sign.right-click-edit", signRightClickEdit); } diff --git a/patches/server/0178-Config-to-disable-hostile-mob-spawn-on-ice.patch b/patches/server/0178-Config-to-disable-hostile-mob-spawn-on-ice.patch index 2770d5670..b27cafb92 100644 --- a/patches/server/0178-Config-to-disable-hostile-mob-spawn-on-ice.patch +++ b/patches/server/0178-Config-to-disable-hostile-mob-spawn-on-ice.patch @@ -22,10 +22,10 @@ index fc34cfa8bfb3b82a8e1b28d261f0e901d837467e..35d47bb0d8c4a2b8374564133f040899 return false; } else { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 550fa310e76c4625ea0aa3746ed9dae3fc82a0da..c29689c82dc13c3db9f3d0cd74c052673d75fca9 100644 +index 0c73bb66f67e4d5b950e38521073ae2f67525602..c0bb5fb548537ceebd9800b3aad12ea01b2668a6 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -563,8 +563,12 @@ public class PurpurWorldConfig { +@@ -564,8 +564,12 @@ public class PurpurWorldConfig { } public boolean snowOnBlueIce = true; diff --git a/patches/server/0179-Config-to-show-Armor-Stand-arms-on-spawn.patch b/patches/server/0179-Config-to-show-Armor-Stand-arms-on-spawn.patch index 84c5389a6..21d757db7 100644 --- a/patches/server/0179-Config-to-show-Armor-Stand-arms-on-spawn.patch +++ b/patches/server/0179-Config-to-show-Armor-Stand-arms-on-spawn.patch @@ -17,10 +17,10 @@ index d119f8ab447bc17deabc494463de496161c9b126..c9a44a4765f43b9c0247ed1005f4c134 public ArmorStand(Level world, double x, double y, double z) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index c29689c82dc13c3db9f3d0cd74c052673d75fca9..933da8c8404b1d20faff4d2f0c9ff2ad6831d0d8 100644 +index c0bb5fb548537ceebd9800b3aad12ea01b2668a6..6cd38e97a388227ea5ce721503d6d922b7687f25 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -104,6 +104,7 @@ public class PurpurWorldConfig { +@@ -105,6 +105,7 @@ public class PurpurWorldConfig { public boolean armorstandMovement = true; public boolean armorstandWaterMovement = true; public boolean armorstandWaterFence = true; @@ -28,7 +28,7 @@ index c29689c82dc13c3db9f3d0cd74c052673d75fca9..933da8c8404b1d20faff4d2f0c9ff2ad private void armorstandSettings() { armorstandStepHeight = (float) getDouble("gameplay-mechanics.armorstand.step-height", armorstandStepHeight); armorstandSetNameVisible = getBoolean("gameplay-mechanics.armorstand.set-name-visible-when-placing-with-custom-name", armorstandSetNameVisible); -@@ -111,6 +112,7 @@ public class PurpurWorldConfig { +@@ -112,6 +113,7 @@ public class PurpurWorldConfig { armorstandMovement = getBoolean("gameplay-mechanics.armorstand.can-movement-tick", armorstandMovement); armorstandWaterMovement = getBoolean("gameplay-mechanics.armorstand.can-move-in-water", armorstandWaterMovement); armorstandWaterFence = getBoolean("gameplay-mechanics.armorstand.can-move-in-water-over-fence", armorstandWaterFence); diff --git a/patches/server/0180-Option-to-make-doors-require-redstone.patch b/patches/server/0180-Option-to-make-doors-require-redstone.patch index a62d56cc9..54ea056ed 100644 --- a/patches/server/0180-Option-to-make-doors-require-redstone.patch +++ b/patches/server/0180-Option-to-make-doors-require-redstone.patch @@ -67,10 +67,10 @@ index c903a1a8d2234bb0fa354d1c44ff3ab2275b04c7..d01e4064a772710c1383927e0848b9b3 + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 933da8c8404b1d20faff4d2f0c9ff2ad6831d0d8..12fe94c1deb42dacf5590412d88eda7321c06831 100644 +index 6cd38e97a388227ea5ce721503d6d922b7687f25..af79e9581b64954b83c8b2bba12106fe910a38f2 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -509,6 +509,16 @@ public class PurpurWorldConfig { +@@ -510,6 +510,16 @@ public class PurpurWorldConfig { dispenserPlaceAnvils = getBoolean("blocks.dispenser.place-anvils", dispenserPlaceAnvils); } diff --git a/patches/server/0182-Configurable-sponge-absorption.patch b/patches/server/0182-Configurable-sponge-absorption.patch index 5b1b812f9..cab0d2db8 100644 --- a/patches/server/0182-Configurable-sponge-absorption.patch +++ b/patches/server/0182-Configurable-sponge-absorption.patch @@ -43,10 +43,10 @@ index 1ef8eadd4e59f2e5d2bbd84f6f9bcf37b59db5bd..5b10e1110f938745c8f9ed0b55960566 } } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 12fe94c1deb42dacf5590412d88eda7321c06831..67086a7dc17f544b0b60721f9d685a60a79b97ad 100644 +index af79e9581b64954b83c8b2bba12106fe910a38f2..095c8ec876dae7a1d6d8c498ae33068533cb47b9 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -637,6 +637,13 @@ public class PurpurWorldConfig { +@@ -638,6 +638,13 @@ public class PurpurWorldConfig { spawnerDeactivateByRedstone = getBoolean("blocks.spawner.deactivate-by-redstone", spawnerDeactivateByRedstone); } diff --git a/patches/server/0183-Projectile-offset-config.patch b/patches/server/0183-Projectile-offset-config.patch index 518c9510b..e4a6059ed 100644 --- a/patches/server/0183-Projectile-offset-config.patch +++ b/patches/server/0183-Projectile-offset-config.patch @@ -96,10 +96,10 @@ index 3f53dc8f250ad3f7616ce7ef0a2353caa0ab1879..29130aa9673a3956030f3e43b784ac46 entitythrowntrident.pickup = AbstractArrow.Pickup.CREATIVE_ONLY; } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 67086a7dc17f544b0b60721f9d685a60a79b97ad..346a174ce8dd4dce864bb58ea52d0b3836a0c43b 100644 +index 095c8ec876dae7a1d6d8c498ae33068533cb47b9..7151f7ce6aa965b2470129213882ae82a2faaf4e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -374,6 +374,23 @@ public class PurpurWorldConfig { +@@ -375,6 +375,23 @@ public class PurpurWorldConfig { witherSkullDespawnRate = getInt("gameplay-mechanics.projectile-despawn-rates.wither_skull", witherSkullDespawnRate); } diff --git a/patches/server/0184-Config-for-powered-rail-activation-distance.patch b/patches/server/0184-Config-for-powered-rail-activation-distance.patch index 50ad216ff..d712e3dbf 100644 --- a/patches/server/0184-Config-for-powered-rail-activation-distance.patch +++ b/patches/server/0184-Config-for-powered-rail-activation-distance.patch @@ -18,10 +18,10 @@ index 7fddb6fa8fd30ef88346a59f7867aae792f13772..40893e71fe8447b695350273bef9623b } else { int j = pos.getX(); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 346a174ce8dd4dce864bb58ea52d0b3836a0c43b..b5f4d9bbed18b0c411a9a105421f45904176900c 100644 +index 7151f7ce6aa965b2470129213882ae82a2faaf4e..4a58b734851a2b692087bb12beb8cd52f260aa89 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -649,6 +649,11 @@ public class PurpurWorldConfig { +@@ -650,6 +650,11 @@ public class PurpurWorldConfig { slabHalfBreak = getBoolean("blocks.slab.break-individual-slabs-when-sneaking", slabHalfBreak); } diff --git a/patches/server/0185-Piglin-portal-spawn-modifier.patch b/patches/server/0185-Piglin-portal-spawn-modifier.patch index b9ee60c00..d5419b1f5 100644 --- a/patches/server/0185-Piglin-portal-spawn-modifier.patch +++ b/patches/server/0185-Piglin-portal-spawn-modifier.patch @@ -31,10 +31,10 @@ index fef1027829c44957e23c0a121033bfb7640d06f0..c42349d0f6b0025525278295b36f4030 pos = pos.below(); } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b5f4d9bbed18b0c411a9a105421f45904176900c..1a7e9661db4ec6d7a12906decb91675738b0771f 100644 +index 4a58b734851a2b692087bb12beb8cd52f260aa89..ac74663f213b272266874041f2f2940a0880bb92 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1459,6 +1459,7 @@ public class PurpurWorldConfig { +@@ -1460,6 +1460,7 @@ public class PurpurWorldConfig { public boolean piglinRidableInWater = false; public double piglinMaxHealth = 16.0D; public boolean piglinBypassMobGriefing = false; @@ -42,7 +42,7 @@ index b5f4d9bbed18b0c411a9a105421f45904176900c..1a7e9661db4ec6d7a12906decb916757 private void piglinSettings() { piglinRidable = getBoolean("mobs.piglin.ridable", piglinRidable); piglinRidableInWater = getBoolean("mobs.piglin.ridable-in-water", piglinRidableInWater); -@@ -1469,6 +1470,7 @@ public class PurpurWorldConfig { +@@ -1470,6 +1471,7 @@ public class PurpurWorldConfig { } piglinMaxHealth = getDouble("mobs.piglin.attributes.max_health", piglinMaxHealth); piglinBypassMobGriefing = getBoolean("mobs.piglin.bypass-mob-griefing", piglinBypassMobGriefing); diff --git a/patches/server/0187-Configurable-damage-settings-for-magma-blocks.patch b/patches/server/0187-Configurable-damage-settings-for-magma-blocks.patch index e7249e9fe..f58ed4cfa 100644 --- a/patches/server/0187-Configurable-damage-settings-for-magma-blocks.patch +++ b/patches/server/0187-Configurable-damage-settings-for-magma-blocks.patch @@ -31,10 +31,10 @@ index 5d844ed98b916298a657d5e9766ab7f383a304e0..0129460ce1ca199a47b6657f824c75fd entity.hurt(DamageSource.HOT_FLOOR, 1.0F); org.bukkit.craftbukkit.event.CraftEventFactory.blockDamage = null; // CraftBukkit diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 1a7e9661db4ec6d7a12906decb91675738b0771f..66e8f7ffc1d54f26f4feaa2aa6cddcc72cff848d 100644 +index ac74663f213b272266874041f2f2940a0880bb92..fbe8d154c13c70424dddc71b656d536a5e7180fc 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -616,6 +616,13 @@ public class PurpurWorldConfig { +@@ -617,6 +617,13 @@ public class PurpurWorldConfig { kelpMaxGrowthAge = getInt("blocks.kelp.max-growth-age", kelpMaxGrowthAge); } diff --git a/patches/server/0188-Config-for-wither-explosion-radius.patch b/patches/server/0188-Config-for-wither-explosion-radius.patch index b7b1bff38..df4166718 100644 --- a/patches/server/0188-Config-for-wither-explosion-radius.patch +++ b/patches/server/0188-Config-for-wither-explosion-radius.patch @@ -18,10 +18,10 @@ index 430aa10101d9f21561155941ff24441fd0c4103a..de91f0dd7f9a62e5a96b4cc3e4f505ec if (!event.isCancelled()) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 66e8f7ffc1d54f26f4feaa2aa6cddcc72cff848d..2a5dfae70bfc266e8a2530992b3668d3bf0823bd 100644 +index fbe8d154c13c70424dddc71b656d536a5e7180fc..a758cf4401ad4bfda4a2f115c601e2669985aeb8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1995,6 +1995,7 @@ public class PurpurWorldConfig { +@@ -1996,6 +1996,7 @@ public class PurpurWorldConfig { public int witherHealthRegenDelay = 20; public boolean witherBypassMobGriefing = false; public boolean witherCanRideVehicles = false; @@ -29,7 +29,7 @@ index 66e8f7ffc1d54f26f4feaa2aa6cddcc72cff848d..2a5dfae70bfc266e8a2530992b3668d3 private void witherSettings() { witherRidable = getBoolean("mobs.wither.ridable", witherRidable); witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater); -@@ -2013,6 +2014,7 @@ public class PurpurWorldConfig { +@@ -2014,6 +2015,7 @@ public class PurpurWorldConfig { witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay); witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing); witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles); diff --git a/patches/server/0190-Config-for-changing-the-blocks-that-turn-into-dirt-p.patch b/patches/server/0190-Config-for-changing-the-blocks-that-turn-into-dirt-p.patch index 4fcead1a1..d90bae3b2 100644 --- a/patches/server/0190-Config-for-changing-the-blocks-that-turn-into-dirt-p.patch +++ b/patches/server/0190-Config-for-changing-the-blocks-that-turn-into-dirt-p.patch @@ -18,10 +18,10 @@ index e5562b407bba35ab93bf8bc3c22ac9d45e8353cb..c688bb73cd062f36524cfc231cb691f2 if (blockState2 != null && level.getBlockState(blockPos.above()).isAir()) { level.playSound(player, blockPos, SoundEvents.SHOVEL_FLATTEN, SoundSource.BLOCKS, 1.0F, 1.0F); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 2a5dfae70bfc266e8a2530992b3668d3bf0823bd..67cc82cd96742b67c6a6137fe14d07d881b29282 100644 +index a758cf4401ad4bfda4a2f115c601e2669985aeb8..0ee006d73d8b496b24ee217b36d1c08fd175449b 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -391,6 +391,21 @@ public class PurpurWorldConfig { +@@ -392,6 +392,21 @@ public class PurpurWorldConfig { snowballProjectileOffset = getDouble("gameplay-mechanics.projectile-offset.snowball", snowballProjectileOffset); } diff --git a/patches/server/0191-Configurable-piston-push-limit.patch b/patches/server/0191-Configurable-piston-push-limit.patch index 3698e00b5..4268c3ecd 100644 --- a/patches/server/0191-Configurable-piston-push-limit.patch +++ b/patches/server/0191-Configurable-piston-push-limit.patch @@ -36,10 +36,10 @@ index 744d91546d1a810f60a43c15ed74b4158f341a4a..354538daefa603f6df5a139b6bff87db } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 67cc82cd96742b67c6a6137fe14d07d881b29282..113dea1aae484361d14a6db59b49046a2caccfcf 100644 +index 0ee006d73d8b496b24ee217b36d1c08fd175449b..86e0d352537115d86e53b81f6899356aa1e683ca 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -638,6 +638,11 @@ public class PurpurWorldConfig { +@@ -639,6 +639,11 @@ public class PurpurWorldConfig { magmaBlockDamageWithFrostWalker = getBoolean("blocks.magma-block.damage-with-frost-walker", magmaBlockDamageWithFrostWalker); } diff --git a/patches/server/0194-Configurable-mob-blindness.patch b/patches/server/0194-Configurable-mob-blindness.patch index 5d8350f2f..b22461756 100644 --- a/patches/server/0194-Configurable-mob-blindness.patch +++ b/patches/server/0194-Configurable-mob-blindness.patch @@ -28,10 +28,10 @@ index f6fa7ff3f896dca5e3b5cc5f7836f4208b0ec8b6..dd88755ac380e5c85d5327d02bc3ec7e return d0; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 113dea1aae484361d14a6db59b49046a2caccfcf..55add284c30bff33e0d5d9358f6da62aa1b861ff 100644 +index 86e0d352537115d86e53b81f6899356aa1e683ca..47ed713b7ec76c75b7b7ce98ef408c57f965a7b1 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -446,6 +446,7 @@ public class PurpurWorldConfig { +@@ -447,6 +447,7 @@ public class PurpurWorldConfig { public boolean persistentDroppableEntityDisplayNames = false; public boolean projectilesBypassMobGriefing = false; public boolean tickFluids = true; @@ -39,7 +39,7 @@ index 113dea1aae484361d14a6db59b49046a2caccfcf..55add284c30bff33e0d5d9358f6da62a public double tridentLoyaltyVoidReturnHeight = 0.0D; public double voidDamageHeight = -64.0D; public double voidDamageDealt = 4.0D; -@@ -467,6 +468,7 @@ public class PurpurWorldConfig { +@@ -468,6 +469,7 @@ public class PurpurWorldConfig { persistentDroppableEntityDisplayNames = getBoolean("gameplay-mechanics.persistent-droppable-entity-display-names", persistentDroppableEntityDisplayNames); projectilesBypassMobGriefing = getBoolean("gameplay-mechanics.projectiles-bypass-mob-griefing", projectilesBypassMobGriefing); tickFluids = getBoolean("gameplay-mechanics.tick-fluids", tickFluids); diff --git a/patches/server/0196-Config-for-health-to-impact-Creeper-explosion-radius.patch b/patches/server/0196-Config-for-health-to-impact-Creeper-explosion-radius.patch index f20554b54..3c569b7ed 100644 --- a/patches/server/0196-Config-for-health-to-impact-Creeper-explosion-radius.patch +++ b/patches/server/0196-Config-for-health-to-impact-Creeper-explosion-radius.patch @@ -21,10 +21,10 @@ index 02494dcc8a342f65b2855612aebeb019095abf65..d66c8866f3c6b1412a6c1876c62e3b29 if (!event.isCancelled()) { this.dead = true; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 55add284c30bff33e0d5d9358f6da62aa1b861ff..3f6514545818b023caf71f24bc7172247f8652f5 100644 +index 47ed713b7ec76c75b7b7ce98ef408c57f965a7b1..30d92aa0f2454f82c9662825338a64e8838ea2a2 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -887,6 +887,7 @@ public class PurpurWorldConfig { +@@ -888,6 +888,7 @@ public class PurpurWorldConfig { public boolean creeperAllowGriefing = true; public boolean creeperBypassMobGriefing = false; public boolean creeperExplodeWhenKilled = false; @@ -32,7 +32,7 @@ index 55add284c30bff33e0d5d9358f6da62aa1b861ff..3f6514545818b023caf71f24bc717224 private void creeperSettings() { creeperRidable = getBoolean("mobs.creeper.ridable", creeperRidable); creeperRidableInWater = getBoolean("mobs.creeper.ridable-in-water", creeperRidableInWater); -@@ -900,6 +901,7 @@ public class PurpurWorldConfig { +@@ -901,6 +902,7 @@ public class PurpurWorldConfig { creeperAllowGriefing = getBoolean("mobs.creeper.allow-griefing", creeperAllowGriefing); creeperBypassMobGriefing = getBoolean("mobs.creeper.bypass-mob-griefing", creeperBypassMobGriefing); creeperExplodeWhenKilled = getBoolean("mobs.creeper.explode-when-killed", creeperExplodeWhenKilled); diff --git a/patches/server/0197-Iron-golem-poppy-calms-anger.patch b/patches/server/0197-Iron-golem-poppy-calms-anger.patch index a423b65a2..7eab0172b 100644 --- a/patches/server/0197-Iron-golem-poppy-calms-anger.patch +++ b/patches/server/0197-Iron-golem-poppy-calms-anger.patch @@ -17,10 +17,10 @@ index f4e983da7206923ee0b0f984e65a6c2b3a6a8aeb..cea3725009af1bc746a593c4db63ed63 this.goalSelector.addGoal(2, new MoveTowardsTargetGoal(this, 0.9D, 32.0F)); this.goalSelector.addGoal(2, new MoveBackToVillageGoal(this, 0.6D, false)); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 3f6514545818b023caf71f24bc7172247f8652f5..020d98471332d39e45e33c215e6c1586837d3b64 100644 +index 30d92aa0f2454f82c9662825338a64e8838ea2a2..f641718e12d9cc9d90065fc1ceb0b64a5b330fe8 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1262,6 +1262,7 @@ public class PurpurWorldConfig { +@@ -1263,6 +1263,7 @@ public class PurpurWorldConfig { public boolean ironGolemRidableInWater = false; public boolean ironGolemCanSwim = false; public double ironGolemMaxHealth = 100.0D; @@ -28,7 +28,7 @@ index 3f6514545818b023caf71f24bc7172247f8652f5..020d98471332d39e45e33c215e6c1586 private void ironGolemSettings() { ironGolemRidable = getBoolean("mobs.iron_golem.ridable", ironGolemRidable); ironGolemRidableInWater = getBoolean("mobs.iron_golem.ridable-in-water", ironGolemRidableInWater); -@@ -1272,6 +1273,7 @@ public class PurpurWorldConfig { +@@ -1273,6 +1274,7 @@ public class PurpurWorldConfig { set("mobs.iron_golem.attributes.max_health", oldValue); } ironGolemMaxHealth = getDouble("mobs.iron_golem.attributes.max_health", ironGolemMaxHealth); diff --git a/patches/server/0198-Breedable-parrots.patch b/patches/server/0198-Breedable-parrots.patch index 1b162abfb..205873c45 100644 --- a/patches/server/0198-Breedable-parrots.patch +++ b/patches/server/0198-Breedable-parrots.patch @@ -50,10 +50,10 @@ index 553b0aff0ccc5baf41d5faae1a2fd88249dd5a74..3da2b68fb03a80676d7a5eed271499f6 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 020d98471332d39e45e33c215e6c1586837d3b64..0cda0924ae6935b6a3ef7dd1ba5f469a1ce52b3f 100644 +index f641718e12d9cc9d90065fc1ceb0b64a5b330fe8..0e15f98f4c29db6d4d94b895d483c2529ab07eae 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1398,6 +1398,7 @@ public class PurpurWorldConfig { +@@ -1399,6 +1399,7 @@ public class PurpurWorldConfig { public boolean parrotRidableInWater = false; public double parrotMaxY = 256D; public double parrotMaxHealth = 6.0D; @@ -61,7 +61,7 @@ index 020d98471332d39e45e33c215e6c1586837d3b64..0cda0924ae6935b6a3ef7dd1ba5f469a private void parrotSettings() { parrotRidable = getBoolean("mobs.parrot.ridable", parrotRidable); parrotRidableInWater = getBoolean("mobs.parrot.ridable-in-water", parrotRidableInWater); -@@ -1408,6 +1409,7 @@ public class PurpurWorldConfig { +@@ -1409,6 +1410,7 @@ public class PurpurWorldConfig { set("mobs.parrot.attributes.max_health", oldValue); } parrotMaxHealth = getDouble("mobs.parrot.attributes.max_health", parrotMaxHealth); diff --git a/patches/server/0199-Configurable-powered-rail-boost-modifier.patch b/patches/server/0199-Configurable-powered-rail-boost-modifier.patch index 847ab5f90..1f5402e30 100644 --- a/patches/server/0199-Configurable-powered-rail-boost-modifier.patch +++ b/patches/server/0199-Configurable-powered-rail-boost-modifier.patch @@ -18,10 +18,10 @@ index 1e3077a22d9d3d26356b865001dcce81c9c1d7e5..cc57ff699d159a0cc748e91b61d53965 Vec3 vec3d5 = this.getDeltaMovement(); double d21 = vec3d5.x; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 0cda0924ae6935b6a3ef7dd1ba5f469a1ce52b3f..cf2d757132c3d2e29b08b105703f6f688d20075d 100644 +index 0e15f98f4c29db6d4d94b895d483c2529ab07eae..e90bef6b4e65df466e648d7235f4a39352ceb1db 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -225,6 +225,7 @@ public class PurpurWorldConfig { +@@ -226,6 +226,7 @@ public class PurpurWorldConfig { public boolean minecartControllableFallDamage = true; public double minecartControllableBaseSpeed = 0.1D; public Map minecartControllableBlockSpeeds = new HashMap<>(); @@ -29,7 +29,7 @@ index 0cda0924ae6935b6a3ef7dd1ba5f469a1ce52b3f..cf2d757132c3d2e29b08b105703f6f68 private void minecartSettings() { if (PurpurConfig.version < 12) { boolean oldBool = getBoolean("gameplay-mechanics.controllable-minecarts.place-anywhere", minecartPlaceAnywhere); -@@ -277,6 +278,7 @@ public class PurpurWorldConfig { +@@ -278,6 +279,7 @@ public class PurpurWorldConfig { set("gameplay-mechanics.minecart.controllable.block-speed.grass_block", 0.3D); set("gameplay-mechanics.minecart.controllable.block-speed.stone", 0.5D); } diff --git a/patches/server/0200-Add-config-change-multiplier-critical-damage-value.patch b/patches/server/0200-Add-config-change-multiplier-critical-damage-value.patch index 521f16726..056be8afa 100644 --- a/patches/server/0200-Add-config-change-multiplier-critical-damage-value.patch +++ b/patches/server/0200-Add-config-change-multiplier-critical-damage-value.patch @@ -18,10 +18,10 @@ index 656b62c93dcbe15a79ebe684c18f4dc31ddc0dbe..5963b407d936e930a370677113ba947d f += f1; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index cf2d757132c3d2e29b08b105703f6f688d20075d..8668571450256c5c4833bac0ec278a110b794f24 100644 +index e90bef6b4e65df466e648d7235f4a39352ceb1db..929953a172abbf4bfc307d8eddcf5c705d4d3fcb 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -324,6 +324,7 @@ public class PurpurWorldConfig { +@@ -325,6 +325,7 @@ public class PurpurWorldConfig { public boolean creativeOnePunch = false; public boolean playerSleepNearMonsters = false; public boolean playersSkipNight = true; @@ -29,7 +29,7 @@ index cf2d757132c3d2e29b08b105703f6f688d20075d..8668571450256c5c4833bac0ec278a11 private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -340,6 +341,7 @@ public class PurpurWorldConfig { +@@ -341,6 +342,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); diff --git a/patches/server/0201-Option-to-disable-dragon-egg-teleporting.patch b/patches/server/0201-Option-to-disable-dragon-egg-teleporting.patch index b352985c8..d09f6347b 100644 --- a/patches/server/0201-Option-to-disable-dragon-egg-teleporting.patch +++ b/patches/server/0201-Option-to-disable-dragon-egg-teleporting.patch @@ -17,10 +17,10 @@ index 78f51f3dd0e7249af69228479da932e9aea982d6..d9d4421f7f316281487828739168cfd6 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/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 8668571450256c5c4833bac0ec278a110b794f24..94f4be463977ca8363e0ea0dfecf8a3ee807818d 100644 +index 929953a172abbf4bfc307d8eddcf5c705d4d3fcb..d5e71ffc637f2c1446a17af560e34e0effc886aa 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -557,6 +557,11 @@ public class PurpurWorldConfig { +@@ -558,6 +558,11 @@ public class PurpurWorldConfig { }); } diff --git a/patches/server/0204-ShulkerBox-allow-oversized-stacks.patch b/patches/server/0204-ShulkerBox-allow-oversized-stacks.patch index 0c1147c6b..f41bad3e3 100644 --- a/patches/server/0204-ShulkerBox-allow-oversized-stacks.patch +++ b/patches/server/0204-ShulkerBox-allow-oversized-stacks.patch @@ -35,10 +35,10 @@ index b9c558060024d380e89116489c7fc12ad88db8ad..0a0a4be15bed899812fcd4af0e311f5f CompoundTag compoundTag = shulkerBoxBlockEntity.saveToTag(new CompoundTag()); if (!compoundTag.isEmpty()) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 94f4be463977ca8363e0ea0dfecf8a3ee807818d..74ffbaa9f7e5756d3997270c9963dbed8cf36512 100644 +index d5e71ffc637f2c1446a17af560e34e0effc886aa..8e2bf617025c00ea8a7e4d7b4ba1e9a06012bc6e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -675,6 +675,11 @@ public class PurpurWorldConfig { +@@ -676,6 +676,11 @@ public class PurpurWorldConfig { } } diff --git a/patches/server/0205-Bee-can-work-when-raining-or-at-night.patch b/patches/server/0205-Bee-can-work-when-raining-or-at-night.patch index 556cc41bd..b2b5ebb81 100644 --- a/patches/server/0205-Bee-can-work-when-raining-or-at-night.patch +++ b/patches/server/0205-Bee-can-work-when-raining-or-at-night.patch @@ -31,10 +31,10 @@ index ffacc4b8cc3ab8285c4131aec58e48ffa9e1952e..e0e039e2f614f2df48d8d1b6e8bbbe7a return false; } else { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 74ffbaa9f7e5756d3997270c9963dbed8cf36512..35b02b2f8ff0166a58cd86304f7bb8dfc1242660 100644 +index 8e2bf617025c00ea8a7e4d7b4ba1e9a06012bc6e..dbd705c3b91070e959991ecdb957941a359cf8e7 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -779,6 +779,8 @@ public class PurpurWorldConfig { +@@ -780,6 +780,8 @@ public class PurpurWorldConfig { public double beeMaxY = 256D; public double beeMaxHealth = 10.0D; public int beeBreedingTicks = 6000; @@ -43,7 +43,7 @@ index 74ffbaa9f7e5756d3997270c9963dbed8cf36512..35b02b2f8ff0166a58cd86304f7bb8df private void beeSettings() { beeRidable = getBoolean("mobs.bee.ridable", beeRidable); beeRidableInWater = getBoolean("mobs.bee.ridable-in-water", beeRidableInWater); -@@ -790,6 +792,8 @@ public class PurpurWorldConfig { +@@ -791,6 +793,8 @@ public class PurpurWorldConfig { } beeMaxHealth = getDouble("mobs.bee.attributes.max_health", beeMaxHealth); beeBreedingTicks = getInt("mobs.bee.breeding-delay-ticks", beeBreedingTicks); diff --git a/patches/server/0208-Config-MobEffect-by-world.patch b/patches/server/0208-Config-MobEffect-by-world.patch index d023b9ce7..a0a8cfb86 100644 --- a/patches/server/0208-Config-MobEffect-by-world.patch +++ b/patches/server/0208-Config-MobEffect-by-world.patch @@ -40,10 +40,10 @@ index 79e036d79dec2ec4404baf02c23ba5ccad20cdce..6706d8e6d43cc5f3058f08fdfde77bed ((ServerPlayer) entityhuman).connection.send(new ClientboundSetHealthPacket(((ServerPlayer) entityhuman).getBukkitEntity().getScaledHealth(), entityhuman.getFoodData().foodLevel, entityhuman.getFoodData().saturationLevel)); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 35b02b2f8ff0166a58cd86304f7bb8dfc1242660..9353e5db3de39e06f0515df74e4de63667eb372b 100644 +index dbd705c3b91070e959991ecdb957941a359cf8e7..aacf74c26b8fcf2caa53a07e9aff27b8c187eb8e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -281,6 +281,21 @@ public class PurpurWorldConfig { +@@ -282,6 +282,21 @@ public class PurpurWorldConfig { poweredRailBoostModifier = getDouble("gameplay-mechanics.minecart.powered-rail.boost-modifier", poweredRailBoostModifier); } diff --git a/patches/server/0209-Beacon-Activation-Range-Configurable.patch b/patches/server/0209-Beacon-Activation-Range-Configurable.patch index 3671dbc9d..6bd987117 100644 --- a/patches/server/0209-Beacon-Activation-Range-Configurable.patch +++ b/patches/server/0209-Beacon-Activation-Range-Configurable.patch @@ -26,10 +26,10 @@ index 3281448bf37da8a1b4b7b44f10f4b2438b4a4f29..418c2ddf8ff50a5071b2a31585b77e9f } else { return effectRange; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 9353e5db3de39e06f0515df74e4de63667eb372b..ea9c06106cc7f28dae4f54134752da818da044cf 100644 +index aacf74c26b8fcf2caa53a07e9aff27b8c187eb8e..9915b25478b9240f53e17262a62697be291fcaf1 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -522,6 +522,17 @@ public class PurpurWorldConfig { +@@ -523,6 +523,17 @@ public class PurpurWorldConfig { anvilAllowColors = getBoolean("blocks.anvil.allow-colors", anvilAllowColors); } diff --git a/patches/server/0210-Add-toggle-for-sand-duping-fix.patch b/patches/server/0210-Add-toggle-for-sand-duping-fix.patch index a9efddaf3..ab00c698f 100644 --- a/patches/server/0210-Add-toggle-for-sand-duping-fix.patch +++ b/patches/server/0210-Add-toggle-for-sand-duping-fix.patch @@ -27,10 +27,10 @@ index 8336ea928faa92c6f58f8cdfb9faf1d8e26c9ccf..c765c182081fe83eb0f30dcbf97d8126 } // Paper end - fix sand duping diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index ea9c06106cc7f28dae4f54134752da818da044cf..0828be79bdade20e97ccf0146929748e465b6657 100644 +index 9915b25478b9240f53e17262a62697be291fcaf1..2e62961f8e2719b24b25222d2a411644ec7b1290 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -701,6 +701,11 @@ public class PurpurWorldConfig { +@@ -702,6 +702,11 @@ public class PurpurWorldConfig { } } diff --git a/patches/server/0211-Add-toggle-for-end-portal-safe-teleporting.patch b/patches/server/0211-Add-toggle-for-end-portal-safe-teleporting.patch index 5dc85e663..1b01d732f 100644 --- a/patches/server/0211-Add-toggle-for-end-portal-safe-teleporting.patch +++ b/patches/server/0211-Add-toggle-for-end-portal-safe-teleporting.patch @@ -45,10 +45,10 @@ index 197482e1ace23c3de002242097a68c6cc297cd3f..428875a6a99a619d337e2a7bbd2cb182 entity.portalWorld = ((ServerLevel)world); entity.portalBlock = pos.immutable(); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 0828be79bdade20e97ccf0146929748e465b6657..b844efc3eb4659bcde425e9d8003549212e61896 100644 +index 2e62961f8e2719b24b25222d2a411644ec7b1290..a0e416c781735cbef670a28e3d9c67111f0201fc 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -643,6 +643,11 @@ public class PurpurWorldConfig { +@@ -644,6 +644,11 @@ public class PurpurWorldConfig { furnaceUseLavaFromUnderneath = getBoolean("blocks.furnace.use-lava-from-underneath", furnaceUseLavaFromUnderneath); } diff --git a/patches/server/0214-Burp-after-eating-food-fills-hunger-bar-completely.patch b/patches/server/0214-Burp-after-eating-food-fills-hunger-bar-completely.patch index c9e295a89..6532e2c4f 100644 --- a/patches/server/0214-Burp-after-eating-food-fills-hunger-bar-completely.patch +++ b/patches/server/0214-Burp-after-eating-food-fills-hunger-bar-completely.patch @@ -55,10 +55,10 @@ index 97133bd4af30d0ba92cbf884b83140f3399f92e2..c1130952e3fa22abaa27fcc1c4761c83 public void eat(Item item, ItemStack stack) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index b844efc3eb4659bcde425e9d8003549212e61896..c5e81e088d0515fb2bc6a22b155c94b90546a86f 100644 +index a0e416c781735cbef670a28e3d9c67111f0201fc..24d91f12b882495b28c612a585bea184a83d6a5a 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -340,6 +340,7 @@ public class PurpurWorldConfig { +@@ -341,6 +341,7 @@ public class PurpurWorldConfig { public boolean playerSleepNearMonsters = false; public boolean playersSkipNight = true; public double playerCriticalDamageMultiplier = 1.5D; @@ -66,7 +66,7 @@ index b844efc3eb4659bcde425e9d8003549212e61896..c5e81e088d0515fb2bc6a22b155c94b9 private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -357,6 +358,7 @@ public class PurpurWorldConfig { +@@ -358,6 +359,7 @@ 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); diff --git a/patches/server/0216-Populator-seed-controls.patch b/patches/server/0216-Populator-seed-controls.patch index 0c9b354c5..c6992f316 100644 --- a/patches/server/0216-Populator-seed-controls.patch +++ b/patches/server/0216-Populator-seed-controls.patch @@ -39,10 +39,10 @@ index a7a7e6cd87270e64a92448f03f8b0b0c7e375ec7..9fb19162c0e436122087d03d37b502a1 try { region.setCurrentlyGenerating(supplier3); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index c5e81e088d0515fb2bc6a22b155c94b90546a86f..c377b52a243af8d867d175b55ab71616328a767f 100644 +index 24d91f12b882495b28c612a585bea184a83d6a5a..eec7c7a8c48186ad8d6ee5e8347be590b0cc9058 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -2259,4 +2259,9 @@ public class PurpurWorldConfig { +@@ -2260,4 +2260,9 @@ public class PurpurWorldConfig { zombifiedPiglinJockeyTryExistingChickens = getBoolean("mobs.zombified_piglin.jockey.try-existing-chickens", zombifiedPiglinJockeyTryExistingChickens); zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry); } diff --git a/patches/server/0218-Shulker-spawn-from-bullet-options.patch b/patches/server/0218-Shulker-spawn-from-bullet-options.patch index 89335bc4b..c5e7f8187 100644 --- a/patches/server/0218-Shulker-spawn-from-bullet-options.patch +++ b/patches/server/0218-Shulker-spawn-from-bullet-options.patch @@ -61,10 +61,10 @@ index f812a75985d26785639491c9a980387a3f261f2d..b11fb39b69f5225ca7da72ca1a2200c7 + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index c377b52a243af8d867d175b55ab71616328a767f..29fc2e6e8116959f53f9e7a9f3a16c2a52103396 100644 +index eec7c7a8c48186ad8d6ee5e8347be590b0cc9058..3ebf5ba5d2900d09b8d95d9762acb7c2ac0db079 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1716,6 +1716,11 @@ public class PurpurWorldConfig { +@@ -1717,6 +1717,11 @@ public class PurpurWorldConfig { public boolean shulkerRidable = false; public boolean shulkerRidableInWater = false; public double shulkerMaxHealth = 30.0D; @@ -76,7 +76,7 @@ index c377b52a243af8d867d175b55ab71616328a767f..29fc2e6e8116959f53f9e7a9f3a16c2a private void shulkerSettings() { shulkerRidable = getBoolean("mobs.shulker.ridable", shulkerRidable); shulkerRidableInWater = getBoolean("mobs.shulker.ridable-in-water", shulkerRidableInWater); -@@ -1725,6 +1730,11 @@ public class PurpurWorldConfig { +@@ -1726,6 +1731,11 @@ public class PurpurWorldConfig { set("mobs.shulker.attributes.max_health", oldValue); } shulkerMaxHealth = getDouble("mobs.shulker.attributes.max_health", shulkerMaxHealth); diff --git a/patches/server/0219-Eating-glow-berries-adds-glow-effect.patch b/patches/server/0219-Eating-glow-berries-adds-glow-effect.patch index 7a648f4fc..857198630 100644 --- a/patches/server/0219-Eating-glow-berries-adds-glow-effect.patch +++ b/patches/server/0219-Eating-glow-berries-adds-glow-effect.patch @@ -18,10 +18,10 @@ index 89d4b7e4cd4222b61b49833fceda56ffa39710fa..1eb50f0bc41db79f091f900861ba71d7 public static final Item SOUL_CAMPFIRE = registerBlock(Blocks.SOUL_CAMPFIRE, CreativeModeTab.TAB_DECORATIONS); public static final Item SHROOMLIGHT = registerBlock(Blocks.SHROOMLIGHT, CreativeModeTab.TAB_DECORATIONS); diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 29fc2e6e8116959f53f9e7a9f3a16c2a52103396..9b17536bf3e50bd1b3c1c2ca9619db3b19d1ce8d 100644 +index 3ebf5ba5d2900d09b8d95d9762acb7c2ac0db079..cc9a68966a833172a9cffa997c23d30424c08d71 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -172,6 +172,7 @@ public class PurpurWorldConfig { +@@ -173,6 +173,7 @@ public class PurpurWorldConfig { public int enderPearlCooldown = 20; public int enderPearlCooldownCreative = 20; public float enderPearlEndermiteChance = 0.05F; @@ -29,7 +29,7 @@ index 29fc2e6e8116959f53f9e7a9f3a16c2a52103396..9b17536bf3e50bd1b3c1c2ca9619db3b private void itemSettings() { itemImmuneToCactus.clear(); getList("gameplay-mechanics.item.immune.cactus", new ArrayList<>()).forEach(key -> { -@@ -215,6 +216,7 @@ public class PurpurWorldConfig { +@@ -216,6 +217,7 @@ public class PurpurWorldConfig { enderPearlCooldown = getInt("gameplay-mechanics.item.ender-pearl.cooldown", enderPearlCooldown); enderPearlCooldownCreative = getInt("gameplay-mechanics.item.ender-pearl.creative-cooldown", enderPearlCooldownCreative); enderPearlEndermiteChance = (float) getDouble("gameplay-mechanics.item.ender-pearl.endermite-spawn-chance", enderPearlEndermiteChance); diff --git a/patches/server/0220-Option-to-make-drowned-break-doors.patch b/patches/server/0220-Option-to-make-drowned-break-doors.patch index 2408f3eab..45fb391da 100644 --- a/patches/server/0220-Option-to-make-drowned-break-doors.patch +++ b/patches/server/0220-Option-to-make-drowned-break-doors.patch @@ -34,10 +34,10 @@ index 8d3ce6c97a8734c0d13844cafca251a3f4dce8a4..a004d59483dc3ffb404ae28daf76c807 @Override diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 9b17536bf3e50bd1b3c1c2ca9619db3b19d1ce8d..cb6efbbb3f12a24d0a18e1e124e17476809fe27a 100644 +index cc9a68966a833172a9cffa997c23d30424c08d71..4292a2957f09ffe59e9465b26148fb2222fab85e 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -1015,6 +1015,7 @@ public class PurpurWorldConfig { +@@ -1016,6 +1016,7 @@ public class PurpurWorldConfig { public boolean drownedJockeyOnlyBaby = true; public double drownedJockeyChance = 0.05D; public boolean drownedJockeyTryExistingChickens = true; @@ -45,7 +45,7 @@ index 9b17536bf3e50bd1b3c1c2ca9619db3b19d1ce8d..cb6efbbb3f12a24d0a18e1e124e17476 private void drownedSettings() { drownedRidable = getBoolean("mobs.drowned.ridable", drownedRidable); drownedRidableInWater = getBoolean("mobs.drowned.ridable-in-water", drownedRidableInWater); -@@ -1028,6 +1029,7 @@ public class PurpurWorldConfig { +@@ -1029,6 +1030,7 @@ public class PurpurWorldConfig { drownedJockeyOnlyBaby = getBoolean("mobs.drowned.jockey.only-babies", drownedJockeyOnlyBaby); drownedJockeyChance = getDouble("mobs.drowned.jockey.chance", drownedJockeyChance); drownedJockeyTryExistingChickens = getBoolean("mobs.drowned.jockey.try-existing-chickens", drownedJockeyTryExistingChickens); diff --git a/patches/server/0221-Configurable-hunger-starvation-damage.patch b/patches/server/0221-Configurable-hunger-starvation-damage.patch index 8d529ac3f..fea23e744 100644 --- a/patches/server/0221-Configurable-hunger-starvation-damage.patch +++ b/patches/server/0221-Configurable-hunger-starvation-damage.patch @@ -18,10 +18,10 @@ index c1130952e3fa22abaa27fcc1c4761c831dc56cc3..1ac08eca469739cb52abd38483c431b6 this.tickTimer = 0; diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index cb6efbbb3f12a24d0a18e1e124e17476809fe27a..e0b8fcb18b8ba79456f38159481d6e835995203a 100644 +index 4292a2957f09ffe59e9465b26148fb2222fab85e..a472b1ff8fc0a0a23c72283e943b0bf7f5447b1b 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -2278,4 +2278,9 @@ public class PurpurWorldConfig { +@@ -2279,4 +2279,9 @@ public class PurpurWorldConfig { private void seedSettings() { randomPopulatorSeed = getBoolean("seed.random-populator-seed", randomPopulatorSeed); } diff --git a/patches/server/0223-Armor-click-equip-options.patch b/patches/server/0223-Armor-click-equip-options.patch index 4dd58820c..6d60ff1bb 100644 --- a/patches/server/0223-Armor-click-equip-options.patch +++ b/patches/server/0223-Armor-click-equip-options.patch @@ -58,10 +58,10 @@ index 42f79d418ec4e2dbeac9a217d9dc144cda2ef714..250c0e31825f772d3fee7a523f150cb2 return InteractionResultHolder.fail(itemStack); } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index e0b8fcb18b8ba79456f38159481d6e835995203a..fbafc3d1e0912ef1f4dfb9f81f04b6905483f933 100644 +index a472b1ff8fc0a0a23c72283e943b0bf7f5447b1b..6f09051ff1e7968d17c661bbc56369d84948a70f 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -343,6 +343,8 @@ public class PurpurWorldConfig { +@@ -344,6 +344,8 @@ public class PurpurWorldConfig { public boolean playersSkipNight = true; public double playerCriticalDamageMultiplier = 1.5D; public boolean playerBurpWhenFull = false; @@ -70,7 +70,7 @@ index e0b8fcb18b8ba79456f38159481d6e835995203a..fbafc3d1e0912ef1f4dfb9f81f04b690 private void playerSettings() { idleTimeoutKick = getBoolean("gameplay-mechanics.player.idle-timeout.kick-if-idle", idleTimeoutKick); idleTimeoutTickNearbyEntities = getBoolean("gameplay-mechanics.player.idle-timeout.tick-nearby-entities", idleTimeoutTickNearbyEntities); -@@ -361,6 +363,8 @@ public class PurpurWorldConfig { +@@ -362,6 +364,8 @@ public class PurpurWorldConfig { playersSkipNight = getBoolean("gameplay-mechanics.player.can-skip-night", playersSkipNight); playerCriticalDamageMultiplier = getDouble("gameplay-mechanics.player.critical-damage-multiplier", playerCriticalDamageMultiplier); playerBurpWhenFull = getBoolean("gameplay-mechanics.player.burp-when-full", playerBurpWhenFull); diff --git a/patches/server/0226-Tool-actionable-options.patch b/patches/server/0226-Tool-actionable-options.patch index 1b38b58c1..74143857b 100644 --- a/patches/server/0226-Tool-actionable-options.patch +++ b/patches/server/0226-Tool-actionable-options.patch @@ -109,10 +109,10 @@ index 009dd6b59e27a9413b3ef115468a6d1dd0746d56..fdbc1378bc148f5a16b414a3e5867cdc return InteractionResult.PASS; } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index fbafc3d1e0912ef1f4dfb9f81f04b6905483f933..6c113874402536a1e610ef46140e0755b3839475 100644 +index 6f09051ff1e7968d17c661bbc56369d84948a70f..721be13f1953a7ee616b9962a55f4362069a3c79 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -458,6 +458,153 @@ public class PurpurWorldConfig { +@@ -459,6 +459,153 @@ public class PurpurWorldConfig { }); } diff --git a/patches/server/0231-option-to-disable-shulker-box-items-from-dropping-co.patch b/patches/server/0231-option-to-disable-shulker-box-items-from-dropping-co.patch index 7d6a48fc5..d9f26f09f 100644 --- a/patches/server/0231-option-to-disable-shulker-box-items-from-dropping-co.patch +++ b/patches/server/0231-option-to-disable-shulker-box-items-from-dropping-co.patch @@ -19,10 +19,10 @@ index d9114ee2ef4f1dee7ae018f932a7804a61a90ef6..8b521ee48480d3eb5cc77051c425ff45 if (nbttagcompound != null) { diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 6c113874402536a1e610ef46140e0755b3839475..2c64ee0898414e3358bb105ca1c9f7e4fbe3deb3 100644 +index 721be13f1953a7ee616b9962a55f4362069a3c79..2e034573f41a4b356c670d42afc07a919ee1d014 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -173,6 +173,7 @@ public class PurpurWorldConfig { +@@ -174,6 +174,7 @@ public class PurpurWorldConfig { public int enderPearlCooldownCreative = 20; public float enderPearlEndermiteChance = 0.05F; public int glowBerriesEatGlowDuration = 0; @@ -30,7 +30,7 @@ index 6c113874402536a1e610ef46140e0755b3839475..2c64ee0898414e3358bb105ca1c9f7e4 private void itemSettings() { itemImmuneToCactus.clear(); getList("gameplay-mechanics.item.immune.cactus", new ArrayList<>()).forEach(key -> { -@@ -217,6 +218,7 @@ public class PurpurWorldConfig { +@@ -218,6 +219,7 @@ public class PurpurWorldConfig { enderPearlCooldownCreative = getInt("gameplay-mechanics.item.ender-pearl.creative-cooldown", enderPearlCooldownCreative); enderPearlEndermiteChance = (float) getDouble("gameplay-mechanics.item.ender-pearl.endermite-spawn-chance", enderPearlEndermiteChance); glowBerriesEatGlowDuration = getInt("gameplay-mechanics.item.glow_berries.eat-glow-duration", glowBerriesEatGlowDuration); diff --git a/patches/server/0232-Silk-touchable-budding-amethyst.patch b/patches/server/0232-Silk-touchable-budding-amethyst.patch index 8b33cec14..013a426c9 100644 --- a/patches/server/0232-Silk-touchable-budding-amethyst.patch +++ b/patches/server/0232-Silk-touchable-budding-amethyst.patch @@ -24,10 +24,10 @@ index 02fc3ede12eadbf72e26e31b1c475c7f5b2ad73a..2288e727929ffb3a3bca138fb0289408 + // Purpur end } diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -index 2c64ee0898414e3358bb105ca1c9f7e4fbe3deb3..303d23449cf7f47c7907cbabfaed8503ce98a324 100644 +index 2e034573f41a4b356c670d42afc07a919ee1d014..66af04a37b42e4bba604d27f5e841933d6219a15 100644 --- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java -@@ -706,6 +706,11 @@ public class PurpurWorldConfig { +@@ -707,6 +707,11 @@ public class PurpurWorldConfig { } } diff --git a/patches/server/0233-Big-dripleaf-tilt-delay.patch b/patches/server/0233-Big-dripleaf-tilt-delay.patch new file mode 100644 index 000000000..09ace3735 --- /dev/null +++ b/patches/server/0233-Big-dripleaf-tilt-delay.patch @@ -0,0 +1,52 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: William Blake Galbreath +Date: Fri, 16 Jul 2021 22:47:29 -0500 +Subject: [PATCH] Big dripleaf tilt delay + +Makes the tilt delays configurable. There are only 3 types of tilts used by this setting. When an entity steps on a +big_dripleaf with no tilt it will immediately change to an UNSTABLE tilt. Each change after that is on a tick timer: + +UNSTABLE: big_dripleaf with UNSTABLE tilt will change to PARTIAL tilt after 10 ticks +PARTIAL: big_dripleaf with PARTIAL tilt will change to FULL tilt after 10 ticks +UNSTABLE: big_dripleaf with FULL tilt will change back to no tilt after 100 ticks + +diff --git a/src/main/java/net/minecraft/world/level/block/BigDripleafBlock.java b/src/main/java/net/minecraft/world/level/block/BigDripleafBlock.java +index 5bfb60258018c8beda1fc2ac29e8ffc5c9377064..24e80e4d3ebbfd5f72e00ad7610efa12dc648ef6 100644 +--- a/src/main/java/net/minecraft/world/level/block/BigDripleafBlock.java ++++ b/src/main/java/net/minecraft/world/level/block/BigDripleafBlock.java +@@ -234,7 +234,7 @@ public class BigDripleafBlock extends HorizontalDirectionalBlock implements Bone + BigDripleafBlock.playTiltSound(world, blockposition, soundeffect); + } + +- int i = BigDripleafBlock.DELAY_UNTIL_NEXT_TILT_STATE.getInt(tilt); ++ int i = world.purpurConfig.bigDripleafTiltDelay.getOrDefault(tilt, -1); // Purpur + + if (i != -1) { + world.getBlockTicks().scheduleTick(blockposition, this, i); +diff --git a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +index 66af04a37b42e4bba604d27f5e841933d6219a15..8a85ffdf4aa73923077004e0a228db6833f52815 100644 +--- a/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java ++++ b/src/main/java/net/pl3x/purpur/PurpurWorldConfig.java +@@ -707,6 +707,22 @@ public class PurpurWorldConfig { + } + } + ++ public Map bigDripleafTiltDelay = new HashMap<>(); ++ private void bigDripleafSettings() { ++ bigDripleafTiltDelay.clear(); ++ getMap("blocks.big_dripleaf.tilt-delay", Map.ofEntries( ++ Map.entry("UNSTABLE", 10), ++ Map.entry("PARTIAL", 10), ++ Map.entry("FULL", 100)) ++ ).forEach((tilt, delay) -> { ++ try { ++ bigDripleafTiltDelay.put(Tilt.valueOf(tilt), (int) delay); ++ } catch (IllegalArgumentException e) { ++ PurpurConfig.log(Level.SEVERE, "Invalid big_dripleaf tilt key: " + tilt); ++ } ++ }); ++ } ++ + public boolean buddingAmethystSilkTouch = false; + private void buddingAmethystSettings() { + buddingAmethystSilkTouch = getBoolean("blocks.budding_amethyst.silk-touch", buddingAmethystSilkTouch);