diff --git a/patches/server/0132-Add-mobGriefing-bypass-to-everything-affected.patch b/patches/server/0132-Add-mobGriefing-bypass-to-everything-affected.patch index cc460409c..31699bc32 100644 --- a/patches/server/0132-Add-mobGriefing-bypass-to-everything-affected.patch +++ b/patches/server/0132-Add-mobGriefing-bypass-to-everything-affected.patch @@ -393,7 +393,7 @@ index b942e7c85e6c8f9a7664d9e5bf93bcd79e0651f1..5b29f3fced5435e172dd69f6f4eb265e return true; // Purpur end diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 45b4ac35cb0b596c5ad6c9ab03739e337425becc..eb41a866b47b0051a6a7e4268bc946bf35264168 100644 +index 45b4ac35cb0b596c5ad6c9ab03739e337425becc..b3631cb89f1ac4486596d438215724a29ca883e4 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -381,8 +381,11 @@ public class PurpurWorldConfig { @@ -634,7 +634,19 @@ index 45b4ac35cb0b596c5ad6c9ab03739e337425becc..eb41a866b47b0051a6a7e4268bc946bf } public boolean squidRidable = false; -@@ -1645,6 +1682,7 @@ public class PurpurWorldConfig { +@@ -1594,6 +1631,11 @@ public class PurpurWorldConfig { + tropicalFishMaxHealth = getDouble("mobs.tropical_fish.attributes.max_health", tropicalFishMaxHealth); + } + ++ public boolean turtleEggsBypassMobGriefing = false; ++ private void turtleSettings() { ++ turtleEggsBypassMobGriefing = getBoolean("blocks.turtle_egg.bypass-mob-griefing", turtleEggsBypassMobGriefing); ++ } ++ + public boolean turtleRidable = false; + public boolean turtleRidableInWater = false; + public double turtleMaxHealth = 30.0D; +@@ -1645,6 +1687,7 @@ public class PurpurWorldConfig { public int villagerBreedingTicks = 6000; public boolean villagerClericsFarmWarts = false; public boolean villagerClericFarmersThrowWarts = true; @@ -642,7 +654,7 @@ index 45b4ac35cb0b596c5ad6c9ab03739e337425becc..eb41a866b47b0051a6a7e4268bc946bf private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1664,6 +1702,7 @@ public class PurpurWorldConfig { +@@ -1664,6 +1707,7 @@ public class PurpurWorldConfig { villagerBreedingTicks = getInt("mobs.villager.breeding-delay-ticks", villagerBreedingTicks); villagerClericsFarmWarts = getBoolean("mobs.villager.clerics-farm-warts", villagerClericsFarmWarts); villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts); @@ -650,7 +662,7 @@ index 45b4ac35cb0b596c5ad6c9ab03739e337425becc..eb41a866b47b0051a6a7e4268bc946bf } public boolean vindicatorRidable = false; -@@ -1720,6 +1759,7 @@ public class PurpurWorldConfig { +@@ -1720,6 +1764,7 @@ public class PurpurWorldConfig { public double witherMaxHealth = 300.0D; public float witherHealthRegenAmount = 1.0f; public int witherHealthRegenDelay = 20; @@ -658,7 +670,7 @@ index 45b4ac35cb0b596c5ad6c9ab03739e337425becc..eb41a866b47b0051a6a7e4268bc946bf private void witherSettings() { witherRidable = getBoolean("mobs.wither.ridable", witherRidable); witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater); -@@ -1736,6 +1776,7 @@ public class PurpurWorldConfig { +@@ -1736,6 +1781,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); @@ -666,7 +678,7 @@ index 45b4ac35cb0b596c5ad6c9ab03739e337425becc..eb41a866b47b0051a6a7e4268bc946bf } public boolean witherSkeletonRidable = false; -@@ -1800,6 +1841,7 @@ public class PurpurWorldConfig { +@@ -1800,6 +1846,7 @@ public class PurpurWorldConfig { public double zombieJockeyChance = 0.05D; public boolean zombieJockeyTryExistingChickens = true; public boolean zombieAggressiveTowardsVillagerWhenLagging = true; @@ -674,7 +686,7 @@ index 45b4ac35cb0b596c5ad6c9ab03739e337425becc..eb41a866b47b0051a6a7e4268bc946bf private void zombieSettings() { zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable); zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater); -@@ -1814,6 +1856,7 @@ public class PurpurWorldConfig { +@@ -1814,6 +1861,7 @@ 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/0138-Toggle-for-water-sensitive-mob-damage.patch b/patches/server/0138-Toggle-for-water-sensitive-mob-damage.patch index b7a8f4bfc..c8853cc45 100644 --- a/patches/server/0138-Toggle-for-water-sensitive-mob-damage.patch +++ b/patches/server/0138-Toggle-for-water-sensitive-mob-damage.patch @@ -1174,7 +1174,7 @@ index c5dbb1c8210b71f7d9d91089cb139f65605573a8..e5b78c9d6fb326771d65ea9afd9da38c @Override diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff96e77afac 100644 +index bf1ea467a0be5a0c231413b91d6a644205816141..0bcba16d116d307d329ddbcf6d8948774cf16959 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -543,6 +543,7 @@ public class PurpurWorldConfig { @@ -2064,8 +2064,8 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 + tropicalFishTakeDamageFromWater = getBoolean("mobs.tropical_fish.takes-damage-from-water", tropicalFishTakeDamageFromWater); } - public boolean turtleRidable = false; -@@ -1656,6 +1774,7 @@ public class PurpurWorldConfig { + public boolean turtleEggsBypassMobGriefing = false; +@@ -1661,6 +1779,7 @@ public class PurpurWorldConfig { public boolean turtleEggsBreakFromItems = true; public boolean turtleEggsBreakFromMinecarts = true; public int turtleBreedingTicks = 6000; @@ -2073,7 +2073,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void turtleEggSettings() { turtleRidable = getBoolean("mobs.turtle.ridable", turtleRidable); turtleRidableInWater = getBoolean("mobs.turtle.ridable-in-water", turtleRidableInWater); -@@ -1669,12 +1788,14 @@ public class PurpurWorldConfig { +@@ -1674,12 +1793,14 @@ public class PurpurWorldConfig { turtleEggsBreakFromItems = getBoolean("blocks.turtle_egg.break-from-items", turtleEggsBreakFromItems); turtleEggsBreakFromMinecarts = getBoolean("blocks.turtle_egg.break-from-minecarts", turtleEggsBreakFromMinecarts); turtleBreedingTicks = getInt("mobs.turtle.breeding-delay-ticks", turtleBreedingTicks); @@ -2088,7 +2088,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void vexSettings() { vexRidable = getBoolean("mobs.vex.ridable", vexRidable); vexRidableInWater = getBoolean("mobs.vex.ridable-in-water", vexRidableInWater); -@@ -1685,6 +1806,7 @@ public class PurpurWorldConfig { +@@ -1690,6 +1811,7 @@ public class PurpurWorldConfig { set("mobs.vex.attributes.max_health", oldValue); } vexMaxHealth = getDouble("mobs.vex.attributes.max_health", vexMaxHealth); @@ -2096,7 +2096,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 } public boolean villagerRidable = false; -@@ -1701,6 +1823,7 @@ public class PurpurWorldConfig { +@@ -1706,6 +1828,7 @@ public class PurpurWorldConfig { public boolean villagerClericsFarmWarts = false; public boolean villagerClericFarmersThrowWarts = true; public boolean villagerBypassMobGriefing = false; @@ -2104,7 +2104,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1721,12 +1844,14 @@ public class PurpurWorldConfig { +@@ -1726,12 +1849,14 @@ 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); @@ -2119,7 +2119,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void vindicatorSettings() { vindicatorRidable = getBoolean("mobs.vindicator.ridable", vindicatorRidable); vindicatorRidableInWater = getBoolean("mobs.vindicator.ridable-in-water", vindicatorRidableInWater); -@@ -1737,6 +1862,7 @@ public class PurpurWorldConfig { +@@ -1742,6 +1867,7 @@ public class PurpurWorldConfig { } vindicatorMaxHealth = getDouble("mobs.vindicator.attributes.max_health", vindicatorMaxHealth); vindicatorJohnnySpawnChance = getDouble("mobs.vindicator.johnny.spawn-chance", vindicatorJohnnySpawnChance); @@ -2127,7 +2127,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 } public boolean wanderingTraderRidable = false; -@@ -1744,6 +1870,7 @@ public class PurpurWorldConfig { +@@ -1749,6 +1875,7 @@ public class PurpurWorldConfig { public double wanderingTraderMaxHealth = 20.0D; public boolean wanderingTraderFollowEmeraldBlock = false; public boolean wanderingTraderCanBeLeashed = false; @@ -2135,7 +2135,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void wanderingTraderSettings() { wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable); wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater); -@@ -1755,11 +1882,13 @@ public class PurpurWorldConfig { +@@ -1760,11 +1887,13 @@ 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); @@ -2149,7 +2149,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void witchSettings() { witchRidable = getBoolean("mobs.witch.ridable", witchRidable); witchRidableInWater = getBoolean("mobs.witch.ridable-in-water", witchRidableInWater); -@@ -1769,6 +1898,7 @@ public class PurpurWorldConfig { +@@ -1774,6 +1903,7 @@ public class PurpurWorldConfig { set("mobs.witch.attributes.max_health", oldValue); } witchMaxHealth = getDouble("mobs.witch.attributes.max_health", witchMaxHealth); @@ -2157,7 +2157,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 } public boolean witherRidable = false; -@@ -1778,6 +1908,7 @@ public class PurpurWorldConfig { +@@ -1783,6 +1913,7 @@ public class PurpurWorldConfig { public float witherHealthRegenAmount = 1.0f; public int witherHealthRegenDelay = 20; public boolean witherBypassMobGriefing = false; @@ -2165,7 +2165,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void witherSettings() { witherRidable = getBoolean("mobs.wither.ridable", witherRidable); witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater); -@@ -1795,11 +1926,13 @@ public class PurpurWorldConfig { +@@ -1800,11 +1931,13 @@ 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); @@ -2179,7 +2179,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void witherSkeletonSettings() { witherSkeletonRidable = getBoolean("mobs.wither_skeleton.ridable", witherSkeletonRidable); witherSkeletonRidableInWater = getBoolean("mobs.wither_skeleton.ridable-in-water", witherSkeletonRidableInWater); -@@ -1809,6 +1942,7 @@ public class PurpurWorldConfig { +@@ -1814,6 +1947,7 @@ public class PurpurWorldConfig { set("mobs.wither_skeleton.attributes.max_health", oldValue); } witherSkeletonMaxHealth = getDouble("mobs.wither_skeleton.attributes.max_health", witherSkeletonMaxHealth); @@ -2187,7 +2187,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 } public boolean wolfRidable = false; -@@ -1818,6 +1952,7 @@ public class PurpurWorldConfig { +@@ -1823,6 +1957,7 @@ public class PurpurWorldConfig { public boolean wolfMilkCuresRabies = true; public double wolfNaturalRabid = 0.0D; public int wolfBreedingTicks = 6000; @@ -2195,7 +2195,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void wolfSettings() { wolfRidable = getBoolean("mobs.wolf.ridable", wolfRidable); wolfRidableInWater = getBoolean("mobs.wolf.ridable-in-water", wolfRidableInWater); -@@ -1835,11 +1970,13 @@ public class PurpurWorldConfig { +@@ -1840,11 +1975,13 @@ public class PurpurWorldConfig { wolfMilkCuresRabies = getBoolean("mobs.wolf.milk-cures-rabid-wolves", wolfMilkCuresRabies); wolfNaturalRabid = getDouble("mobs.wolf.spawn-rabid-chance", wolfNaturalRabid); wolfBreedingTicks = getInt("mobs.wolf.breeding-delay-ticks", wolfBreedingTicks); @@ -2209,7 +2209,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void zoglinSettings() { zoglinRidable = getBoolean("mobs.zoglin.ridable", zoglinRidable); zoglinRidableInWater = getBoolean("mobs.zoglin.ridable-in-water", zoglinRidableInWater); -@@ -1849,6 +1986,7 @@ public class PurpurWorldConfig { +@@ -1854,6 +1991,7 @@ public class PurpurWorldConfig { set("mobs.zoglin.attributes.max_health", oldValue); } zoglinMaxHealth = getDouble("mobs.zoglin.attributes.max_health", zoglinMaxHealth); @@ -2217,7 +2217,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 } public boolean zombieRidable = false; -@@ -1860,6 +1998,7 @@ public class PurpurWorldConfig { +@@ -1865,6 +2003,7 @@ public class PurpurWorldConfig { public boolean zombieJockeyTryExistingChickens = true; public boolean zombieAggressiveTowardsVillagerWhenLagging = true; public boolean zombieBypassMobGriefing = false; @@ -2225,7 +2225,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void zombieSettings() { zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable); zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater); -@@ -1875,6 +2014,7 @@ public class PurpurWorldConfig { +@@ -1880,6 +2019,7 @@ public class PurpurWorldConfig { zombieJockeyTryExistingChickens = getBoolean("mobs.zombie.jockey.try-existing-chickens", zombieJockeyTryExistingChickens); zombieAggressiveTowardsVillagerWhenLagging = getBoolean("mobs.zombie.aggressive-towards-villager-when-lagging", zombieAggressiveTowardsVillagerWhenLagging); zombieBypassMobGriefing = getBoolean("mobs.zombie.bypass-mob-griefing", zombieBypassMobGriefing); @@ -2233,7 +2233,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 } public boolean zombieHorseRidableInWater = false; -@@ -1886,6 +2026,7 @@ public class PurpurWorldConfig { +@@ -1891,6 +2031,7 @@ public class PurpurWorldConfig { public double zombieHorseMovementSpeedMin = 0.2D; public double zombieHorseMovementSpeedMax = 0.2D; public double zombieHorseSpawnChance = 0.0D; @@ -2241,7 +2241,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void zombieHorseSettings() { zombieHorseRidableInWater = getBoolean("mobs.zombie_horse.ridable-in-water", zombieHorseRidableInWater); zombieHorseCanSwim = getBoolean("mobs.zombie_horse.can-swim", zombieHorseCanSwim); -@@ -1902,6 +2043,7 @@ public class PurpurWorldConfig { +@@ -1907,6 +2048,7 @@ public class PurpurWorldConfig { zombieHorseMovementSpeedMin = getDouble("mobs.zombie_horse.attributes.movement_speed.min", zombieHorseMovementSpeedMin); zombieHorseMovementSpeedMax = getDouble("mobs.zombie_horse.attributes.movement_speed.max", zombieHorseMovementSpeedMax); zombieHorseSpawnChance = getDouble("mobs.zombie_horse.spawn-chance", zombieHorseSpawnChance); @@ -2249,7 +2249,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 } public boolean zombieVillagerRidable = false; -@@ -1911,6 +2053,7 @@ public class PurpurWorldConfig { +@@ -1916,6 +2058,7 @@ public class PurpurWorldConfig { public boolean zombieVillagerJockeyOnlyBaby = true; public double zombieVillagerJockeyChance = 0.05D; public boolean zombieVillagerJockeyTryExistingChickens = true; @@ -2257,7 +2257,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void zombieVillagerSettings() { zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable); zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater); -@@ -1924,6 +2067,7 @@ public class PurpurWorldConfig { +@@ -1929,6 +2072,7 @@ public class PurpurWorldConfig { zombieVillagerJockeyOnlyBaby = getBoolean("mobs.zombie_villager.jockey.only-babies", zombieVillagerJockeyOnlyBaby); zombieVillagerJockeyChance = getDouble("mobs.zombie_villager.jockey.chance", zombieVillagerJockeyChance); zombieVillagerJockeyTryExistingChickens = getBoolean("mobs.zombie_villager.jockey.try-existing-chickens", zombieVillagerJockeyTryExistingChickens); @@ -2265,7 +2265,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 } public boolean zombifiedPiglinRidable = false; -@@ -1934,6 +2078,7 @@ public class PurpurWorldConfig { +@@ -1939,6 +2083,7 @@ public class PurpurWorldConfig { public double zombifiedPiglinJockeyChance = 0.05D; public boolean zombifiedPiglinJockeyTryExistingChickens = true; public boolean zombifiedPiglinCountAsPlayerKillWhenAngry = true; @@ -2273,7 +2273,7 @@ index 1f53d91397fdd6903fe0b9e2d7805c4a08c3f27d..7937bad1b6e9c62f23bcdccc11824ff9 private void zombifiedPiglinSettings() { zombifiedPiglinRidable = getBoolean("mobs.zombified_piglin.ridable", zombifiedPiglinRidable); zombifiedPiglinRidableInWater = getBoolean("mobs.zombified_piglin.ridable-in-water", zombifiedPiglinRidableInWater); -@@ -1948,5 +2093,6 @@ public class PurpurWorldConfig { +@@ -1953,5 +2098,6 @@ public class PurpurWorldConfig { zombifiedPiglinJockeyChance = getDouble("mobs.zombified_piglin.jockey.chance", zombifiedPiglinJockeyChance); 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/0141-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch b/patches/server/0141-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch index b8a6a1e60..249249ef5 100644 --- a/patches/server/0141-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch +++ b/patches/server/0141-Configs-for-if-Wither-Ender-Dragon-can-ride-vehicles.patch @@ -29,7 +29,7 @@ index 3b752f97f75c78657f37215ecd92b7460a71f090..5ef45fe1dac1df779727f9c441f7e651 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 11a7f6dbf3dd85ac896a33b66b3e681e68f6ad18..2088887b61bfc02e1d00e645682879123df30e68 100644 +index ef4c593494a493eb319b402eb22a5a446ebcb181..35bd91ee1e07984381ed2179dace489b90e990d9 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -865,6 +865,7 @@ public class PurpurWorldConfig { @@ -48,7 +48,7 @@ index 11a7f6dbf3dd85ac896a33b66b3e681e68f6ad18..2088887b61bfc02e1d00e64568287912 } public boolean endermanRidable = false; -@@ -1940,6 +1942,7 @@ public class PurpurWorldConfig { +@@ -1945,6 +1947,7 @@ public class PurpurWorldConfig { public int witherHealthRegenDelay = 20; public boolean witherBypassMobGriefing = false; public boolean witherTakeDamageFromWater = false; @@ -56,7 +56,7 @@ index 11a7f6dbf3dd85ac896a33b66b3e681e68f6ad18..2088887b61bfc02e1d00e64568287912 private void witherSettings() { witherRidable = getBoolean("mobs.wither.ridable", witherRidable); witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater); -@@ -1958,6 +1961,7 @@ public class PurpurWorldConfig { +@@ -1963,6 +1966,7 @@ public class PurpurWorldConfig { witherHealthRegenDelay = getInt("mobs.wither.health-regen-delay", witherHealthRegenDelay); witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing); witherTakeDamageFromWater = getBoolean("mobs.wither.takes-damage-from-water", witherTakeDamageFromWater); diff --git a/patches/server/0156-Add-config-for-villager-trading.patch b/patches/server/0156-Add-config-for-villager-trading.patch index cc0de9ac4..b30b73d31 100644 --- a/patches/server/0156-Add-config-for-villager-trading.patch +++ b/patches/server/0156-Add-config-for-villager-trading.patch @@ -31,10 +31,10 @@ index e5b78c9d6fb326771d65ea9afd9da38c204922f0..1a8df13b06b1ac5e5a7d63033b4a5326 this.openTradingScreen(player, this.getDisplayName(), 1); } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 63e74fc0f42e5cfe2cb60434959d4c76e6b76093..a3204f9a70846a589c54bda34d1575648e4a48aa 100644 +index c757abcb7238a4105646b17ff618ac226dc9597b..49ec4ebc95c4b9fbec333109ff0548a51dfcbe1a 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -1921,6 +1921,7 @@ public class PurpurWorldConfig { +@@ -1926,6 +1926,7 @@ public class PurpurWorldConfig { public boolean villagerClericFarmersThrowWarts = true; public boolean villagerBypassMobGriefing = false; public boolean villagerTakeDamageFromWater = false; @@ -42,7 +42,7 @@ index 63e74fc0f42e5cfe2cb60434959d4c76e6b76093..a3204f9a70846a589c54bda34d157564 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -1942,6 +1943,7 @@ public class PurpurWorldConfig { +@@ -1947,6 +1948,7 @@ public class PurpurWorldConfig { villagerClericFarmersThrowWarts = getBoolean("mobs.villager.cleric-wart-farmers-throw-warts-at-villagers", villagerClericFarmersThrowWarts); villagerBypassMobGriefing = getBoolean("mobs.villager.bypass-mob-griefing", villagerBypassMobGriefing); villagerTakeDamageFromWater = getBoolean("mobs.villager.takes-damage-from-water", villagerTakeDamageFromWater); @@ -50,7 +50,7 @@ index 63e74fc0f42e5cfe2cb60434959d4c76e6b76093..a3204f9a70846a589c54bda34d157564 } public boolean vindicatorRidable = false; -@@ -1968,6 +1970,7 @@ public class PurpurWorldConfig { +@@ -1973,6 +1975,7 @@ public class PurpurWorldConfig { public boolean wanderingTraderFollowEmeraldBlock = false; public boolean wanderingTraderCanBeLeashed = false; public boolean wanderingTraderTakeDamageFromWater = false; @@ -58,7 +58,7 @@ index 63e74fc0f42e5cfe2cb60434959d4c76e6b76093..a3204f9a70846a589c54bda34d157564 private void wanderingTraderSettings() { wanderingTraderRidable = getBoolean("mobs.wandering_trader.ridable", wanderingTraderRidable); wanderingTraderRidableInWater = getBoolean("mobs.wandering_trader.ridable-in-water", wanderingTraderRidableInWater); -@@ -1980,6 +1983,7 @@ public class PurpurWorldConfig { +@@ -1985,6 +1988,7 @@ public class PurpurWorldConfig { wanderingTraderFollowEmeraldBlock = getBoolean("mobs.wandering_trader.follow-emerald-blocks", wanderingTraderFollowEmeraldBlock); wanderingTraderCanBeLeashed = getBoolean("mobs.wandering_trader.can-be-leashed", wanderingTraderCanBeLeashed); wanderingTraderTakeDamageFromWater = getBoolean("mobs.wandering_trader.takes-damage-from-water", wanderingTraderTakeDamageFromWater); diff --git a/patches/server/0170-Config-for-wither-explosion-radius.patch b/patches/server/0170-Config-for-wither-explosion-radius.patch index e55e6c8cf..113282364 100644 --- a/patches/server/0170-Config-for-wither-explosion-radius.patch +++ b/patches/server/0170-Config-for-wither-explosion-radius.patch @@ -18,10 +18,10 @@ index a66e9826b8283366cec5adb54f79efee47d9df22..6cf8b12e94c17a8111eef5cc0157e4df if (!event.isCancelled()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 2281c6fb5e6bb0be0cc8649ee4c0ee5d9585f465..85df77eb5530ac9c4374f5df78d10c50c121a803 100644 +index 17ad853b6a151d220f880613c46e15e6e6823af7..c20e8ca37fbd8ec2046c1d5e3aee8bde57763ac9 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2079,6 +2079,7 @@ public class PurpurWorldConfig { +@@ -2084,6 +2084,7 @@ public class PurpurWorldConfig { public boolean witherBypassMobGriefing = false; public boolean witherTakeDamageFromWater = false; public boolean witherCanRideVehicles = false; @@ -29,7 +29,7 @@ index 2281c6fb5e6bb0be0cc8649ee4c0ee5d9585f465..85df77eb5530ac9c4374f5df78d10c50 private void witherSettings() { witherRidable = getBoolean("mobs.wither.ridable", witherRidable); witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater); -@@ -2098,6 +2099,7 @@ public class PurpurWorldConfig { +@@ -2103,6 +2104,7 @@ public class PurpurWorldConfig { witherBypassMobGriefing = getBoolean("mobs.wither.bypass-mob-griefing", witherBypassMobGriefing); witherTakeDamageFromWater = getBoolean("mobs.wither.takes-damage-from-water", witherTakeDamageFromWater); witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles); diff --git a/patches/server/0202-Configurable-hunger-starvation-damage.patch b/patches/server/0202-Configurable-hunger-starvation-damage.patch index 755746965..1bc93efd5 100644 --- a/patches/server/0202-Configurable-hunger-starvation-damage.patch +++ b/patches/server/0202-Configurable-hunger-starvation-damage.patch @@ -18,10 +18,10 @@ index 65421cfff05c0493f5fef1bdff03172c9e33f33e..63584faeec4e5013be7a377e3203ec16 this.tickTimer = 0; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 59b5878b51628cc8fa9edce8b4d5a4cf2a928e50..2e0710cf3e930417772bd483eeda2023d23160ef 100644 +index cc33716dd6257927a16c5acf784cbf82c9c4d6d6..ca6672a885eba237100c78816f50dea750310ba1 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2366,4 +2366,9 @@ public class PurpurWorldConfig { +@@ -2371,4 +2371,9 @@ public class PurpurWorldConfig { zombifiedPiglinCountAsPlayerKillWhenAngry = getBoolean("mobs.zombified_piglin.count-as-player-kill-when-angry", zombifiedPiglinCountAsPlayerKillWhenAngry); zombifiedPiglinTakeDamageFromWater = getBoolean("mobs.zombified_piglin.takes-damage-from-water", zombifiedPiglinTakeDamageFromWater); } diff --git a/patches/server/0212-Silk-touchable-budding-amethyst.patch b/patches/server/0212-Silk-touchable-budding-amethyst.patch index dc55e613d..49f3b969d 100644 --- a/patches/server/0212-Silk-touchable-budding-amethyst.patch +++ b/patches/server/0212-Silk-touchable-budding-amethyst.patch @@ -24,7 +24,7 @@ index 02fc3ede12eadbf72e26e31b1c475c7f5b2ad73a..2288e727929ffb3a3bca138fb0289408 + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 36202f69545fffa244013336ae1473571c56a3a7..e3254df008f77efa6d67e5c94414a30dc2d7d772 100644 +index b8c8a04a6c9c92658e6a7fa7e171147193a61a9a..55f11d3a7baa39e684e84b7c8c5d8c82e3233e39 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -696,6 +696,11 @@ public class PurpurWorldConfig { @@ -39,7 +39,7 @@ index 36202f69545fffa244013336ae1473571c56a3a7..e3254df008f77efa6d67e5c94414a30d public boolean chestOpenWithBlockOnTop = false; private void chestSettings() { chestOpenWithBlockOnTop = getBoolean("blocks.chest.open-with-solid-block-on-top", chestOpenWithBlockOnTop); -@@ -2525,3 +2530,4 @@ public class PurpurWorldConfig { +@@ -2530,3 +2535,4 @@ public class PurpurWorldConfig { hungerStarvationDamage = (float) getDouble("hunger.starvation-damage", hungerStarvationDamage); } } diff --git a/patches/server/0220-Customizeable-Zombie-Villager-curing-times.patch b/patches/server/0220-Customizeable-Zombie-Villager-curing-times.patch index 4da82e143..08ffb57eb 100644 --- a/patches/server/0220-Customizeable-Zombie-Villager-curing-times.patch +++ b/patches/server/0220-Customizeable-Zombie-Villager-curing-times.patch @@ -18,10 +18,10 @@ index 96e5d1210e27b0bca7a354366e5c805709ae4fec..c6ba41c2b4cc96bc97ed2e2220c0f3fa this.gameEvent(GameEvent.MOB_INTERACT, this.eyeBlockPosition()); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 354468e045811c8ff3e9cc8d64b7ee799863ac79..079c75d8d5c6db1d8abe02aabc98b64dd718792c 100644 +index 50fb46df1085dc6d07dc4c4cffb6610e9ceb8d08..231fbef1b227abe88a1fc46defc1ffaf881dee38 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2514,6 +2514,8 @@ public class PurpurWorldConfig { +@@ -2519,6 +2519,8 @@ public class PurpurWorldConfig { public double zombieVillagerJockeyChance = 0.05D; public boolean zombieVillagerJockeyTryExistingChickens = true; public boolean zombieVillagerTakeDamageFromWater = false; @@ -30,7 +30,7 @@ index 354468e045811c8ff3e9cc8d64b7ee799863ac79..079c75d8d5c6db1d8abe02aabc98b64d private void zombieVillagerSettings() { zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable); zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater); -@@ -2528,6 +2530,8 @@ public class PurpurWorldConfig { +@@ -2533,6 +2535,8 @@ public class PurpurWorldConfig { zombieVillagerJockeyChance = getDouble("mobs.zombie_villager.jockey.chance", zombieVillagerJockeyChance); zombieVillagerJockeyTryExistingChickens = getBoolean("mobs.zombie_villager.jockey.try-existing-chickens", zombieVillagerJockeyTryExistingChickens); zombieVillagerTakeDamageFromWater = getBoolean("mobs.zombie_villager.takes-damage-from-water", zombieVillagerTakeDamageFromWater); diff --git a/patches/server/0222-Toggle-for-Wither-s-spawn-sound.patch b/patches/server/0222-Toggle-for-Wither-s-spawn-sound.patch index 8f62b4efc..efc326a44 100644 --- a/patches/server/0222-Toggle-for-Wither-s-spawn-sound.patch +++ b/patches/server/0222-Toggle-for-Wither-s-spawn-sound.patch @@ -18,10 +18,10 @@ index 46b8886b6b17fa145db42aeb380f22ec0ae99ec0..1cab4c037c99babf4e35480de7ffc02b // this.world.globalLevelEvent(1023, new BlockPosition(this), 0); //int viewDistance = ((ServerLevel) this.level).getCraftServer().getViewDistance() * 16; // Paper - updated to use worlds actual view distance incase we have to uncomment this due to removal of player view distance API diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a975e29b58d669129aa86a4b78fb8bbd8f8b6950..35bf7ac52af2124a920b788abc930f262b0b6bbc 100644 +index e4c0f23780b7cdb83c75f873dc6271f13a61f20a..9ce640bc28c71eb398f8e97f4d16b47fa0f2ad8d 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2369,6 +2369,7 @@ public class PurpurWorldConfig { +@@ -2374,6 +2374,7 @@ public class PurpurWorldConfig { public boolean witherTakeDamageFromWater = false; public boolean witherCanRideVehicles = false; public float witherExplosionRadius = 1.0F; @@ -29,7 +29,7 @@ index a975e29b58d669129aa86a4b78fb8bbd8f8b6950..35bf7ac52af2124a920b788abc930f26 private void witherSettings() { witherRidable = getBoolean("mobs.wither.ridable", witherRidable); witherRidableInWater = getBoolean("mobs.wither.ridable-in-water", witherRidableInWater); -@@ -2389,6 +2390,7 @@ public class PurpurWorldConfig { +@@ -2394,6 +2395,7 @@ public class PurpurWorldConfig { witherTakeDamageFromWater = getBoolean("mobs.wither.takes-damage-from-water", witherTakeDamageFromWater); witherCanRideVehicles = getBoolean("mobs.wither.can-ride-vehicles", witherCanRideVehicles); witherExplosionRadius = (float) getDouble("mobs.wither.explosion-radius", witherExplosionRadius); diff --git a/patches/server/0225-Conduit-behavior-configuration.patch b/patches/server/0225-Conduit-behavior-configuration.patch index 281177f96..a70e1171e 100644 --- a/patches/server/0225-Conduit-behavior-configuration.patch +++ b/patches/server/0225-Conduit-behavior-configuration.patch @@ -44,10 +44,10 @@ index 96b6e914441ee1faa059aa5ddcf77ffb74e76ae9..31af7d8111e73169d3e02aa52799a018 } CraftEventFactory.blockDamage = null; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index c199152ede194fadb4f38c496201492ec689b664..121c97e38536dafcaa2dade7a6cd54459bda9be2 100644 +index bbc5e20706b638fb39304ca93050a7849ad0281d..f6a2dae482f98eab406289497182ccc377ae9cd0 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2575,5 +2575,28 @@ public class PurpurWorldConfig { +@@ -2580,5 +2580,28 @@ public class PurpurWorldConfig { private void hungerSettings() { hungerStarvationDamage = (float) getDouble("hunger.starvation-damage", hungerStarvationDamage); } diff --git a/patches/server/0226-Cauldron-fill-chances.patch b/patches/server/0226-Cauldron-fill-chances.patch index 85d00993b..4740e477f 100644 --- a/patches/server/0226-Cauldron-fill-chances.patch +++ b/patches/server/0226-Cauldron-fill-chances.patch @@ -18,10 +18,10 @@ index dbae4f3b56d0290c6d28b9beaaa3b459754d43e3..676184c48c3abd8e2fb9a04ae3e165dc @Override diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 121c97e38536dafcaa2dade7a6cd54459bda9be2..ffec1ba86f2253e6591a83fba7f703dad69bb471 100644 +index f6a2dae482f98eab406289497182ccc377ae9cd0..d258a942d35e5aeca80629c19982791f5ba37365 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2598,5 +2598,12 @@ public class PurpurWorldConfig { +@@ -2603,5 +2603,12 @@ public class PurpurWorldConfig { }); conduitBlocks = conduitBlockList.toArray(Block[]::new); } diff --git a/patches/server/0243-Add-option-to-disable-zombie-villagers-cure.patch b/patches/server/0243-Add-option-to-disable-zombie-villagers-cure.patch index f1430fc24..f5eb6f1b7 100644 --- a/patches/server/0243-Add-option-to-disable-zombie-villagers-cure.patch +++ b/patches/server/0243-Add-option-to-disable-zombie-villagers-cure.patch @@ -18,10 +18,10 @@ index c6ba41c2b4cc96bc97ed2e2220c0f3fa4f31dbe3..22a5d2f0de4bdd4432d1beff840f448a itemstack.shrink(1); } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index beb6a9d8ed40ab771c05ccf842065e4f4e85193e..1d0fd0c39a6083d119bf3a5a8a8fbb381bf520ee 100644 +index 28d817eaa5cbaa5a9f10896b29ad764551489763..6fb767d590a84b128312c46579e4e67eb52753d4 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2578,6 +2578,7 @@ public class PurpurWorldConfig { +@@ -2583,6 +2583,7 @@ public class PurpurWorldConfig { public boolean zombieVillagerTakeDamageFromWater = false; public int zombieVillagerCuringTimeMin = 3600; public int zombieVillagerCuringTimeMax = 6000; @@ -29,7 +29,7 @@ index beb6a9d8ed40ab771c05ccf842065e4f4e85193e..1d0fd0c39a6083d119bf3a5a8a8fbb38 private void zombieVillagerSettings() { zombieVillagerRidable = getBoolean("mobs.zombie_villager.ridable", zombieVillagerRidable); zombieVillagerRidableInWater = getBoolean("mobs.zombie_villager.ridable-in-water", zombieVillagerRidableInWater); -@@ -2594,6 +2595,7 @@ public class PurpurWorldConfig { +@@ -2599,6 +2600,7 @@ public class PurpurWorldConfig { zombieVillagerTakeDamageFromWater = getBoolean("mobs.zombie_villager.takes-damage-from-water", zombieVillagerTakeDamageFromWater); zombieVillagerCuringTimeMin = getInt("mobs.zombie_villager.curing_time.min", zombieVillagerCuringTimeMin); zombieVillagerCuringTimeMax = getInt("mobs.zombie_villager.curing_time.max", zombieVillagerCuringTimeMax);