From fe3250cfeca2a66d73cb3220908984420638b38f Mon Sep 17 00:00:00 2001 From: Encode42 Date: Tue, 27 Dec 2022 15:55:36 -0500 Subject: [PATCH] Updated Upstream (Paper) Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@c1bca9a Add exploded block state to BlockExplodeEvent (#6818) PaperMC/Paper@94373f0 Fix OfflinePlayer#getPlayerProfile returning deprecated type (#8543) PaperMC/Paper@7b52db5 Fix buffer-joins-to-world patch PaperMC/Paper@048ee58 Fix OfflinePlayer getPlayerProfile return type (#8710) PaperMC/Paper@e05ba98 Avoid to spam the transform event for hoglin->zoglin conversion (#8712) PaperMC/Paper@8e83c3c Deprecate ProjectileCollideEvent (#8678) PaperMC/Paper@c59922d Expose signed message in chat events (#8694) PaperMC/Paper@5717b84 Add config option for spider worldborder climbing (#6448) PaperMC/Paper@e6f61f7 fix ArmorStandMeta not applying false flags (#8632) PaperMC/Paper@47abd1c Add EntityPushedByEntityEvent (#7704) PaperMC/Paper@f26e9cc Tadpole lock API (#8297) PaperMC/Paper@3331501 Use team display name for quit message (#7127) PaperMC/Paper@1975fbe Respect SpigotConfig logCommands & fix stopDancing() NPE (#8715) PaperMC/Paper@78a91df Fix (again) Player#getPlayerProfile no such method error (#8722) PaperMC/Paper@52718db Updated Upstream (Bukkit/CraftBukkit) (#8714) PaperMC/Paper@2040c1e Player Flying Fall Damage API (#5357) --- build.gradle.kts | 16 ++++- gradle.properties | 2 +- .../0001-Pufferfish-Server-Changes.patch | 30 +++++----- .../server/0005-Purpur-client-support.patch | 6 +- .../0007-Component-related-conveniences.patch | 10 ++-- patches/server/0008-Ridables.patch | 32 +++++----- .../0020-Alternative-Keepalive-Handling.patch | 4 +- ...urable-void-damage-height-and-damage.patch | 6 +- .../0058-Add-canSaveToDisk-to-Entity.patch | 4 +- ...0071-Implement-bed-explosion-options.patch | 14 ++--- ...ent-respawn-anchor-explosion-options.patch | 8 +-- patches/server/0075-Entity-lifespan.patch | 4 +- ...Stop-squids-floating-on-top-of-water.patch | 4 +- ...tities-can-use-portals-configuration.patch | 6 +- ...ows-should-not-reset-despawn-counter.patch | 4 +- ...30-Movement-options-for-armor-stands.patch | 4 +- .../server/0131-Fix-stuck-in-portals.patch | 4 +- patches/server/0151-Drowning-Settings.patch | 6 +- ...179-API-for-any-mob-to-burn-daylight.patch | 6 +- ...ggle-for-end-portal-safe-teleporting.patch | 4 +- .../server/0233-Signs-allow-color-codes.patch | 4 +- ...e-to-replant-crops-and-nether-warts.patch} | 2 +- ...t-spiders-from-climbing-world-border.patch | 60 ------------------- ...ring-jeb-produces-random-color-wool.patch} | 2 +- ...urtle-eggs-random-tick-crack-chance.patch} | 2 +- ...=> 0241-Mob-head-visibility-percent.patch} | 8 +-- ...able-valid-characters-for-usernames.patch} | 2 +- ...Shears-can-have-looting-enchantment.patch} | 0 ...Stop-bees-from-dying-after-stinging.patch} | 2 +- ...ounts-in-beehives-to-Purpur-clients.patch} | 0 ...onfigurable-farmland-trample-height.patch} | 2 +- ...onfigurable-player-pickup-exp-delay.patch} | 4 +- ...ng.patch => 0248-Allow-void-trading.patch} | 2 +- ...nt-eat-blocks-in-non-ticking-chunks.patch} | 0 ...h => 0250-Configurable-phantom-size.patch} | 2 +- ...> 0251-Configurable-food-attributes.patch} | 0 ....patch => 0252-Max-joins-per-second.patch} | 14 ++--- ...figurable-minimum-demand-for-trades.patch} | 6 +- ... => 0254-Lobotomize-stuck-villagers.patch} | 6 +- ...ion-for-villager-display-trade-item.patch} | 6 +- ...> 0256-Fill-command-max-area-option.patch} | 0 ...wner-not-spawning-water-animals-cor.patch} | 2 +- ...ig-for-mob-last-hurt-by-player-time.patch} | 4 +- ...=> 0259-Anvil-repair-damage-options.patch} | 2 +- ...> 0260-Fix-legacy-colors-in-console.patch} | 0 ...-turtle-egg-trampling-with-feather-.patch} | 2 +- ...d-toggle-for-enchant-level-clamping.patch} | 0 ...kip-junit-tests-for-purpur-commands.patch} | 0 ...rable-search-radius-for-villagers-t.patch} | 6 +- ...ge.patch => 0265-Stonecutter-damage.patch} | 6 +- ...le-damage-settings-for-magma-blocks.patch} | 2 +- ...267-Add-config-for-snow-on-blue-ice.patch} | 2 +- ... => 0268-Skeletons-eat-wither-roses.patch} | 2 +- ...69-Enchantment-Table-Persists-Lapis.patch} | 2 +- ...ofiler.patch => 0270-Spark-Profiler.patch} | 2 +- ...-disable-kick-for-out-of-order-chat.patch} | 4 +- ...for-sculk-shrieker-can_summon-state.patch} | 2 +- ...=> 0273-Config-to-not-let-coral-die.patch} | 2 +- ...ch => 0274-Add-local-difficulty-api.patch} | 0 ...275-Add-toggle-for-RNG-manipulation.patch} | 4 +- ... 0276-Send-client-custom-name-of-BE.patch} | 0 ...Fix-exact-choice-recipe-book-clicks.patch} | 0 ...=> 0278-Allow-custom-ChatDecorators.patch} | 0 ...otd.patch => 0279-Cache-server-motd.patch} | 0 ...imings.patch => 0280-Remove-Timings.patch} | 12 ++-- ...atch => 0281-Remove-Mojang-Profiler.patch} | 24 ++++---- ...r-output-for-invalid-movement-kicks.patch} | 2 +- ...d-Bee-API.patch => 0283-Add-Bee-API.patch} | 0 ...-API.patch => 0284-Debug-Marker-API.patch} | 2 +- ...=> 0285-add-Player-showCreditScreen.patch} | 0 ...g-option-to-ignore-creative-players.patch} | 2 +- ...-Make-pufferfish-config-relocatable.patch} | 4 +- ...88-Add-skeleton-bow-accuracy-option.patch} | 2 +- ...atch => 0289-Allay-respect-item-NBT.patch} | 2 +- ....patch => 0290-Add-death-screen-API.patch} | 0 ...1-Implement-ram-and-rambar-commands.patch} | 0 ...292-Add-item-packet-serialize-event.patch} | 0 ...-123848.patch => 0293-Fix-MC-123848.patch} | 0 ...quid-colors-for-rainglow-fabric-mod.patch} | 2 +- ...n-to-fix-MC-3304-projectile-looting.patch} | 4 +- ...Configurable-block-blast-resistance.patch} | 0 ...gurable-block-fall-damage-modifiers.patch} | 4 +- ...uage-API.patch => 0298-Language-API.patch} | 2 +- ... 0299-Milk-Keeps-Beneficial-Effects.patch} | 4 +- ...s-not-looking-up-and-down-when-stra.patch} | 0 ...d-log-suppression-for-LibraryLoader.patch} | 0 ...ransparent-Blocks-In-Enchanting-Box.patch} | 0 ...ow-creeper-to-encircle-target-when-.patch} | 2 +- ...API.patch => 0304-Fire-Immunity-API.patch} | 8 +-- ...eport-to-spawn-on-nether-ceiling-da.patch} | 4 +- ...t.patch => 0306-Added-got-ram-event.patch} | 0 ... 0307-Log-skipped-entity-s-position.patch} | 0 ....patch => 0308-End-Crystal-Cramming.patch} | 2 +- ...eacon-effects-when-covered-by-tinte.patch} | 2 +- settings.gradle.kts | 23 ++++++- 95 files changed, 211 insertions(+), 238 deletions(-) rename patches/server/{0239-Ability-for-hoe-to-replant-crops-and-nether-warts.patch => 0238-Ability-for-hoe-to-replant-crops-and-nether-warts.patch} (98%) delete mode 100644 patches/server/0238-Option-to-prevent-spiders-from-climbing-world-border.patch rename patches/server/{0240-Shearing-jeb-produces-random-color-wool.patch => 0239-Shearing-jeb-produces-random-color-wool.patch} (96%) rename patches/server/{0241-Turtle-eggs-random-tick-crack-chance.patch => 0240-Turtle-eggs-random-tick-crack-chance.patch} (96%) rename patches/server/{0242-Mob-head-visibility-percent.patch => 0241-Mob-head-visibility-percent.patch} (95%) rename patches/server/{0243-Configurable-valid-characters-for-usernames.patch => 0242-Configurable-valid-characters-for-usernames.patch} (95%) rename patches/server/{0244-Shears-can-have-looting-enchantment.patch => 0243-Shears-can-have-looting-enchantment.patch} (100%) rename patches/server/{0245-Stop-bees-from-dying-after-stinging.patch => 0244-Stop-bees-from-dying-after-stinging.patch} (95%) rename patches/server/{0246-Give-bee-counts-in-beehives-to-Purpur-clients.patch => 0245-Give-bee-counts-in-beehives-to-Purpur-clients.patch} (100%) rename patches/server/{0247-Configurable-farmland-trample-height.patch => 0246-Configurable-farmland-trample-height.patch} (97%) rename patches/server/{0248-Configurable-player-pickup-exp-delay.patch => 0247-Configurable-player-pickup-exp-delay.patch} (95%) rename patches/server/{0249-Allow-void-trading.patch => 0248-Allow-void-trading.patch} (96%) rename patches/server/{0250-Dont-eat-blocks-in-non-ticking-chunks.patch => 0249-Dont-eat-blocks-in-non-ticking-chunks.patch} (100%) rename patches/server/{0251-Configurable-phantom-size.patch => 0250-Configurable-phantom-size.patch} (96%) rename patches/server/{0252-Configurable-food-attributes.patch => 0251-Configurable-food-attributes.patch} (100%) rename patches/server/{0253-Max-joins-per-second.patch => 0252-Max-joins-per-second.patch} (80%) rename patches/server/{0254-Configurable-minimum-demand-for-trades.patch => 0253-Configurable-minimum-demand-for-trades.patch} (93%) rename patches/server/{0255-Lobotomize-stuck-villagers.patch => 0254-Lobotomize-stuck-villagers.patch} (97%) rename patches/server/{0256-Option-for-villager-display-trade-item.patch => 0255-Option-for-villager-display-trade-item.patch} (91%) rename patches/server/{0257-Fill-command-max-area-option.patch => 0256-Fill-command-max-area-option.patch} (100%) rename patches/server/{0258-MC-238526-Fix-spawner-not-spawning-water-animals-cor.patch => 0257-MC-238526-Fix-spawner-not-spawning-water-animals-cor.patch} (95%) rename patches/server/{0259-Config-for-mob-last-hurt-by-player-time.patch => 0258-Config-for-mob-last-hurt-by-player-time.patch} (95%) rename patches/server/{0260-Anvil-repair-damage-options.patch => 0259-Anvil-repair-damage-options.patch} (98%) rename patches/server/{0261-Fix-legacy-colors-in-console.patch => 0260-Fix-legacy-colors-in-console.patch} (100%) rename patches/server/{0262-Option-to-disable-turtle-egg-trampling-with-feather-.patch => 0261-Option-to-disable-turtle-egg-trampling-with-feather-.patch} (96%) rename patches/server/{0263-Add-toggle-for-enchant-level-clamping.patch => 0262-Add-toggle-for-enchant-level-clamping.patch} (100%) rename patches/server/{0264-Skip-junit-tests-for-purpur-commands.patch => 0263-Skip-junit-tests-for-purpur-commands.patch} (100%) rename patches/server/{0265-Implement-configurable-search-radius-for-villagers-t.patch => 0264-Implement-configurable-search-radius-for-villagers-t.patch} (92%) rename patches/server/{0266-Stonecutter-damage.patch => 0265-Stonecutter-damage.patch} (95%) rename patches/server/{0267-Configurable-damage-settings-for-magma-blocks.patch => 0266-Configurable-damage-settings-for-magma-blocks.patch} (96%) rename patches/server/{0268-Add-config-for-snow-on-blue-ice.patch => 0267-Add-config-for-snow-on-blue-ice.patch} (95%) rename patches/server/{0269-Skeletons-eat-wither-roses.patch => 0268-Skeletons-eat-wither-roses.patch} (98%) rename patches/server/{0270-Enchantment-Table-Persists-Lapis.patch => 0269-Enchantment-Table-Persists-Lapis.patch} (98%) rename patches/server/{0271-Spark-Profiler.patch => 0270-Spark-Profiler.patch} (96%) rename patches/server/{0272-Option-to-disable-kick-for-out-of-order-chat.patch => 0271-Option-to-disable-kick-for-out-of-order-chat.patch} (92%) rename patches/server/{0273-Config-for-sculk-shrieker-can_summon-state.patch => 0272-Config-for-sculk-shrieker-can_summon-state.patch} (95%) rename patches/server/{0274-Config-to-not-let-coral-die.patch => 0273-Config-to-not-let-coral-die.patch} (96%) rename patches/server/{0275-Add-local-difficulty-api.patch => 0274-Add-local-difficulty-api.patch} (100%) rename patches/server/{0276-Add-toggle-for-RNG-manipulation.patch => 0275-Add-toggle-for-RNG-manipulation.patch} (93%) rename patches/server/{0277-Send-client-custom-name-of-BE.patch => 0276-Send-client-custom-name-of-BE.patch} (100%) rename patches/server/{0278-PaperPR-Fix-exact-choice-recipe-book-clicks.patch => 0277-PaperPR-Fix-exact-choice-recipe-book-clicks.patch} (100%) rename patches/server/{0279-Allow-custom-ChatDecorators.patch => 0278-Allow-custom-ChatDecorators.patch} (100%) rename patches/server/{0280-Cache-server-motd.patch => 0279-Cache-server-motd.patch} (100%) rename patches/server/{0281-Remove-Timings.patch => 0280-Remove-Timings.patch} (99%) rename patches/server/{0282-Remove-Mojang-Profiler.patch => 0281-Remove-Mojang-Profiler.patch} (99%) rename patches/server/{0283-Add-more-logger-output-for-invalid-movement-kicks.patch => 0282-Add-more-logger-output-for-invalid-movement-kicks.patch} (96%) rename patches/server/{0284-Add-Bee-API.patch => 0283-Add-Bee-API.patch} (100%) rename patches/server/{0285-Debug-Marker-API.patch => 0284-Debug-Marker-API.patch} (98%) rename patches/server/{0286-add-Player-showCreditScreen.patch => 0285-add-Player-showCreditScreen.patch} (100%) rename patches/server/{0287-mob-spawning-option-to-ignore-creative-players.patch => 0286-mob-spawning-option-to-ignore-creative-players.patch} (97%) rename patches/server/{0288-Make-pufferfish-config-relocatable.patch => 0287-Make-pufferfish-config-relocatable.patch} (93%) rename patches/server/{0289-Add-skeleton-bow-accuracy-option.patch => 0288-Add-skeleton-bow-accuracy-option.patch} (97%) rename patches/server/{0290-Allay-respect-item-NBT.patch => 0289-Allay-respect-item-NBT.patch} (96%) rename patches/server/{0291-Add-death-screen-API.patch => 0290-Add-death-screen-API.patch} (100%) rename patches/server/{0292-Implement-ram-and-rambar-commands.patch => 0291-Implement-ram-and-rambar-commands.patch} (100%) rename patches/server/{0293-Add-item-packet-serialize-event.patch => 0292-Add-item-packet-serialize-event.patch} (100%) rename patches/server/{0294-Fix-MC-123848.patch => 0293-Fix-MC-123848.patch} (100%) rename patches/server/{0295-Implement-squid-colors-for-rainglow-fabric-mod.patch => 0294-Implement-squid-colors-for-rainglow-fabric-mod.patch} (98%) rename patches/server/{0296-Add-an-option-to-fix-MC-3304-projectile-looting.patch => 0295-Add-an-option-to-fix-MC-3304-projectile-looting.patch} (97%) rename patches/server/{0297-Configurable-block-blast-resistance.patch => 0296-Configurable-block-blast-resistance.patch} (100%) rename patches/server/{0298-Configurable-block-fall-damage-modifiers.patch => 0297-Configurable-block-fall-damage-modifiers.patch} (97%) rename patches/server/{0299-Language-API.patch => 0298-Language-API.patch} (94%) rename patches/server/{0300-Milk-Keeps-Beneficial-Effects.patch => 0299-Milk-Keeps-Beneficial-Effects.patch} (95%) rename patches/server/{0301-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch => 0300-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch} (100%) rename patches/server/{0302-Add-log-suppression-for-LibraryLoader.patch => 0301-Add-log-suppression-for-LibraryLoader.patch} (100%) rename patches/server/{0303-Allow-Transparent-Blocks-In-Enchanting-Box.patch => 0302-Allow-Transparent-Blocks-In-Enchanting-Box.patch} (100%) rename patches/server/{0304-Add-option-to-allow-creeper-to-encircle-target-when-.patch => 0303-Add-option-to-allow-creeper-to-encircle-target-when-.patch} (96%) rename patches/server/{0305-Fire-Immunity-API.patch => 0304-Fire-Immunity-API.patch} (93%) rename patches/server/{0306-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch => 0305-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch} (94%) rename patches/server/{0307-Added-got-ram-event.patch => 0306-Added-got-ram-event.patch} (100%) rename patches/server/{0308-Log-skipped-entity-s-position.patch => 0307-Log-skipped-entity-s-position.patch} (100%) rename patches/server/{0309-End-Crystal-Cramming.patch => 0308-End-Crystal-Cramming.patch} (96%) rename patches/server/{0310-Option-to-allow-beacon-effects-when-covered-by-tinte.patch => 0309-Option-to-allow-beacon-effects-when-covered-by-tinte.patch} (97%) diff --git a/build.gradle.kts b/build.gradle.kts index c93116b10..2a46288e2 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -5,8 +5,6 @@ plugins { id("io.papermc.paperweight.patcher") version "1.4.0" } -val paperMavenPublicUrl = "https://repo.papermc.io/repository/maven-public/" - allprojects { apply(plugin = "java") apply(plugin = "maven-publish") @@ -18,6 +16,8 @@ allprojects { } } +val paperMavenPublicUrl = "https://repo.papermc.io/repository/maven-public/" + subprojects { tasks.withType().configureEach { options.encoding = Charsets.UTF_8.name() @@ -99,3 +99,15 @@ publishing { } } } + +tasks.register("printMinecraftVersion") { + doLast { + println(providers.gradleProperty("mcVersion").get().trim()) + } +} + +tasks.register("printPaperVersion") { + doLast { + println(project.version) + } +} diff --git a/gradle.properties b/gradle.properties index 2601383f9..63eaab5f0 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,7 +1,7 @@ group = org.purpurmc.purpur version = 1.19.3-R0.1-SNAPSHOT -paperCommit = d5f1ffc2e6928a6728f91ab2ad2e020b105eab7f +paperCommit = 52718dba10c028a57a7a00993ed490a503ca9ecd org.gradle.caching = true org.gradle.parallel = true diff --git a/patches/server/0001-Pufferfish-Server-Changes.patch b/patches/server/0001-Pufferfish-Server-Changes.patch index 544ba89b3..8df843d09 100644 --- a/patches/server/0001-Pufferfish-Server-Changes.patch +++ b/patches/server/0001-Pufferfish-Server-Changes.patch @@ -1447,7 +1447,7 @@ index 0000000000000000000000000000000000000000..facd55463d44cb7e3d2ca6892982f549 + } +} diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java -index 63ec2ebb71aa0e0dbb64bbce7cd3c9494e9ce2e7..d03551e81e3ef37935cb1d963aba3df316f48ef5 100644 +index 8d442c5a498ecf288a0cc0c54889c6e2fda849ce..01bdf134fc21220ab7ecca51f2dcd51c0b466bba 100644 --- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java +++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java @@ -7,6 +7,7 @@ import net.kyori.adventure.text.Component; @@ -1787,7 +1787,7 @@ index 54c2b7fba83d6f06dba95b1bb5b487a02048d6e6..53198ebfa30273c5ddc1bb4324f5174f this.getRandomBlockPosition(j, 0, k, 15, blockposition); int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 08cb3db28f13c352a162009deeb28ee637e98d2a..34540b4ebad2ec430fa12e1e5d9d6e4a79df91de 100644 +index 50d8d16b1856c0c875ccabbcfc240379a7669559..c89e430cfddb431ee1d20e59f8bd60e3a3a952b9 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1204,6 +1204,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -1798,7 +1798,7 @@ index 08cb3db28f13c352a162009deeb28ee637e98d2a..34540b4ebad2ec430fa12e1e5d9d6e4a // Paper start if (!this.cserver.isPrimaryThread()) { List pageList = packet.getPages(); -@@ -2350,6 +2351,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2352,6 +2353,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic } private boolean updateChatOrder(Instant timestamp) { @@ -1919,7 +1919,7 @@ index 540bc9500c35c0db719b00aa26f6fb3a1b08ed9f..806cb760822a99316b08ad95ff8922df int LARGE_MAX_STACK_SIZE = 64; diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index be54a70b47433c2abaeb8632ffe55d0762f619d6..374b46c344ca868cab7c47be69cb005eb90319e8 100644 +index 7555b04dcf274bb624b89f2eb9ff80da0056de4e..6a9c0f0b4b749c5907a274d6a83254284d8763bb 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -291,7 +291,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -1931,7 +1931,7 @@ index be54a70b47433c2abaeb8632ffe55d0762f619d6..374b46c344ca868cab7c47be69cb005e private ChunkPos chunkPosition; private Vec3 deltaMovement; private float yRot; -@@ -413,6 +413,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -414,6 +414,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return this.originWorld; } // Paper end @@ -1944,7 +1944,7 @@ index be54a70b47433c2abaeb8632ffe55d0762f619d6..374b46c344ca868cab7c47be69cb005e public float getBukkitYaw() { return this.yRot; } -@@ -487,17 +493,36 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -488,17 +494,36 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.isLegacyTrackingEntity = isLegacyTrackingEntity; } @@ -1982,7 +1982,7 @@ index be54a70b47433c2abaeb8632ffe55d0762f619d6..374b46c344ca868cab7c47be69cb005e for (Entity passenger : passengers) { org.spigotmc.TrackingRange.TrackingRangeType passengerType = passenger.trackingRangeType; int passengerRange = chunkMap.getEntityTrackerRange(passengerType.ordinal()); -@@ -506,6 +531,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -507,6 +532,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { range = passengerRange; } } @@ -1992,7 +1992,7 @@ index be54a70b47433c2abaeb8632ffe55d0762f619d6..374b46c344ca868cab7c47be69cb005e return chunkMap.playerEntityTrackerTrackMaps[type.ordinal()].getObjectsInRange(MCUtil.getCoordinateKey(this)); } -@@ -787,6 +815,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -788,6 +816,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { // CraftBukkit end public void baseTick() { @@ -2005,7 +2005,7 @@ index be54a70b47433c2abaeb8632ffe55d0762f619d6..374b46c344ca868cab7c47be69cb005e this.level.getProfiler().push("entityBaseTick"); if (firstTick && this instanceof net.minecraft.world.entity.NeutralMob neutralMob) neutralMob.tickInitialPersistentAnger(level); // Paper - Update last hurt when ticking this.feetBlockState = null; -@@ -4082,16 +4116,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4092,16 +4126,18 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean updateFluidHeightAndDoFluidPushing(TagKey tag, double speed) { @@ -2031,7 +2031,7 @@ index be54a70b47433c2abaeb8632ffe55d0762f619d6..374b46c344ca868cab7c47be69cb005e double d1 = 0.0D; boolean flag = this.isPushedByFluid(); boolean flag1 = false; -@@ -4099,14 +4135,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4109,14 +4145,61 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { int k1 = 0; BlockPos.MutableBlockPos blockposition_mutableblockposition = new BlockPos.MutableBlockPos(); @@ -2099,7 +2099,7 @@ index be54a70b47433c2abaeb8632ffe55d0762f619d6..374b46c344ca868cab7c47be69cb005e if (d2 >= axisalignedbb.minY) { flag1 = true; -@@ -4128,9 +4211,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4138,9 +4221,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { // CraftBukkit end } } @@ -2126,7 +2126,7 @@ index e5cd4b7609243669c9d84ff8a4988c209e6101aa..4f3708f5f5dcb6af8225bda1cc9204a6 private String descriptionId; @Nullable diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 864ab97b7a6c62c376ca38dbbc65bc9406dfd62b..cde8e5a5c2bd3e0bb7359d2638ebc9b5ca7a531d 100644 +index 529ea9094c0c7b6263c13b3b7a2d1e652f7bc29e..120c0804010fd5b38a5f806ca580962ff8b47339 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -143,7 +143,6 @@ import org.bukkit.event.entity.EntityTeleportEvent; @@ -2431,10 +2431,10 @@ index f2e84e832ad95df26fe3b9ba439ce38fc59b3585..0a051c7e7f5a172a9b906de04ef2a041 this.level.getProfiler().pop(); this.level.getProfiler().push("frogActivityUpdate"); diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java -index e8574bd4b412c1db82aaec9dced47b63de9dbf28..35594c5c107e83e5e025233036ae6d060f77c408 100644 +index 9058f9f2e561cda9f475f33218bf7a78297de4bc..e591b0a09f5a8475b3ec9cd28bd5d5b69809ed73 100644 --- a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java +++ b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java -@@ -76,9 +76,11 @@ public class Tadpole extends AbstractFish { +@@ -77,9 +77,11 @@ public class Tadpole extends AbstractFish { return SoundEvents.TADPOLE_FLOP; } @@ -2508,7 +2508,7 @@ index f4002ac7cba7d5e41b4f11b98212c625f6a92a65..ff0e09a7387e7dc9ca136d3e48e640b9 boolean flag1 = iblockdata.getFluidState().is(FluidTags.WATER); diff --git a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java -index 45741410a13cffe3419e34b5607b048bbcf1c3ff..5d487f1613b1fc5807283c20e5cc23a432d08f42 100644 +index 5d3b3cb3a882eb5d716f678095a65b28d0967476..daa2224b021c966751eb39f269ffbfe6e7f3d426 100644 --- a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java +++ b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java @@ -126,9 +126,11 @@ public class Hoglin extends Animal implements Enemy, HoglinBase { diff --git a/patches/server/0005-Purpur-client-support.patch b/patches/server/0005-Purpur-client-support.patch index c3baa8ad5..b7c0f0ac8 100644 --- a/patches/server/0005-Purpur-client-support.patch +++ b/patches/server/0005-Purpur-client-support.patch @@ -17,10 +17,10 @@ index 7d6d3c8556033d289fdadc489e73fba478fce41a..c2ff5d7e4a9f7477b7b207e9d3fb7241 public ServerPlayer(MinecraftServer server, ServerLevel world, GameProfile profile) { super(world, world.getSharedSpawnPos(), world.getSharedSpawnAngle(), profile); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 34540b4ebad2ec430fa12e1e5d9d6e4a79df91de..85b0722f0be24247b33c755959f4e8a40438b7ef 100644 +index c89e430cfddb431ee1d20e59f8bd60e3a3a952b9..f79ca89b430636bf5c0e140499ac20f743f22f33 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3503,6 +3503,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3505,6 +3505,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister"); private static final ResourceLocation MINECRAFT_BRAND = new ResourceLocation("brand"); // Paper - Brand support @@ -28,7 +28,7 @@ index 34540b4ebad2ec430fa12e1e5d9d6e4a79df91de..85b0722f0be24247b33c755959f4e8a4 @Override public void handleCustomPayload(ServerboundCustomPayloadPacket packet) { -@@ -3527,6 +3528,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3529,6 +3530,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex); this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause } diff --git a/patches/server/0007-Component-related-conveniences.patch b/patches/server/0007-Component-related-conveniences.patch index 73ecf5e37..a28eb5160 100644 --- a/patches/server/0007-Component-related-conveniences.patch +++ b/patches/server/0007-Component-related-conveniences.patch @@ -36,7 +36,7 @@ index c2ff5d7e4a9f7477b7b207e9d3fb724137a35f11..f3024b03ff7709893d6e39f54504597b public void displayClientMessage(Component message, boolean overlay) { this.sendSystemMessage(message, overlay); diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index c0b599b1835d28ddda3690b29f29bd8c6f03e215..2e434fa0ac143c5751c8f24218ff014cdc119ef5 100644 +index f381bf9064be548a4a603e0042886d8a5e70ba5b..95b1ddc0559f338e99dcacd13ee90587e9e21489 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1007,6 +1007,20 @@ public abstract class PlayerList { @@ -61,10 +61,10 @@ index c0b599b1835d28ddda3690b29f29bd8c6f03e215..2e434fa0ac143c5751c8f24218ff014c Iterator iterator = this.players.iterator(); diff --git a/src/main/java/net/minecraft/world/damagesource/DamageSource.java b/src/main/java/net/minecraft/world/damagesource/DamageSource.java -index 8795c94e6b6474addddbb0b337a962e8fac46b2b..f2ef4d93e070167d70f597e8893bf29b53433a28 100644 +index 2848cb7c76e94d8349f042dc92daf01322a6ce5a..0edf0e24b0b311269b447a34f3aad485556bce10 100644 --- a/src/main/java/net/minecraft/world/damagesource/DamageSource.java +++ b/src/main/java/net/minecraft/world/damagesource/DamageSource.java -@@ -256,6 +256,15 @@ public class DamageSource { +@@ -265,6 +265,15 @@ public class DamageSource { return entityliving1 != null ? Component.translatable(s1, entity.getDisplayName(), entityliving1.getDisplayName()) : Component.translatable(s, entity.getDisplayName()); } @@ -81,10 +81,10 @@ index 8795c94e6b6474addddbb0b337a962e8fac46b2b..f2ef4d93e070167d70f597e8893bf29b return this.isFireSource; } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 374b46c344ca868cab7c47be69cb005eb90319e8..37f1e4aa89da81fcae2d38bb741f3386950bdf51 100644 +index 6a9c0f0b4b749c5907a274d6a83254284d8763bb..3961f66a23508089df8c4ee7455e170cb870e9d0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3853,6 +3853,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3863,6 +3863,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return SlotAccess.NULL; } diff --git a/patches/server/0008-Ridables.patch b/patches/server/0008-Ridables.patch index 615403d1e..916922c0a 100644 --- a/patches/server/0008-Ridables.patch +++ b/patches/server/0008-Ridables.patch @@ -66,7 +66,7 @@ index f3024b03ff7709893d6e39f54504597bb59f5315..f6360f2973c03e0105361f9e001360ec public void doTick() { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 85b0722f0be24247b33c755959f4e8a40438b7ef..d0a0c874984f628a9fe43696bbbe3ec6e981c2dd 100644 +index f79ca89b430636bf5c0e140499ac20f743f22f33..ebc2707fa3eeec4c80d7f186fce39ddcbd8eb414 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -716,7 +716,6 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -77,7 +77,7 @@ index 85b0722f0be24247b33c755959f4e8a40438b7ef..d0a0c874984f628a9fe43696bbbe3ec6 // If the packet contains look information then we update the To location with the correct Yaw & Pitch. to.setYaw(packet.getYRot()); to.setPitch(packet.getXRot()); -@@ -2770,6 +2769,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2772,6 +2771,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event); @@ -87,7 +87,7 @@ index 85b0722f0be24247b33c755959f4e8a40438b7ef..d0a0c874984f628a9fe43696bbbe3ec6 if ((entity instanceof Bucketable && entity instanceof LivingEntity && origItem != null && origItem.asItem() == Items.WATER_BUCKET) && (event.isCancelled() || ServerGamePacketListenerImpl.this.player.getInventory().getSelected() == null || ServerGamePacketListenerImpl.this.player.getInventory().getSelected().getItem() != origItem)) { entity.getEntityData().resendPossiblyDesyncedEntity(player); // Paper - The entire mob gets deleted, so resend it. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 37f1e4aa89da81fcae2d38bb741f3386950bdf51..76ad4045dc84b42da4d808a912125d619b594739 100644 +index 3961f66a23508089df8c4ee7455e170cb870e9d0..124af1198b6d52d64d7de00ff80d6a4365f940f0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -361,7 +361,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -99,7 +99,7 @@ index 37f1e4aa89da81fcae2d38bb741f3386950bdf51..76ad4045dc84b42da4d808a912125d61 private float eyeHeight; public boolean isInPowderSnow; public boolean wasInPowderSnow; -@@ -2801,6 +2801,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2811,6 +2811,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.passengers = ImmutableList.copyOf(list); } @@ -112,7 +112,7 @@ index 37f1e4aa89da81fcae2d38bb741f3386950bdf51..76ad4045dc84b42da4d808a912125d61 } return true; // CraftBukkit } -@@ -2841,6 +2847,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2851,6 +2857,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return false; } // Spigot end @@ -127,7 +127,7 @@ index 37f1e4aa89da81fcae2d38bb741f3386950bdf51..76ad4045dc84b42da4d808a912125d61 if (this.passengers.size() == 1 && this.passengers.get(0) == entity) { this.passengers = ImmutableList.of(); } else { -@@ -4641,4 +4655,45 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4651,4 +4665,45 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return ((net.minecraft.server.level.ServerChunkCache) level.getChunkSource()).isPositionTicking(this); } // Paper end @@ -202,7 +202,7 @@ index c1e9b40a4a0f9cdc650caa88b5ea132e06ee2496..882ab40c8cdea8c214cb8344b3ccecdd protected ParticleOptions getInkParticle() { return ParticleTypes.GLOW_SQUID_INK; diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index cde8e5a5c2bd3e0bb7359d2638ebc9b5ca7a531d..f5107607fbc19dd0348f2bf8df4fa1748646686e 100644 +index 120c0804010fd5b38a5f806ca580962ff8b47339..518c4cadf549d045d17f7c0eab548bde221a5442 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -221,9 +221,9 @@ public abstract class LivingEntity extends Entity { @@ -2405,13 +2405,13 @@ index 0a051c7e7f5a172a9b906de04ef2a0419eda26eb..844004cefd85fdc3fb1628449e8452bd super(entity); } diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java -index 35594c5c107e83e5e025233036ae6d060f77c408..7b7daf5232a446b8774bbf53f2f09d9811d1dbbc 100644 +index e591b0a09f5a8475b3ec9cd28bd5d5b69809ed73..35aa223731014628e4b1654a8b72a2923a483a03 100644 --- a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java +++ b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java -@@ -44,13 +44,50 @@ public class Tadpole extends AbstractFish { - public int age; +@@ -45,13 +45,50 @@ public class Tadpole extends AbstractFish { protected static final ImmutableList>> SENSOR_TYPES = ImmutableList.of(SensorType.NEAREST_LIVING_ENTITIES, SensorType.NEAREST_PLAYERS, SensorType.HURT_BY, SensorType.FROG_TEMPTATIONS); protected static final ImmutableList> MEMORY_TYPES = ImmutableList.of(MemoryModuleType.LOOK_TARGET, MemoryModuleType.NEAREST_VISIBLE_LIVING_ENTITIES, MemoryModuleType.WALK_TARGET, MemoryModuleType.CANT_REACH_WALK_TARGET_SINCE, MemoryModuleType.PATH, MemoryModuleType.NEAREST_VISIBLE_ADULT, MemoryModuleType.TEMPTATION_COOLDOWN_TICKS, MemoryModuleType.IS_TEMPTED, MemoryModuleType.TEMPTING_PLAYER, MemoryModuleType.BREED_TARGET, MemoryModuleType.IS_PANICKING); + public boolean ageLocked; // Paper + private org.purpurmc.purpur.controller.WaterMoveControllerWASD purpurController; // Purpur public Tadpole(EntityType type, Level world) { @@ -2775,7 +2775,7 @@ index de84a00ce2d2b7c654b08164489624e124568346..998c72513df1dcd2b1316b320b3d5e7c protected void defineSynchedData() { } diff --git a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java -index 5066688e26cb2d34b3eabb2cb56f9a4c712dfea7..de5bc81e8a80a3e81781e2edfdd1f8bd5fc76181 100644 +index c7caaebfb4b9f28cbe700d88fdcf232a500e8ca7..7506ba57b1e5488d50ee577ed6147e7f05e0faa3 100644 --- a/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java +++ b/src/main/java/net/minecraft/world/entity/boss/enderdragon/EnderDragon.java @@ -103,6 +103,7 @@ public class EnderDragon extends Mob implements Enemy { @@ -4090,7 +4090,7 @@ index cec545c3baa6599d47b9cf1a4b97de8771062a22..a12352cb50edd8bd7a8f514e714e352b this.targetSelector.addGoal(2, new NearestAttackableTargetGoal<>(this, Player.class, true)); this.targetSelector.addGoal(3, new NearestAttackableTargetGoal<>(this, AbstractVillager.class, false)); diff --git a/src/main/java/net/minecraft/world/entity/monster/Ravager.java b/src/main/java/net/minecraft/world/entity/monster/Ravager.java -index 23cd2e1faf0d7b59885e194fc0f0adc558e4921b..c08c95198fb472ac2eb1e0cbf266f2e47c6bd437 100644 +index 6a0b4f86e5157494a917cf5efecb730081bae628..e497d0ff3cafd16d3aed9a858a506d1c6f4e140a 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Ravager.java +++ b/src/main/java/net/minecraft/world/entity/monster/Ravager.java @@ -69,14 +69,39 @@ public class Ravager extends Raider { @@ -4384,7 +4384,7 @@ index 87c2e50c6f817d1a77e0cfd64366765b265f9ba0..3de34f745609cfcb8039c72b04329662 } diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java -index 001f6cf2ea3d664864f444a92dd71d069b9a38f5..74d70a2d63f527511fbf369f85abde864524c3c0 100644 +index d786b8b8c9d478504f74e65c3bc7ed3e9884d003..e95e5677df0affdf4ce87365263c40e0b9d396c1 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Spider.java +++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java @@ -51,14 +51,33 @@ public class Spider extends Monster { @@ -4840,7 +4840,7 @@ index b75945807b425609394c343da56c316a769f0a29..838420f5d61eaf5e4abb52751b010d57 public void setPersistentAngerTarget(@Nullable UUID angryAt) { this.persistentAngerTarget = angryAt; diff --git a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java -index 5d487f1613b1fc5807283c20e5cc23a432d08f42..f2afd5f8ad916f0cf4674c6b4f973715999c6641 100644 +index daa2224b021c966751eb39f269ffbfe6e7f3d426..3330580c06d4e7645be12deffb63936799dffe44 100644 --- a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java +++ b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java @@ -67,6 +67,23 @@ public class Hoglin extends Animal implements Enemy, HoglinBase { @@ -5111,7 +5111,7 @@ index e92e6fb4cf97f4d5406b5b5d5786bfa5fb55f536..0e7d5540763d56020cd59d9aef09f7a7 this.setTradingPlayer(player); this.openTradingScreen(player, this.getDisplayName(), 1); diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 2e6557a19523d18aecff709de30cb4466b46a9fa..0e96ae9381abbf65182a04df28be94709ef66bb3 100644 +index 0dcae10fd05a8fe963fdedda8199aa09dc717c9a..c0b27ff0381938e7348bc9e414215d6b3f5c77f1 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -193,6 +193,19 @@ public abstract class Player extends LivingEntity { @@ -5184,7 +5184,7 @@ index 78f53ee557276de85f0431ebcb146445b1f4fb92..ba898640a8f693e8bae43281b170d350 + // Purpur end } diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index dd063e8b0df7505a96cd25dc5c797c0c04dfdfd0..7c2922c35f85be346a359d691a0c77c7c3a24726 100644 +index 6a52ae70b5f7fd9953b6b2605cae722f606e7fec..5e346ad16aaf958c396b4212fcf07f0ea873d323 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -545,6 +545,15 @@ public class CraftEventFactory { diff --git a/patches/server/0020-Alternative-Keepalive-Handling.patch b/patches/server/0020-Alternative-Keepalive-Handling.patch index 153ef5a43..d92cbc529 100644 --- a/patches/server/0020-Alternative-Keepalive-Handling.patch +++ b/patches/server/0020-Alternative-Keepalive-Handling.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Alternative Keepalive Handling diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 9f86bff926434b58143522d624ea7d6e044e430d..f563cffabdb9f0dd69e50680fc3e7aae01e8123d 100644 +index e6d4bd13bb37329656e2d8931da186d384d3652f..13db932d0f8fec58a7f41c0860a6c8950a3723cf 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -259,6 +259,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -38,7 +38,7 @@ index 9f86bff926434b58143522d624ea7d6e044e430d..f563cffabdb9f0dd69e50680fc3e7aae if (this.keepAlivePending) { if (!this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getScoreboardName()); // more info -@@ -3487,6 +3503,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3489,6 +3505,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @Override public void handleKeepAlive(ServerboundKeepAlivePacket packet) { diff --git a/patches/server/0057-Configurable-void-damage-height-and-damage.patch b/patches/server/0057-Configurable-void-damage-height-and-damage.patch index 3d4013701..8fd7c039b 100644 --- a/patches/server/0057-Configurable-void-damage-height-and-damage.patch +++ b/patches/server/0057-Configurable-void-damage-height-and-damage.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable void damage height and damage diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c6db89b5c94e31bffcca6625e37497bab779fdb8..7d44a9e4a4c36a328bca99d9c7fcbe71d914dd5b 100644 +index 5cd75cebdfbcf4ba2935a9c353b6a5f20fabec29..0b1385062e9b200052e3e33f0572fe29caab746c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -891,7 +891,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -892,7 +892,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public void checkOutOfWorld() { // Paper start - Configurable nether ceiling damage @@ -18,7 +18,7 @@ index c6db89b5c94e31bffcca6625e37497bab779fdb8..7d44a9e4a4c36a328bca99d9c7fcbe71 && (!(this instanceof Player player) || !player.getAbilities().invulnerable))) { // Paper end diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index e6b1ae8c1c05e01342041245c84a816eaa93706e..406f067011dd46696564214d2afd76460ee22384 100644 +index a3ab929353a710ded893ed53c6dbc597c664fcf5..a8ae035662a637b4c8119befdfd02ba5f6cd72fa 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -2522,7 +2522,7 @@ public abstract class LivingEntity extends Entity { diff --git a/patches/server/0058-Add-canSaveToDisk-to-Entity.patch b/patches/server/0058-Add-canSaveToDisk-to-Entity.patch index c46ce1919..62cc01acf 100644 --- a/patches/server/0058-Add-canSaveToDisk-to-Entity.patch +++ b/patches/server/0058-Add-canSaveToDisk-to-Entity.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add canSaveToDisk to Entity diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 89f6ecccf68df4522bff94c6da2a60fc462d9e14..e54540a58463a0dcd958ae65ee0948c76af9e065 100644 +index 0b1385062e9b200052e3e33f0572fe29caab746c..7639f3872e3c98548973cb08edad17b1af1add1f 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4695,5 +4695,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4705,5 +4705,9 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public boolean processClick(InteractionHand hand) { return false; } diff --git a/patches/server/0071-Implement-bed-explosion-options.patch b/patches/server/0071-Implement-bed-explosion-options.patch index ef1df4096..d38246c6b 100644 --- a/patches/server/0071-Implement-bed-explosion-options.patch +++ b/patches/server/0071-Implement-bed-explosion-options.patch @@ -5,24 +5,24 @@ Subject: [PATCH] Implement bed explosion options diff --git a/src/main/java/net/minecraft/world/level/block/BedBlock.java b/src/main/java/net/minecraft/world/level/block/BedBlock.java -index f1a7c5202d4efbfaf5d88609d243f25f6817ecbe..812a93197774b8fbcb5745a5590717e1e3ba1472 100644 +index 64e68bf6decc765274caaabfd34a5b2d7d82434c..321522ca0396100486379fff5b105e07ce9f0aae 100644 --- a/src/main/java/net/minecraft/world/level/block/BedBlock.java +++ b/src/main/java/net/minecraft/world/level/block/BedBlock.java -@@ -97,7 +97,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock +@@ -98,7 +98,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock Vec3 vec3d = pos.getCenter(); -- world.explode((Entity) null, DamageSource.badRespawnPointExplosion(vec3d), (ExplosionDamageCalculator) null, vec3d, 5.0F, true, Level.ExplosionInteraction.BLOCK); -+ if (world.purpurConfig.bedExplode) world.explode((Entity) null, DamageSource.badRespawnPointExplosion(vec3d), (ExplosionDamageCalculator) null, vec3d, (float) world.purpurConfig.bedExplosionPower, world.purpurConfig.bedExplosionFire, Level.ExplosionInteraction.BLOCK); // Purpur +- world.explode((Entity) null, DamageSource.badRespawnPointExplosion(vec3d, explodedBlockState), (ExplosionDamageCalculator) null, vec3d, 5.0F, true, Level.ExplosionInteraction.BLOCK); // Paper - exploded block state ++ if (world.purpurConfig.bedExplode) world.explode((Entity) null, DamageSource.badRespawnPointExplosion(vec3d, explodedBlockState), (ExplosionDamageCalculator) null, vec3d, (float) world.purpurConfig.bedExplosionPower, world.purpurConfig.bedExplosionFire, Level.ExplosionInteraction.BLOCK); // Paper - exploded block state // Purpur return InteractionResult.SUCCESS; } else if ((Boolean) state.getValue(BedBlock.OCCUPIED)) { if (!this.kickVillagerOutOfBed(world, pos)) { -@@ -148,7 +148,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock +@@ -150,7 +150,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock Vec3 vec3d = blockposition.getCenter(); -- world.explode((Entity) null, DamageSource.badRespawnPointExplosion(vec3d), (ExplosionDamageCalculator) null, vec3d, 5.0F, true, Level.ExplosionInteraction.BLOCK); -+ if (world.purpurConfig.bedExplode) world.explode((Entity) null, DamageSource.badRespawnPointExplosion(vec3d), (ExplosionDamageCalculator) null, vec3d, (float) world.purpurConfig.bedExplosionPower, world.purpurConfig.bedExplosionFire, world.purpurConfig.bedExplosionEffect); // Purpur +- world.explode((Entity) null, DamageSource.badRespawnPointExplosion(vec3d, explodedBlockState), (ExplosionDamageCalculator) null, vec3d, 5.0F, true, Level.ExplosionInteraction.BLOCK); // Paper - exploded block state ++ if (world.purpurConfig.bedExplode) world.explode((Entity) null, DamageSource.badRespawnPointExplosion(vec3d, explodedBlockState), (ExplosionDamageCalculator) null, vec3d, (float) world.purpurConfig.bedExplosionPower, world.purpurConfig.bedExplosionFire, world.purpurConfig.bedExplosionEffect); // Paper - exploded block state // Purpur return InteractionResult.SUCCESS; } } diff --git a/patches/server/0072-Implement-respawn-anchor-explosion-options.patch b/patches/server/0072-Implement-respawn-anchor-explosion-options.patch index d1342f4ce..0eef362fc 100644 --- a/patches/server/0072-Implement-respawn-anchor-explosion-options.patch +++ b/patches/server/0072-Implement-respawn-anchor-explosion-options.patch @@ -5,15 +5,15 @@ Subject: [PATCH] Implement respawn anchor explosion options diff --git a/src/main/java/net/minecraft/world/level/block/RespawnAnchorBlock.java b/src/main/java/net/minecraft/world/level/block/RespawnAnchorBlock.java -index 53b35f003034e7f4c9dd8ccfaf77389163009453..de5d51eb67205d2f62582aea9465bbb9d55fde19 100644 +index 1b7140ffab0492ab130743a2d158b30efb2cfece..63b536555d97c158003722c21a25394ba50f3533 100644 --- a/src/main/java/net/minecraft/world/level/block/RespawnAnchorBlock.java +++ b/src/main/java/net/minecraft/world/level/block/RespawnAnchorBlock.java -@@ -125,7 +125,7 @@ public class RespawnAnchorBlock extends Block { +@@ -126,7 +126,7 @@ public class RespawnAnchorBlock extends Block { } }; Vec3 vec3 = explodedPos.getCenter(); -- world.explode((Entity)null, DamageSource.badRespawnPointExplosion(vec3), explosionDamageCalculator, vec3, 5.0F, true, Level.ExplosionInteraction.BLOCK); -+ if (world.purpurConfig.respawnAnchorExplode) world.explode((Entity)null, DamageSource.badRespawnPointExplosion(vec3), explosionDamageCalculator, vec3, (float) world.purpurConfig.respawnAnchorExplosionPower, world.purpurConfig.respawnAnchorExplosionFire, world.purpurConfig.respawnAnchorExplosionEffect); // Purpur +- world.explode((Entity)null, DamageSource.badRespawnPointExplosion(vec3, explodedBlockState), explosionDamageCalculator, vec3, 5.0F, true, Level.ExplosionInteraction.BLOCK); // Paper - exploded block state ++ if (world.purpurConfig.respawnAnchorExplode) world.explode((Entity)null, DamageSource.badRespawnPointExplosion(vec3, explodedBlockState), explosionDamageCalculator, vec3, (float) world.purpurConfig.respawnAnchorExplosionPower, world.purpurConfig.respawnAnchorExplosionFire, world.purpurConfig.respawnAnchorExplosionEffect); // Paper - exploded block state // Purpur } public static boolean canSetSpawn(Level world) { diff --git a/patches/server/0075-Entity-lifespan.patch b/patches/server/0075-Entity-lifespan.patch index 4e787599a..1683f653c 100644 --- a/patches/server/0075-Entity-lifespan.patch +++ b/patches/server/0075-Entity-lifespan.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entity lifespan diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 9d52a09e4f0bcbe88dfdb03833709e2104fc53e9..1e78ba1deaae20b700c651dbc8b2f4fa4ccf9ddc 100644 +index fe78d4c170c33c01caa74f9a91128ccdd1499ccb..c02327471f7bd8af3da97974871d976b2eea595f 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2821,6 +2821,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2823,6 +2823,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic } if (entity.distanceToSqr(this.player.getEyePosition()) < ServerGamePacketListenerImpl.MAX_INTERACTION_DISTANCE) { diff --git a/patches/server/0088-Stop-squids-floating-on-top-of-water.patch b/patches/server/0088-Stop-squids-floating-on-top-of-water.patch index 74f10d475..95b6e5839 100644 --- a/patches/server/0088-Stop-squids-floating-on-top-of-water.patch +++ b/patches/server/0088-Stop-squids-floating-on-top-of-water.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Stop squids floating on top of water diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e54540a58463a0dcd958ae65ee0948c76af9e065..6368f92466b0755b042b965af08777fe982389ed 100644 +index 7639f3872e3c98548973cb08edad17b1af1add1f..dbb02d7e0b0528c834a14489236670125a67db45 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4143,6 +4143,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4153,6 +4153,12 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.yRotO = this.getYRot(); } diff --git a/patches/server/0090-Entities-can-use-portals-configuration.patch b/patches/server/0090-Entities-can-use-portals-configuration.patch index a4d123f6c..c5fe182ed 100644 --- a/patches/server/0090-Entities-can-use-portals-configuration.patch +++ b/patches/server/0090-Entities-can-use-portals-configuration.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Entities can use portals configuration diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 6368f92466b0755b042b965af08777fe982389ed..02409b1f99a74bdfe8663c8f77f6ce50f7c57eb1 100644 +index dbb02d7e0b0528c834a14489236670125a67db45..5f3549a2d604e59b3bdc4c136ca858f7a47c2371 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2912,7 +2912,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2922,7 +2922,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public void handleInsidePortal(BlockPos pos) { if (this.isOnPortalCooldown()) { this.setPortalCooldown(); @@ -17,7 +17,7 @@ index 6368f92466b0755b042b965af08777fe982389ed..02409b1f99a74bdfe8663c8f77f6ce50 if (!this.level.isClientSide && !pos.equals(this.portalEntrancePos)) { this.portalEntrancePos = pos.immutable(); } -@@ -3602,7 +3602,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3612,7 +3612,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public boolean canChangeDimensions() { diff --git a/patches/server/0103-Arrows-should-not-reset-despawn-counter.patch b/patches/server/0103-Arrows-should-not-reset-despawn-counter.patch index 99f8f2ad1..7a00063bb 100644 --- a/patches/server/0103-Arrows-should-not-reset-despawn-counter.patch +++ b/patches/server/0103-Arrows-should-not-reset-despawn-counter.patch @@ -7,10 +7,10 @@ This prevents keeping arrows alive indefinitely (such as when the block the arrow is stuck in gets removed, like a piston head going up/down) diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -index e7ef36dac559d03d127cf45373a7e0dc935b80a8..39fa3fa6d49eb9451f876f7b46bd16555e71da05 100644 +index 9788e477ff1446ad2ea3669922cc7dfc09900ce8..9da08e020b4e85bc47423c3b91afbed6a11f87bb 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java +++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -@@ -323,7 +323,7 @@ public abstract class AbstractArrow extends Projectile { +@@ -312,7 +312,7 @@ public abstract class AbstractArrow extends Projectile { Vec3 vec3d = this.getDeltaMovement(); this.setDeltaMovement(vec3d.multiply((double) (this.random.nextFloat() * 0.2F), (double) (this.random.nextFloat() * 0.2F), (double) (this.random.nextFloat() * 0.2F))); diff --git a/patches/server/0130-Movement-options-for-armor-stands.patch b/patches/server/0130-Movement-options-for-armor-stands.patch index f2ddedf73..e91619b56 100644 --- a/patches/server/0130-Movement-options-for-armor-stands.patch +++ b/patches/server/0130-Movement-options-for-armor-stands.patch @@ -17,10 +17,10 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 8c894892234246f3bf297807bea4c0f6581e0c8e..0b1a8205f6dd6285c3cf190505e75ce1400bb9dd 100644 +index 5f3549a2d604e59b3bdc4c136ca858f7a47c2371..9b3a00324f85227186cd677446ebe140047cfac3 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1739,7 +1739,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -1740,7 +1740,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return this.isInWater() || flag; } diff --git a/patches/server/0131-Fix-stuck-in-portals.patch b/patches/server/0131-Fix-stuck-in-portals.patch index 0f0762de2..aacf90a4d 100644 --- a/patches/server/0131-Fix-stuck-in-portals.patch +++ b/patches/server/0131-Fix-stuck-in-portals.patch @@ -17,10 +17,10 @@ index 62fa71b3f9fe488c3b7d44d5c294894744317b96..6460f22d138dd8d2d5ebd1ed14056f28 // CraftBukkit end this.setLevel(worldserver); diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 5deb1173c3fb25c6571ce60c9727a81caf1a2b77..20988e9fb54aa5cb027a681d2fd135ce80d3da36 100644 +index 9b3a00324f85227186cd677446ebe140047cfac3..05f9d1178025ae9b26018a299977797d9453cb4f 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2909,12 +2909,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2919,12 +2919,15 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { return Vec3.directionFromRotation(this.getRotationVector()); } diff --git a/patches/server/0151-Drowning-Settings.patch b/patches/server/0151-Drowning-Settings.patch index 44b6af096..2d121adff 100644 --- a/patches/server/0151-Drowning-Settings.patch +++ b/patches/server/0151-Drowning-Settings.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Drowning Settings diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 9f9bcece63b99f2f23561dd0b3768e40cfd385fd..08ccf4b33313f3bc7ddc51b385288765f3cd3a88 100644 +index 05f9d1178025ae9b26018a299977797d9453cb4f..018ba3fbe599c1c5b892b7bead5d3d4dad8386a8 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3148,7 +3148,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3158,7 +3158,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } public int getMaxAirSupply() { @@ -18,7 +18,7 @@ index 9f9bcece63b99f2f23561dd0b3768e40cfd385fd..08ccf4b33313f3bc7ddc51b385288765 public int getAirSupply() { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 994c80642c34dac9be9e6afa4d7192a03d0e420e..59323c057167fdeceb13009cf794560236da2c6a 100644 +index d83ad0fd82fa284142f432ba18fa5b8c0eb26b57..19fa220907a7ec7a9a9bd23eae2a6a26e969d8fe 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -427,7 +427,7 @@ public abstract class LivingEntity extends Entity { diff --git a/patches/server/0179-API-for-any-mob-to-burn-daylight.patch b/patches/server/0179-API-for-any-mob-to-burn-daylight.patch index bd5d06059..08d896a13 100644 --- a/patches/server/0179-API-for-any-mob-to-burn-daylight.patch +++ b/patches/server/0179-API-for-any-mob-to-burn-daylight.patch @@ -6,10 +6,10 @@ Subject: [PATCH] API for any mob to burn daylight Co-authored by: Encode42 diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e133b5c9fdf3934a4ace3dd1b747c1aa3d5d4a48..d17ee2ff8eeb2acc086d8d115c3da5e241231ae8 100644 +index 018ba3fbe599c1c5b892b7bead5d3d4dad8386a8..3ca3fcbf65511fa8513c88a6b02a12f20444a505 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4708,5 +4708,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -4718,5 +4718,20 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { public boolean canSaveToDisk() { return true; } @@ -31,7 +31,7 @@ index e133b5c9fdf3934a4ace3dd1b747c1aa3d5d4a48..d17ee2ff8eeb2acc086d8d115c3da5e2 // Purpur end } diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 6a42eeb81b30a9fb99e4f100228612298cdc246c..489e08778451cb52efefb341cda74129be3728c6 100644 +index a21b7c49163d205e807da1d2ae0007b89b7c0d2e..1739e848eae0cfab56e74d5200e3f939e83da233 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -266,6 +266,7 @@ public abstract class LivingEntity extends Entity { diff --git a/patches/server/0183-Add-toggle-for-end-portal-safe-teleporting.patch b/patches/server/0183-Add-toggle-for-end-portal-safe-teleporting.patch index 7dd65403f..f16ef09c2 100644 --- a/patches/server/0183-Add-toggle-for-end-portal-safe-teleporting.patch +++ b/patches/server/0183-Add-toggle-for-end-portal-safe-teleporting.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add toggle for end portal safe teleporting diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 66cf04d6035b1676d75ae46b73782461d07dff24..3c6f73c09c489d4114d00394b1adc6e9cb5dbcb9 100644 +index 3ca3fcbf65511fa8513c88a6b02a12f20444a505..85462494d0fc140569745b7a97b1737a747a6fb6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2968,7 +2968,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2978,7 +2978,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } this.processPortalCooldown(); diff --git a/patches/server/0233-Signs-allow-color-codes.patch b/patches/server/0233-Signs-allow-color-codes.patch index cd9d1a501..39017113c 100644 --- a/patches/server/0233-Signs-allow-color-codes.patch +++ b/patches/server/0233-Signs-allow-color-codes.patch @@ -17,10 +17,10 @@ index 3f642a1a6d74d80d78e06441b50769810b820364..421493a14ac3908d4ae4032e4f199225 this.connection.send(new ClientboundBlockUpdatePacket(this.level, sign.getBlockPos())); this.connection.send(new ClientboundOpenSignEditorPacket(sign.getBlockPos())); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index aa31194b13fe0559e9a0ad1040abd9f3e5a91406..740346bb3cab0b8451faf451529195ff930cd43a 100644 +index c35295ff180e797d7933788964a849719bfd25f1..27abf5ded45a803ebb75601a3e8a974875dd58a7 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3511,11 +3511,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -3513,11 +3513,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic for (int i = 0; i < signText.size(); ++i) { FilteredText filteredtext = (FilteredText) signText.get(i); diff --git a/patches/server/0239-Ability-for-hoe-to-replant-crops-and-nether-warts.patch b/patches/server/0238-Ability-for-hoe-to-replant-crops-and-nether-warts.patch similarity index 98% rename from patches/server/0239-Ability-for-hoe-to-replant-crops-and-nether-warts.patch rename to patches/server/0238-Ability-for-hoe-to-replant-crops-and-nether-warts.patch index fc9bd9d9b..3c0e1ff8c 100644 --- a/patches/server/0239-Ability-for-hoe-to-replant-crops-and-nether-warts.patch +++ b/patches/server/0238-Ability-for-hoe-to-replant-crops-and-nether-warts.patch @@ -74,7 +74,7 @@ index e55720c4d2fbdf6aae526910e87a67c29cf906fd..0e4026e9d39735b840f12e59f84469b9 + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 51df14e58858012b21931f57df0a30fe96c873f0..95020427ac3848db5d4a1387ffba3263fe4767a6 100644 +index 550442ebdd824a799c65efeebf2d2e5e9cdc10e8..d7176a0a2732cbe9b14b0ad852a3531f4a47c3f5 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -560,6 +560,8 @@ public class PurpurWorldConfig { diff --git a/patches/server/0238-Option-to-prevent-spiders-from-climbing-world-border.patch b/patches/server/0238-Option-to-prevent-spiders-from-climbing-world-border.patch deleted file mode 100644 index f8c7e97ff..000000000 --- a/patches/server/0238-Option-to-prevent-spiders-from-climbing-world-border.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: BillyGalbreath -Date: Tue, 28 Dec 2021 10:11:31 -0600 -Subject: [PATCH] Option to prevent spiders from climbing world border - - -diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 3c6f73c09c489d4114d00394b1adc6e9cb5dbcb9..128ab97fbf3e52437aaf3094e1cff86cf3925609 100644 ---- a/src/main/java/net/minecraft/world/entity/Entity.java -+++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -304,6 +304,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { - public boolean verticalCollision; - public boolean verticalCollisionBelow; - public boolean minorHorizontalCollision; -+ public boolean collidingWithWorldBorder; // Purpur - public boolean hurtMarked; - protected Vec3 stuckSpeedMultiplier; - @Nullable -@@ -1425,7 +1426,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { - io.papermc.paper.util.CollisionUtil.getCollisions(world, this, collisionBox, potentialCollisions, false, this.level.paperConfig().chunks.preventMovingIntoUnloadedChunks, - false, false, null, null); - -- if (io.papermc.paper.util.CollisionUtil.isCollidingWithBorderEdge(world.getWorldBorder(), collisionBox)) { -+ if (this.collidingWithWorldBorder = io.papermc.paper.util.CollisionUtil.isCollidingWithBorderEdge(world.getWorldBorder(), collisionBox)) { // Purpur - io.papermc.paper.util.CollisionUtil.addBoxesToIfIntersects(world.getWorldBorder().getCollisionShape(), collisionBox, potentialCollisions); - } - -diff --git a/src/main/java/net/minecraft/world/entity/monster/Spider.java b/src/main/java/net/minecraft/world/entity/monster/Spider.java -index b1f23e67f7f21cb9a85301a819e8079d9000c0f6..62996f5e65cc04744852897ecca0c83a8a2e13f2 100644 ---- a/src/main/java/net/minecraft/world/entity/monster/Spider.java -+++ b/src/main/java/net/minecraft/world/entity/monster/Spider.java -@@ -118,7 +118,7 @@ public class Spider extends Monster { - public void tick() { - super.tick(); - if (!this.level.isClientSide) { -- this.setClimbing(this.horizontalCollision); -+ this.setClimbing(this.horizontalCollision && (this.level.purpurConfig.spiderCanClimbWorldBorder || !this.collidingWithWorldBorder)); // Purpur - } - - } -diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 550442ebdd824a799c65efeebf2d2e5e9cdc10e8..51df14e58858012b21931f57df0a30fe96c873f0 100644 ---- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -+++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2467,6 +2467,7 @@ public class PurpurWorldConfig { - public double spiderMaxHealth = 16.0D; - public boolean spiderTakeDamageFromWater = false; - public boolean spiderAlwaysDropExp = false; -+ public boolean spiderCanClimbWorldBorder = true; - private void spiderSettings() { - spiderRidable = getBoolean("mobs.spider.ridable", spiderRidable); - spiderRidableInWater = getBoolean("mobs.spider.ridable-in-water", spiderRidableInWater); -@@ -2479,6 +2480,7 @@ public class PurpurWorldConfig { - spiderMaxHealth = getDouble("mobs.spider.attributes.max_health", spiderMaxHealth); - spiderTakeDamageFromWater = getBoolean("mobs.spider.takes-damage-from-water", spiderTakeDamageFromWater); - spiderAlwaysDropExp = getBoolean("mobs.spider.always-drop-exp", spiderAlwaysDropExp); -+ spiderCanClimbWorldBorder = getBoolean("mobs.spider.can-climb-world-border", spiderCanClimbWorldBorder); - } - - public boolean strayRidable = false; diff --git a/patches/server/0240-Shearing-jeb-produces-random-color-wool.patch b/patches/server/0239-Shearing-jeb-produces-random-color-wool.patch similarity index 96% rename from patches/server/0240-Shearing-jeb-produces-random-color-wool.patch rename to patches/server/0239-Shearing-jeb-produces-random-color-wool.patch index dfe780c07..a6e9e8841 100644 --- a/patches/server/0240-Shearing-jeb-produces-random-color-wool.patch +++ b/patches/server/0239-Shearing-jeb-produces-random-color-wool.patch @@ -18,7 +18,7 @@ index 492316925f06d1bc7950c6b9d37615b2bd0138fd..99dbbe59116ae4fbdfb506a72959e3a6 if (entityitem != null) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 95020427ac3848db5d4a1387ffba3263fe4767a6..df92f8f6ede63bf0967666993a9e59a7377c18fb 100644 +index d7176a0a2732cbe9b14b0ad852a3531f4a47c3f5..3c97e3df12897a8aee762314e91ebcd45ef6ce4c 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -2260,6 +2260,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0241-Turtle-eggs-random-tick-crack-chance.patch b/patches/server/0240-Turtle-eggs-random-tick-crack-chance.patch similarity index 96% rename from patches/server/0241-Turtle-eggs-random-tick-crack-chance.patch rename to patches/server/0240-Turtle-eggs-random-tick-crack-chance.patch index 754bb0ef6..9f370afa4 100644 --- a/patches/server/0241-Turtle-eggs-random-tick-crack-chance.patch +++ b/patches/server/0240-Turtle-eggs-random-tick-crack-chance.patch @@ -32,7 +32,7 @@ index 87bae3047c16428194eae82d52e2e0c2f293c4d2..a1c6d0bfc38f57737dcf885488c8bd7f @Override diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index df92f8f6ede63bf0967666993a9e59a7377c18fb..0387895a705860549c85178ff5436762db207897 100644 +index 3c97e3df12897a8aee762314e91ebcd45ef6ce4c..847964d820f86867a4a6e7f5f37dbd3b852a6d4c 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -989,11 +989,13 @@ public class PurpurWorldConfig { diff --git a/patches/server/0242-Mob-head-visibility-percent.patch b/patches/server/0241-Mob-head-visibility-percent.patch similarity index 95% rename from patches/server/0242-Mob-head-visibility-percent.patch rename to patches/server/0241-Mob-head-visibility-percent.patch index 589a79949..02aa3b4cc 100644 --- a/patches/server/0242-Mob-head-visibility-percent.patch +++ b/patches/server/0241-Mob-head-visibility-percent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Mob head visibility percent diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 3cbb2606abd7062d3fc3e545c5665c1fa6e3265a..77f6e84137e923a9cbd2fbb76bf6542e1712d17e 100644 +index d5980f19074fce969bb156b7b3bf0854c02ea477..c41afa080aae9939160cda2fdd8d01a415c61dcd 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1029,9 +1029,20 @@ public abstract class LivingEntity extends Entity { @@ -32,7 +32,7 @@ index 3cbb2606abd7062d3fc3e545c5665c1fa6e3265a..77f6e84137e923a9cbd2fbb76bf6542e // Purpur start if (entity instanceof LivingEntity entityliving) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 0387895a705860549c85178ff5436762db207897..c42d1c68bfcd53bdfb7a2bad31391641babc2dec 100644 +index 847964d820f86867a4a6e7f5f37dbd3b852a6d4c..6d474c112cd622910f168695e6e0a959b9f9f405 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1262,6 +1262,7 @@ public class PurpurWorldConfig { @@ -83,7 +83,7 @@ index 0387895a705860549c85178ff5436762db207897..c42d1c68bfcd53bdfb7a2bad31391641 } public boolean skeletonHorseRidableInWater = true; -@@ -2875,6 +2881,7 @@ public class PurpurWorldConfig { +@@ -2873,6 +2879,7 @@ public class PurpurWorldConfig { public boolean zombieBypassMobGriefing = false; public boolean zombieTakeDamageFromWater = false; public boolean zombieAlwaysDropExp = false; @@ -91,7 +91,7 @@ index 0387895a705860549c85178ff5436762db207897..c42d1c68bfcd53bdfb7a2bad31391641 private void zombieSettings() { zombieRidable = getBoolean("mobs.zombie.ridable", zombieRidable); zombieRidableInWater = getBoolean("mobs.zombie.ridable-in-water", zombieRidableInWater); -@@ -2893,6 +2900,7 @@ public class PurpurWorldConfig { +@@ -2891,6 +2898,7 @@ public class PurpurWorldConfig { zombieBypassMobGriefing = getBoolean("mobs.zombie.bypass-mob-griefing", zombieBypassMobGriefing); zombieTakeDamageFromWater = getBoolean("mobs.zombie.takes-damage-from-water", zombieTakeDamageFromWater); zombieAlwaysDropExp = getBoolean("mobs.zombie.always-drop-exp", zombieAlwaysDropExp); diff --git a/patches/server/0243-Configurable-valid-characters-for-usernames.patch b/patches/server/0242-Configurable-valid-characters-for-usernames.patch similarity index 95% rename from patches/server/0243-Configurable-valid-characters-for-usernames.patch rename to patches/server/0242-Configurable-valid-characters-for-usernames.patch index fec81a4db..45ac475c9 100644 --- a/patches/server/0243-Configurable-valid-characters-for-usernames.patch +++ b/patches/server/0242-Configurable-valid-characters-for-usernames.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable valid characters for usernames diff --git a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java -index 4ab0a893677acbbcf939f28799b2df8bba8b5567..ed0b120b286c017a15c66193ef8c43a4fc97a0db 100644 +index ab1443048b3a4292be45b253c24eccf0de8b364d..f7f085a2dc5dc8d09bc665a371afac04b0e118fc 100644 --- a/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerLoginPacketListenerImpl.java @@ -220,6 +220,8 @@ public class ServerLoginPacketListenerImpl implements ServerLoginPacketListener, diff --git a/patches/server/0244-Shears-can-have-looting-enchantment.patch b/patches/server/0243-Shears-can-have-looting-enchantment.patch similarity index 100% rename from patches/server/0244-Shears-can-have-looting-enchantment.patch rename to patches/server/0243-Shears-can-have-looting-enchantment.patch diff --git a/patches/server/0245-Stop-bees-from-dying-after-stinging.patch b/patches/server/0244-Stop-bees-from-dying-after-stinging.patch similarity index 95% rename from patches/server/0245-Stop-bees-from-dying-after-stinging.patch rename to patches/server/0244-Stop-bees-from-dying-after-stinging.patch index 5b61371db..a7fa86246 100644 --- a/patches/server/0245-Stop-bees-from-dying-after-stinging.patch +++ b/patches/server/0244-Stop-bees-from-dying-after-stinging.patch @@ -17,7 +17,7 @@ index 251fc8c09d3856464b8f5c64f7840a65553ae16c..7d8ab3c5d5277b81157d56b408293cc3 ++this.timeSinceSting; if (this.timeSinceSting % 5 == 0 && this.random.nextInt(Mth.clamp(1200 - this.timeSinceSting, (int) 1, (int) 1200)) == 0) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index c42d1c68bfcd53bdfb7a2bad31391641babc2dec..f8fa43440495512bdec81fbd3b9ddd66df5a2958 100644 +index 6d474c112cd622910f168695e6e0a959b9f9f405..31b4c0624f45e44c98d29d51c486ee332faf1ab9 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1077,6 +1077,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0246-Give-bee-counts-in-beehives-to-Purpur-clients.patch b/patches/server/0245-Give-bee-counts-in-beehives-to-Purpur-clients.patch similarity index 100% rename from patches/server/0246-Give-bee-counts-in-beehives-to-Purpur-clients.patch rename to patches/server/0245-Give-bee-counts-in-beehives-to-Purpur-clients.patch diff --git a/patches/server/0247-Configurable-farmland-trample-height.patch b/patches/server/0246-Configurable-farmland-trample-height.patch similarity index 97% rename from patches/server/0247-Configurable-farmland-trample-height.patch rename to patches/server/0246-Configurable-farmland-trample-height.patch index 0ba786f0a..2a1f44906 100644 --- a/patches/server/0247-Configurable-farmland-trample-height.patch +++ b/patches/server/0246-Configurable-farmland-trample-height.patch @@ -35,7 +35,7 @@ index e5a3e3a4367dfb924624a913b816b3fd56e3fefd..7068cb39ab264fa0c65febff01236b8d org.bukkit.event.Cancellable cancellable; if (entity instanceof Player) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index f8fa43440495512bdec81fbd3b9ddd66df5a2958..bcb7ec819310444b1263afccf65de60108b31a5c 100644 +index 31b4c0624f45e44c98d29d51c486ee332faf1ab9..defd0e19e14d77d025a35066dea81ee5746e9bfa 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 { diff --git a/patches/server/0248-Configurable-player-pickup-exp-delay.patch b/patches/server/0247-Configurable-player-pickup-exp-delay.patch similarity index 95% rename from patches/server/0248-Configurable-player-pickup-exp-delay.patch rename to patches/server/0247-Configurable-player-pickup-exp-delay.patch index 6551d0a65..a1bcef023 100644 --- a/patches/server/0248-Configurable-player-pickup-exp-delay.patch +++ b/patches/server/0247-Configurable-player-pickup-exp-delay.patch @@ -24,7 +24,7 @@ index e3148983e1bf6f7c972a5794d99c03f7061d21a0..a1d271c931cf35f6a73191a1c21933ab int i = this.repairPlayerItems(player, this.value); diff --git a/src/main/java/net/minecraft/world/entity/player/Player.java b/src/main/java/net/minecraft/world/entity/player/Player.java -index 46258a0218614600a5405a6c251cbec58574decf..5a482f4c2a86d3f93fbbe8fc8fd29b07ebd50dc8 100644 +index 3d549570d83f06952022954b15810a54a2acd234..70b9cbdc4972d9f1e23fda1615ecfc6c71091728 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java @@ -626,7 +626,7 @@ public abstract class Player extends LivingEntity { @@ -37,7 +37,7 @@ index 46258a0218614600a5405a6c251cbec58574decf..5a482f4c2a86d3f93fbbe8fc8fd29b07 } else if (!entity.isRemoved()) { this.touch(entity); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index bcb7ec819310444b1263afccf65de60108b31a5c..1f29efdb08139bb189b161b670cd20b39fd69d46 100644 +index defd0e19e14d77d025a35066dea81ee5746e9bfa..8795723d10d09d4fcd1dc399ecac75f3ba7c3b63 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -423,6 +423,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0249-Allow-void-trading.patch b/patches/server/0248-Allow-void-trading.patch similarity index 96% rename from patches/server/0249-Allow-void-trading.patch rename to patches/server/0248-Allow-void-trading.patch index e382bd45b..3147c587b 100644 --- a/patches/server/0249-Allow-void-trading.patch +++ b/patches/server/0248-Allow-void-trading.patch @@ -18,7 +18,7 @@ index 03a9441b78d1470bbb460239cbe20478042bc02e..077ff3d7620e3c48aca59a92014dbdb7 } // Paper end diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 1f29efdb08139bb189b161b670cd20b39fd69d46..abe46f309b48f4376f8019aa3d7f07476de727f2 100644 +index 8795723d10d09d4fcd1dc399ecac75f3ba7c3b63..eb1d8693b3495c18c80f13174c1b3a5bf757b9ff 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -424,6 +424,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0250-Dont-eat-blocks-in-non-ticking-chunks.patch b/patches/server/0249-Dont-eat-blocks-in-non-ticking-chunks.patch similarity index 100% rename from patches/server/0250-Dont-eat-blocks-in-non-ticking-chunks.patch rename to patches/server/0249-Dont-eat-blocks-in-non-ticking-chunks.patch diff --git a/patches/server/0251-Configurable-phantom-size.patch b/patches/server/0250-Configurable-phantom-size.patch similarity index 96% rename from patches/server/0251-Configurable-phantom-size.patch rename to patches/server/0250-Configurable-phantom-size.patch index bd94e4668..47388ac38 100644 --- a/patches/server/0251-Configurable-phantom-size.patch +++ b/patches/server/0250-Configurable-phantom-size.patch @@ -22,7 +22,7 @@ index 35da78d79ee90acc69600adb78bc81ff75cee752..cf6f7c6c5754ab712e06a7bfb8c1ef8e } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index abe46f309b48f4376f8019aa3d7f07476de727f2..1c938baeb7d2b30d457b3dcb1e416f45944b708a 100644 +index eb1d8693b3495c18c80f13174c1b3a5bf757b9ff..05f4d455ea04ff5a53d362b5a5a21ecede5d1d1b 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -2005,6 +2005,8 @@ public class PurpurWorldConfig { diff --git a/patches/server/0252-Configurable-food-attributes.patch b/patches/server/0251-Configurable-food-attributes.patch similarity index 100% rename from patches/server/0252-Configurable-food-attributes.patch rename to patches/server/0251-Configurable-food-attributes.patch diff --git a/patches/server/0253-Max-joins-per-second.patch b/patches/server/0252-Max-joins-per-second.patch similarity index 80% rename from patches/server/0253-Max-joins-per-second.patch rename to patches/server/0252-Max-joins-per-second.patch index 27faea567..eab8ae6a1 100644 --- a/patches/server/0253-Max-joins-per-second.patch +++ b/patches/server/0252-Max-joins-per-second.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Max joins per second When this option is set to true the `max-joins-per-tick` setting in paper.yml will be used per second instead of per tick diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index 507e98438f6d13de1bcf063db673a8e483dbea47..c5f497df73e7ff8ec41c24cc684eed36da77ccb7 100644 +index 38c09c65dfa4a7a0c80d36f726c1fd028cbe05f8..52c7f83f525d150ce30e33f220d879d1d125508f 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java @@ -562,11 +562,20 @@ public class Connection extends SimpleChannelInboundHandler> { @@ -17,17 +17,17 @@ index 507e98438f6d13de1bcf063db673a8e483dbea47..c5f497df73e7ff8ec41c24cc684eed36 public void tick() { this.flushQueue(); // Paper start - if (currTick != net.minecraft.server.MinecraftServer.currentTick) { - currTick = net.minecraft.server.MinecraftServer.currentTick; + if (Connection.currTick != net.minecraft.server.MinecraftServer.currentTick) { + Connection.currTick = net.minecraft.server.MinecraftServer.currentTick; + // Purpur start + if (org.purpurmc.purpur.PurpurConfig.maxJoinsPerSecond) { -+ if (++tickSecond > 20) { -+ tickSecond = 0; -+ joinAttemptsThisTick = 0; ++ if (++Connection.tickSecond > 20) { ++ Connection.tickSecond = 0; ++ Connection.joinAttemptsThisTick = 0; + } + } else + // Purpur end - joinAttemptsThisTick = 0; + Connection.joinAttemptsThisTick = 0; } // Paper end diff --git a/src/main/java/org/purpurmc/purpur/PurpurConfig.java b/src/main/java/org/purpurmc/purpur/PurpurConfig.java diff --git a/patches/server/0254-Configurable-minimum-demand-for-trades.patch b/patches/server/0253-Configurable-minimum-demand-for-trades.patch similarity index 93% rename from patches/server/0254-Configurable-minimum-demand-for-trades.patch rename to patches/server/0253-Configurable-minimum-demand-for-trades.patch index 990f333f0..79da04e3b 100644 --- a/patches/server/0254-Configurable-minimum-demand-for-trades.patch +++ b/patches/server/0253-Configurable-minimum-demand-for-trades.patch @@ -40,10 +40,10 @@ index 8a9a701baabdaf066cd9b28c05430f673fcafb4e..17cc3237c7fc8ceda136b2371fabf6f0 public ItemStack assemble() { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 1c938baeb7d2b30d457b3dcb1e416f45944b708a..bba87691e639bdb24194934b1ba22ef70fb6b763 100644 +index 05f4d455ea04ff5a53d362b5a5a21ecede5d1d1b..347f8ff69dc0a9ea511e792b3e6147f796b529a4 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2677,6 +2677,7 @@ public class PurpurWorldConfig { +@@ -2675,6 +2675,7 @@ public class PurpurWorldConfig { public boolean villagerTakeDamageFromWater = false; public boolean villagerAllowTrading = true; public boolean villagerAlwaysDropExp = false; @@ -51,7 +51,7 @@ index 1c938baeb7d2b30d457b3dcb1e416f45944b708a..bba87691e639bdb24194934b1ba22ef7 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -2697,6 +2698,7 @@ public class PurpurWorldConfig { +@@ -2695,6 +2696,7 @@ public class PurpurWorldConfig { villagerTakeDamageFromWater = getBoolean("mobs.villager.takes-damage-from-water", villagerTakeDamageFromWater); villagerAllowTrading = getBoolean("mobs.villager.allow-trading", villagerAllowTrading); villagerAlwaysDropExp = getBoolean("mobs.villager.always-drop-exp", villagerAlwaysDropExp); diff --git a/patches/server/0255-Lobotomize-stuck-villagers.patch b/patches/server/0254-Lobotomize-stuck-villagers.patch similarity index 97% rename from patches/server/0255-Lobotomize-stuck-villagers.patch rename to patches/server/0254-Lobotomize-stuck-villagers.patch index bc9b75f49..87aaa181d 100644 --- a/patches/server/0255-Lobotomize-stuck-villagers.patch +++ b/patches/server/0254-Lobotomize-stuck-villagers.patch @@ -110,10 +110,10 @@ index a1a8ac55e572156671e47317ba061855be79e5ac..ec3fb8865211bd7625103c37af7b96df + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index bba87691e639bdb24194934b1ba22ef70fb6b763..83be208e91862534c927f2090665ded9a23e74b6 100644 +index 347f8ff69dc0a9ea511e792b3e6147f796b529a4..4a5cf8698b153215473dacfc5e44474484d2c864 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2678,6 +2678,8 @@ public class PurpurWorldConfig { +@@ -2676,6 +2676,8 @@ public class PurpurWorldConfig { public boolean villagerAllowTrading = true; public boolean villagerAlwaysDropExp = false; public int villagerMinimumDemand = 0; @@ -122,7 +122,7 @@ index bba87691e639bdb24194934b1ba22ef70fb6b763..83be208e91862534c927f2090665ded9 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -2699,6 +2701,17 @@ public class PurpurWorldConfig { +@@ -2697,6 +2699,17 @@ public class PurpurWorldConfig { villagerAllowTrading = getBoolean("mobs.villager.allow-trading", villagerAllowTrading); villagerAlwaysDropExp = getBoolean("mobs.villager.always-drop-exp", villagerAlwaysDropExp); villagerMinimumDemand = getInt("mobs.villager.minimum-demand", villagerMinimumDemand); diff --git a/patches/server/0256-Option-for-villager-display-trade-item.patch b/patches/server/0255-Option-for-villager-display-trade-item.patch similarity index 91% rename from patches/server/0256-Option-for-villager-display-trade-item.patch rename to patches/server/0255-Option-for-villager-display-trade-item.patch index 4ff523c07..b8b29458f 100644 --- a/patches/server/0256-Option-for-villager-display-trade-item.patch +++ b/patches/server/0255-Option-for-villager-display-trade-item.patch @@ -17,10 +17,10 @@ index 98373e013748817209b811d4adbb40a8787242a6..567b501f4de7556e55e2418d2f5700b4 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 83be208e91862534c927f2090665ded9a23e74b6..b30ca4fd74523a56d865e778b9423981846a0603 100644 +index 4a5cf8698b153215473dacfc5e44474484d2c864..10133d45893281d40380cd62743f2b6b99fafdd1 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2680,6 +2680,7 @@ public class PurpurWorldConfig { +@@ -2678,6 +2678,7 @@ public class PurpurWorldConfig { public int villagerMinimumDemand = 0; public boolean villagerLobotomizeEnabled = false; public int villagerLobotomizeCheckInterval = 100; @@ -28,7 +28,7 @@ index 83be208e91862534c927f2090665ded9a23e74b6..b30ca4fd74523a56d865e778b9423981 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -2712,6 +2713,7 @@ public class PurpurWorldConfig { +@@ -2710,6 +2711,7 @@ public class PurpurWorldConfig { } villagerLobotomizeEnabled = getBoolean("mobs.villager.lobotomize.enabled", villagerLobotomizeEnabled); villagerLobotomizeCheckInterval = getInt("mobs.villager.lobotomize.check-interval", villagerLobotomizeCheckInterval); diff --git a/patches/server/0257-Fill-command-max-area-option.patch b/patches/server/0256-Fill-command-max-area-option.patch similarity index 100% rename from patches/server/0257-Fill-command-max-area-option.patch rename to patches/server/0256-Fill-command-max-area-option.patch diff --git a/patches/server/0258-MC-238526-Fix-spawner-not-spawning-water-animals-cor.patch b/patches/server/0257-MC-238526-Fix-spawner-not-spawning-water-animals-cor.patch similarity index 95% rename from patches/server/0258-MC-238526-Fix-spawner-not-spawning-water-animals-cor.patch rename to patches/server/0257-MC-238526-Fix-spawner-not-spawning-water-animals-cor.patch index 8b7de6cba..0ceb73646 100644 --- a/patches/server/0258-MC-238526-Fix-spawner-not-spawning-water-animals-cor.patch +++ b/patches/server/0257-MC-238526-Fix-spawner-not-spawning-water-animals-cor.patch @@ -17,7 +17,7 @@ index 18389f46902bb9879ac6d734723e9a720724dc48..b2b8663a9cff08bacdab91c7bb014ba6 } } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index b30ca4fd74523a56d865e778b9423981846a0603..49bb74b5d7dbbca52b7e195897ee75153e498c6d 100644 +index 10133d45893281d40380cd62743f2b6b99fafdd1..4a1078f82b586840a2dbbdb81568a88e30ddeeb3 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -978,8 +978,10 @@ public class PurpurWorldConfig { diff --git a/patches/server/0259-Config-for-mob-last-hurt-by-player-time.patch b/patches/server/0258-Config-for-mob-last-hurt-by-player-time.patch similarity index 95% rename from patches/server/0259-Config-for-mob-last-hurt-by-player-time.patch rename to patches/server/0258-Config-for-mob-last-hurt-by-player-time.patch index ef7bf5b09..965119621 100644 --- a/patches/server/0259-Config-for-mob-last-hurt-by-player-time.patch +++ b/patches/server/0258-Config-for-mob-last-hurt-by-player-time.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Config for mob last hurt by player time diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index bf08efca962a1144a402f9d04b85029c76b4546f..83aeda0a7a2579d894b2eec975941547b0ce67c3 100644 +index c41afa080aae9939160cda2fdd8d01a415c61dcd..a1ef049460b1b8a257e09b52b7385fc6555f6472 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1460,13 +1460,13 @@ public abstract class LivingEntity extends Entity { @@ -38,7 +38,7 @@ index c041a5ddeac82548c3277e75c139f367dc81e71b..ddec0b7470e5a925ad6247970269f365 // Paper end diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 49bb74b5d7dbbca52b7e195897ee75153e498c6d..9b330eaabc237472b2901eb5919df4fe298b0786 100644 +index 4a1078f82b586840a2dbbdb81568a88e30ddeeb3..d284e00ae2ac02204e241cfdb2a271be06872484 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -145,6 +145,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0260-Anvil-repair-damage-options.patch b/patches/server/0259-Anvil-repair-damage-options.patch similarity index 98% rename from patches/server/0260-Anvil-repair-damage-options.patch rename to patches/server/0259-Anvil-repair-damage-options.patch index c2376f644..d0d51d8eb 100644 --- a/patches/server/0260-Anvil-repair-damage-options.patch +++ b/patches/server/0259-Anvil-repair-damage-options.patch @@ -64,7 +64,7 @@ index 2aac479ce9886cfef99823a41205eb52b7996d26..ff9945a04ffbda5766bc794fced24f14 return InteractionResult.SUCCESS; } else { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 9b330eaabc237472b2901eb5919df4fe298b0786..992c178a540753ae13ca3cb7c23dabf7663be160 100644 +index d284e00ae2ac02204e241cfdb2a271be06872484..aa648896e58e8a07f09326e5aa038e1f0bf90226 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -721,9 +721,13 @@ public class PurpurWorldConfig { diff --git a/patches/server/0261-Fix-legacy-colors-in-console.patch b/patches/server/0260-Fix-legacy-colors-in-console.patch similarity index 100% rename from patches/server/0261-Fix-legacy-colors-in-console.patch rename to patches/server/0260-Fix-legacy-colors-in-console.patch diff --git a/patches/server/0262-Option-to-disable-turtle-egg-trampling-with-feather-.patch b/patches/server/0261-Option-to-disable-turtle-egg-trampling-with-feather-.patch similarity index 96% rename from patches/server/0262-Option-to-disable-turtle-egg-trampling-with-feather-.patch rename to patches/server/0261-Option-to-disable-turtle-egg-trampling-with-feather-.patch index a3d7e16eb..f976046aa 100644 --- a/patches/server/0262-Option-to-disable-turtle-egg-trampling-with-feather-.patch +++ b/patches/server/0261-Option-to-disable-turtle-egg-trampling-with-feather-.patch @@ -20,7 +20,7 @@ index a1c6d0bfc38f57737dcf885488c8bd7ffcab393a..f39b902bea3e7dca15d3af2bc5901826 // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 992c178a540753ae13ca3cb7c23dabf7663be160..56cd5573751c43db15c42a34b25ffd25d5e370be 100644 +index aa648896e58e8a07f09326e5aa038e1f0bf90226..5ce6326bf776e817d9b1a5cce691a88d54c4b584 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1004,12 +1004,14 @@ public class PurpurWorldConfig { diff --git a/patches/server/0263-Add-toggle-for-enchant-level-clamping.patch b/patches/server/0262-Add-toggle-for-enchant-level-clamping.patch similarity index 100% rename from patches/server/0263-Add-toggle-for-enchant-level-clamping.patch rename to patches/server/0262-Add-toggle-for-enchant-level-clamping.patch diff --git a/patches/server/0264-Skip-junit-tests-for-purpur-commands.patch b/patches/server/0263-Skip-junit-tests-for-purpur-commands.patch similarity index 100% rename from patches/server/0264-Skip-junit-tests-for-purpur-commands.patch rename to patches/server/0263-Skip-junit-tests-for-purpur-commands.patch diff --git a/patches/server/0265-Implement-configurable-search-radius-for-villagers-t.patch b/patches/server/0264-Implement-configurable-search-radius-for-villagers-t.patch similarity index 92% rename from patches/server/0265-Implement-configurable-search-radius-for-villagers-t.patch rename to patches/server/0264-Implement-configurable-search-radius-for-villagers-t.patch index f7e954730..2a2c4ac38 100644 --- a/patches/server/0265-Implement-configurable-search-radius-for-villagers-t.patch +++ b/patches/server/0264-Implement-configurable-search-radius-for-villagers-t.patch @@ -18,10 +18,10 @@ index ab1e841f14c6776644f8a2f92f6db98e83724afc..700d32abc957769960fd081072c94168 AABB axisalignedbb = this.getBoundingBox().inflate(10.0D, 10.0D, 10.0D); List list = world.getEntitiesOfClass(Villager.class, axisalignedbb); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 56cd5573751c43db15c42a34b25ffd25d5e370be..e0025af94a2516e6f7f8a2855175cb34870f493a 100644 +index 5ce6326bf776e817d9b1a5cce691a88d54c4b584..075235e1db1c2261c3917b57d752462cf4fba4d3 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -@@ -2691,6 +2691,8 @@ public class PurpurWorldConfig { +@@ -2689,6 +2689,8 @@ public class PurpurWorldConfig { public boolean villagerLobotomizeEnabled = false; public int villagerLobotomizeCheckInterval = 100; public boolean villagerDisplayTradeItem = true; @@ -30,7 +30,7 @@ index 56cd5573751c43db15c42a34b25ffd25d5e370be..e0025af94a2516e6f7f8a2855175cb34 private void villagerSettings() { villagerRidable = getBoolean("mobs.villager.ridable", villagerRidable); villagerRidableInWater = getBoolean("mobs.villager.ridable-in-water", villagerRidableInWater); -@@ -2724,6 +2726,8 @@ public class PurpurWorldConfig { +@@ -2722,6 +2724,8 @@ public class PurpurWorldConfig { villagerLobotomizeEnabled = getBoolean("mobs.villager.lobotomize.enabled", villagerLobotomizeEnabled); villagerLobotomizeCheckInterval = getInt("mobs.villager.lobotomize.check-interval", villagerLobotomizeCheckInterval); villagerDisplayTradeItem = getBoolean("mobs.villager.display-trade-item", villagerDisplayTradeItem); diff --git a/patches/server/0266-Stonecutter-damage.patch b/patches/server/0265-Stonecutter-damage.patch similarity index 95% rename from patches/server/0266-Stonecutter-damage.patch rename to patches/server/0265-Stonecutter-damage.patch index 8d8aaa458..cfa3ac2ba 100644 --- a/patches/server/0266-Stonecutter-damage.patch +++ b/patches/server/0265-Stonecutter-damage.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Stonecutter damage diff --git a/src/main/java/net/minecraft/world/damagesource/DamageSource.java b/src/main/java/net/minecraft/world/damagesource/DamageSource.java -index f3a682fdc1c9ba24a9532c6c17ea3c4e733ae6ef..eac1351ef29d4c05d665e7bceea4cc72ce10e943 100644 +index 84c668e84635607f005deb6e3859d54c4ee2c4cb..2e1c34d37b4371fcd7f5616ad5cd5876014ebc9d 100644 --- a/src/main/java/net/minecraft/world/damagesource/DamageSource.java +++ b/src/main/java/net/minecraft/world/damagesource/DamageSource.java @@ -42,6 +42,12 @@ public class DamageSource { @@ -65,7 +65,7 @@ index 6fbac97beacd0f806301c34de4ca6495b5aa705e..365c3d01a59d117ee9f238b1c1ded645 } else if (blockState.is(Blocks.HONEY_BLOCK)) { return BlockPathTypes.STICKY_HONEY; diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java -index 86c49b8d3b0059bba6a78a17d870aff4568b39e4..2d49774f195c2f72004319b2e35763c7071969f1 100644 +index 2d2f3370d4b3e2f5be0d1179ee27dd50544be656..b65c39645aa437fdb1ac745ec18bba11f63f092d 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java @@ -1057,6 +1057,10 @@ public class CraftEventFactory { @@ -95,7 +95,7 @@ index 8a517170c6076badd47e48b64538816857ed413e..44d6b32ad6a760a12fa8ea27f09b2f95 public static boolean advancementOnlyBroadcastToAffectedPlayer = false; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index e0025af94a2516e6f7f8a2855175cb34870f493a..a16fa8e1e59f01cd61cd10affd132c1e1d0fbbbc 100644 +index 075235e1db1c2261c3917b57d752462cf4fba4d3..148845b0db3f3e2d2eec90db1d30adf02d3aeb2b 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -999,6 +999,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0267-Configurable-damage-settings-for-magma-blocks.patch b/patches/server/0266-Configurable-damage-settings-for-magma-blocks.patch similarity index 96% rename from patches/server/0267-Configurable-damage-settings-for-magma-blocks.patch rename to patches/server/0266-Configurable-damage-settings-for-magma-blocks.patch index e85f3edfc..4ab71957e 100644 --- a/patches/server/0267-Configurable-damage-settings-for-magma-blocks.patch +++ b/patches/server/0266-Configurable-damage-settings-for-magma-blocks.patch @@ -18,7 +18,7 @@ index d3540a4daaa8021ae009bfd4d9ef4f1172ab4c56..2b250439f263f64db7920536ed6eaf64 entity.hurt(DamageSource.HOT_FLOOR, 1.0F); org.bukkit.craftbukkit.event.CraftEventFactory.blockDamage = null; // CraftBukkit diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a16fa8e1e59f01cd61cd10affd132c1e1d0fbbbc..8f2721502dbc55a0c791e4d1745279b5650c1a62 100644 +index 148845b0db3f3e2d2eec90db1d30adf02d3aeb2b..c7741f717e71dba7302710d262500a8dccbcdad2 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -930,6 +930,13 @@ public class PurpurWorldConfig { diff --git a/patches/server/0268-Add-config-for-snow-on-blue-ice.patch b/patches/server/0267-Add-config-for-snow-on-blue-ice.patch similarity index 95% rename from patches/server/0268-Add-config-for-snow-on-blue-ice.patch rename to patches/server/0267-Add-config-for-snow-on-blue-ice.patch index 396020c08..baec171d9 100644 --- a/patches/server/0268-Add-config-for-snow-on-blue-ice.patch +++ b/patches/server/0267-Add-config-for-snow-on-blue-ice.patch @@ -22,7 +22,7 @@ index 14e00c7feb1c051d56a3d27cd00dcef072dd771a..4952fb1aaaafb55baa0fddb389f966a1 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 8f2721502dbc55a0c791e4d1745279b5650c1a62..23caa98fdd5f81e513e1ed57a3666f90c1040e0a 100644 +index c7741f717e71dba7302710d262500a8dccbcdad2..39c6d09fdade9809a43b749adb8b27d82e35460a 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -909,9 +909,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0269-Skeletons-eat-wither-roses.patch b/patches/server/0268-Skeletons-eat-wither-roses.patch similarity index 98% rename from patches/server/0269-Skeletons-eat-wither-roses.patch rename to patches/server/0268-Skeletons-eat-wither-roses.patch index a296cfcbd..01f44971f 100644 --- a/patches/server/0269-Skeletons-eat-wither-roses.patch +++ b/patches/server/0268-Skeletons-eat-wither-roses.patch @@ -94,7 +94,7 @@ index f5e8fbccd819f6fb66918bceb93d000da038d7ef..e0352f073c95f8caf47d6789c0bd10e5 + // Purpur end } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 23caa98fdd5f81e513e1ed57a3666f90c1040e0a..95bc0deadfca22f84a21c0f17431a504cd7e0306 100644 +index 39c6d09fdade9809a43b749adb8b27d82e35460a..ca54c868b4ac2f932b1614f6938775ed04b03e84 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -2386,6 +2386,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0270-Enchantment-Table-Persists-Lapis.patch b/patches/server/0269-Enchantment-Table-Persists-Lapis.patch similarity index 98% rename from patches/server/0270-Enchantment-Table-Persists-Lapis.patch rename to patches/server/0269-Enchantment-Table-Persists-Lapis.patch index 2607fc663..7f0c490f7 100644 --- a/patches/server/0270-Enchantment-Table-Persists-Lapis.patch +++ b/patches/server/0269-Enchantment-Table-Persists-Lapis.patch @@ -146,7 +146,7 @@ index 65e1381bb2d10bd212463feb602c60f8fdb9ade1..b7370e64fd0d50e8725d7d5afc30af2e + // Purpur } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 95bc0deadfca22f84a21c0f17431a504cd7e0306..d3887f0f0fafa98a89f73bc6178fc4cb4bacee60 100644 +index ca54c868b4ac2f932b1614f6938775ed04b03e84..5122ee294a795f72a5ffa6ae4fe62b3574a2c52e 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1421,6 +1421,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0271-Spark-Profiler.patch b/patches/server/0270-Spark-Profiler.patch similarity index 96% rename from patches/server/0271-Spark-Profiler.patch rename to patches/server/0270-Spark-Profiler.patch index 159f498c5..6a1f4977f 100644 --- a/patches/server/0271-Spark-Profiler.patch +++ b/patches/server/0270-Spark-Profiler.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Spark Profiler diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 34de9d0061626e083fcf70d4720d2ef9a90f72bd..bc7c2aa4aa2a002faaaccf5f499218d390772e3b 100644 +index cd17d6d6b871214d84d393fc9ebcc3dccff6da50..d0a8fe4b3827a789866371f8756138376124302d 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -433,7 +433,38 @@ public final class CraftServer implements Server { diff --git a/patches/server/0272-Option-to-disable-kick-for-out-of-order-chat.patch b/patches/server/0271-Option-to-disable-kick-for-out-of-order-chat.patch similarity index 92% rename from patches/server/0272-Option-to-disable-kick-for-out-of-order-chat.patch rename to patches/server/0271-Option-to-disable-kick-for-out-of-order-chat.patch index f730028aa..4c8783a81 100644 --- a/patches/server/0272-Option-to-disable-kick-for-out-of-order-chat.patch +++ b/patches/server/0271-Option-to-disable-kick-for-out-of-order-chat.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Option to disable kick for out of order chat diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 740346bb3cab0b8451faf451529195ff930cd43a..89bafc725eceaf5c8ce1beeb2cdb6c0107ad7e46 100644 +index 27abf5ded45a803ebb75601a3e8a974875dd58a7..211a5660547f3fc994d6e74832d47263a93e9e4a 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2438,7 +2438,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2440,7 +2440,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic do { instant1 = (Instant) this.lastChatTimeStamp.get(); if (timestamp.isBefore(instant1)) { diff --git a/patches/server/0273-Config-for-sculk-shrieker-can_summon-state.patch b/patches/server/0272-Config-for-sculk-shrieker-can_summon-state.patch similarity index 95% rename from patches/server/0273-Config-for-sculk-shrieker-can_summon-state.patch rename to patches/server/0272-Config-for-sculk-shrieker-can_summon-state.patch index b26d5a8d8..cc8b82699 100644 --- a/patches/server/0273-Config-for-sculk-shrieker-can_summon-state.patch +++ b/patches/server/0272-Config-for-sculk-shrieker-can_summon-state.patch @@ -18,7 +18,7 @@ index e0998215841e500e5982a242e9f4e646402e1521..11038ba560439dab04c54c31a32d63be @Override diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index d3887f0f0fafa98a89f73bc6178fc4cb4bacee60..c76a5953788a33e2466c02a5553521ff8c3d9a18 100644 +index 5122ee294a795f72a5ffa6ae4fe62b3574a2c52e..3780049479f9bb464a6049587bb2b9987e61b032 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -975,6 +975,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0274-Config-to-not-let-coral-die.patch b/patches/server/0273-Config-to-not-let-coral-die.patch similarity index 96% rename from patches/server/0274-Config-to-not-let-coral-die.patch rename to patches/server/0273-Config-to-not-let-coral-die.patch index b5fe14a3d..bdc5e0e77 100644 --- a/patches/server/0274-Config-to-not-let-coral-die.patch +++ b/patches/server/0273-Config-to-not-let-coral-die.patch @@ -29,7 +29,7 @@ index 88faea00be60a519f56f975a5311df5e1eb3e6b8..cbb726ac367be81e27d3a86643baf7c4 int i = aenumdirection.length; diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index c76a5953788a33e2466c02a5553521ff8c3d9a18..a34e8a7ec9c42c562646cbf7db767919e3128086 100644 +index 3780049479f9bb464a6049587bb2b9987e61b032..d03d3ee880c7907bd7f1223ab104bcdcb3f73d56 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -810,6 +810,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0275-Add-local-difficulty-api.patch b/patches/server/0274-Add-local-difficulty-api.patch similarity index 100% rename from patches/server/0275-Add-local-difficulty-api.patch rename to patches/server/0274-Add-local-difficulty-api.patch diff --git a/patches/server/0276-Add-toggle-for-RNG-manipulation.patch b/patches/server/0275-Add-toggle-for-RNG-manipulation.patch similarity index 93% rename from patches/server/0276-Add-toggle-for-RNG-manipulation.patch rename to patches/server/0275-Add-toggle-for-RNG-manipulation.patch index 471366a91..32d7050ee 100644 --- a/patches/server/0276-Add-toggle-for-RNG-manipulation.patch +++ b/patches/server/0275-Add-toggle-for-RNG-manipulation.patch @@ -7,7 +7,7 @@ Paper patches RNG maniplulation by using a shared (and locked) random source. This comes with a performance gain, but technical players may prefer the ability to manipulate RNG. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 128ab97fbf3e52437aaf3094e1cff86cf3925609..0bbf6c9879ebd286135cbf145c1eb8a95a1ef881 100644 +index 85462494d0fc140569745b7a97b1737a747a6fb6..d87ec515d3129662d7e101dd822e08ce4d7adb61 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -577,7 +577,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -33,7 +33,7 @@ index 21f5304e01e0844f1bbf3e1b2f9d50c01f8bf8fd..8afdb5d4fecbb45bad2ed801fc0e526d } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index a34e8a7ec9c42c562646cbf7db767919e3128086..30ca7197711f0e8f18a7afb290a17be4489f6499 100644 +index d03d3ee880c7907bd7f1223ab104bcdcb3f73d56..62bad1a35bae5fea6878e6734381cbbfe19e5673 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -207,9 +207,11 @@ public class PurpurWorldConfig { diff --git a/patches/server/0277-Send-client-custom-name-of-BE.patch b/patches/server/0276-Send-client-custom-name-of-BE.patch similarity index 100% rename from patches/server/0277-Send-client-custom-name-of-BE.patch rename to patches/server/0276-Send-client-custom-name-of-BE.patch diff --git a/patches/server/0278-PaperPR-Fix-exact-choice-recipe-book-clicks.patch b/patches/server/0277-PaperPR-Fix-exact-choice-recipe-book-clicks.patch similarity index 100% rename from patches/server/0278-PaperPR-Fix-exact-choice-recipe-book-clicks.patch rename to patches/server/0277-PaperPR-Fix-exact-choice-recipe-book-clicks.patch diff --git a/patches/server/0279-Allow-custom-ChatDecorators.patch b/patches/server/0278-Allow-custom-ChatDecorators.patch similarity index 100% rename from patches/server/0279-Allow-custom-ChatDecorators.patch rename to patches/server/0278-Allow-custom-ChatDecorators.patch diff --git a/patches/server/0280-Cache-server-motd.patch b/patches/server/0279-Cache-server-motd.patch similarity index 100% rename from patches/server/0280-Cache-server-motd.patch rename to patches/server/0279-Cache-server-motd.patch diff --git a/patches/server/0281-Remove-Timings.patch b/patches/server/0280-Remove-Timings.patch similarity index 99% rename from patches/server/0281-Remove-Timings.patch rename to patches/server/0280-Remove-Timings.patch index 9f2459985..aabeeb9bc 100644 --- a/patches/server/0281-Remove-Timings.patch +++ b/patches/server/0280-Remove-Timings.patch @@ -43,7 +43,7 @@ index 8013dd333e27aa5fd0beb431fa32491eec9f5246..e42eb93fd9f6f51ff5bb4b14a2304d4f return executedUnloadTask | canSaveChunk | canSaveEntities | canSavePOI ? new SaveStat(executedUnloadTask || canSaveChunk, canSaveEntities, canSavePOI): null; } diff --git a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java -index d03551e81e3ef37935cb1d963aba3df316f48ef5..04ca6d27a13706fbddc708df0fcca42b4098bcba 100644 +index 01bdf134fc21220ab7ecca51f2dcd51c0b466bba..6bf14183a3fcd2b3d166752ce33240d2ff1ffa7c 100644 --- a/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java +++ b/src/main/java/io/papermc/paper/configuration/GlobalConfiguration.java @@ -67,14 +67,14 @@ public class GlobalConfiguration extends ConfigurationPart { @@ -656,10 +656,10 @@ index 077ff3d7620e3c48aca59a92014dbdb7de15e79a..ece55efcd566bcb9b06d305496ab7458 } else if (close) { chunkproviderserver.close(false); } // Paper - rewrite chunk system diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 89bafc725eceaf5c8ce1beeb2cdb6c0107ad7e46..92efc48a2cda63b6fac73261c12d12e58a11e5ca 100644 +index 211a5660547f3fc994d6e74832d47263a93e9e4a..e57ef9c60163d8ee13547d87169ccd0daec4acd4 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2575,7 +2575,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2577,7 +2577,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic } } // Paper End @@ -668,7 +668,7 @@ index 89bafc725eceaf5c8ce1beeb2cdb6c0107ad7e46..92efc48a2cda63b6fac73261c12d12e5 if ( org.spigotmc.SpigotConfig.logCommands ) // Spigot this.LOGGER.info(this.player.getScoreboardName() + " issued server command: " + s); -@@ -2585,7 +2585,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2587,7 +2587,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic this.cserver.getPluginManager().callEvent(event); if (event.isCancelled()) { @@ -677,7 +677,7 @@ index 89bafc725eceaf5c8ce1beeb2cdb6c0107ad7e46..92efc48a2cda63b6fac73261c12d12e5 return; } -@@ -2598,7 +2598,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic +@@ -2600,7 +2600,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic java.util.logging.Logger.getLogger(ServerGamePacketListenerImpl.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); return; } finally { @@ -687,7 +687,7 @@ index 89bafc725eceaf5c8ce1beeb2cdb6c0107ad7e46..92efc48a2cda63b6fac73261c12d12e5 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java -index f3fc72e1ddbb65daaab3b5fe1c6210434a434050..7d5ba99a674855967256b74fd9fd21749dcde8a3 100644 +index 728fcabab244bb1e5731349ad75a4556266b1bc8..c38acf2f364ed64b8ab1f4a8ef3b270c49e9fbdb 100644 --- a/src/main/java/net/minecraft/server/players/PlayerList.java +++ b/src/main/java/net/minecraft/server/players/PlayerList.java @@ -1220,7 +1220,7 @@ public abstract class PlayerList { diff --git a/patches/server/0282-Remove-Mojang-Profiler.patch b/patches/server/0281-Remove-Mojang-Profiler.patch similarity index 99% rename from patches/server/0282-Remove-Mojang-Profiler.patch rename to patches/server/0281-Remove-Mojang-Profiler.patch index a50472bee..46f67b1bb 100644 --- a/patches/server/0282-Remove-Mojang-Profiler.patch +++ b/patches/server/0281-Remove-Mojang-Profiler.patch @@ -783,7 +783,7 @@ index 421493a14ac3908d4ae4032e4f19922598206135..48b09b1fe0d316277a46cab700d790a1 this.connection.send(new ClientboundPlayerAbilitiesPacket(this.getAbilities())); playerlist.sendLevelInfo(this, worldserver); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 92efc48a2cda63b6fac73261c12d12e58a11e5ca..816f60da1d9c4996cc6dd123400e17c4df4983d9 100644 +index e57ef9c60163d8ee13547d87169ccd0daec4acd4..731516cc0e7a6a16874b5c9d533f2beb84397e06 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -405,7 +405,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic @@ -1009,7 +1009,7 @@ index 5725c6593480fada65facc29664a00a8cc073512..ccb1f998ae3122d1856d77149ff7e7df }; } diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 2e9add3cdaf72ed2bf86e1d22a5936fb54de3936..6fb411a6c4bb1414960a80817c11205e7f1c44c5 100644 +index d87ec515d3129662d7e101dd822e08ce4d7adb61..816b546670af57b41b71eefdd0d341c54ce1915a 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -822,7 +822,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -1077,7 +1077,7 @@ index 2e9add3cdaf72ed2bf86e1d22a5936fb54de3936..6fb411a6c4bb1414960a80817c11205e } } // Paper start - detailed watchdog information -@@ -2936,7 +2936,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2945,7 +2945,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { ServerLevel worldserver1 = minecraftserver.getLevel(resourcekey); if (true && !this.isPassenger() && this.portalTime++ >= i) { // CraftBukkit @@ -1086,7 +1086,7 @@ index 2e9add3cdaf72ed2bf86e1d22a5936fb54de3936..6fb411a6c4bb1414960a80817c11205e this.portalTime = i; // Paper start io.papermc.paper.event.entity.EntityPortalReadyEvent event = new io.papermc.paper.event.entity.EntityPortalReadyEvent(this.getBukkitEntity(), worldserver1 == null ? null : worldserver1.getWorld(), org.bukkit.PortalType.NETHER); -@@ -2954,7 +2954,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2963,7 +2963,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } } // Paper // CraftBukkit end @@ -1095,7 +1095,7 @@ index 2e9add3cdaf72ed2bf86e1d22a5936fb54de3936..6fb411a6c4bb1414960a80817c11205e } this.isInsidePortal = false; -@@ -3419,14 +3419,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3428,14 +3428,14 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } // Paper end if (this.level instanceof ServerLevel && !this.isRemoved()) { @@ -1112,7 +1112,7 @@ index 2e9add3cdaf72ed2bf86e1d22a5936fb54de3936..6fb411a6c4bb1414960a80817c11205e PortalInfo shapedetectorshape = (location == null) ? this.findDimensionEntryPoint(worldserver) : new PortalInfo(new Vec3(location.x(), location.y(), location.z()), Vec3.ZERO, this.yRot, this.xRot, worldserver, null); // CraftBukkit if (shapedetectorshape == null) { -@@ -3460,7 +3460,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3469,7 +3469,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { this.unRide(); // CraftBukkit end @@ -1121,7 +1121,7 @@ index 2e9add3cdaf72ed2bf86e1d22a5936fb54de3936..6fb411a6c4bb1414960a80817c11205e // Paper start - Change lead drop timing to prevent dupe if (this instanceof Mob) { ((Mob) this).dropLeash(true, true); // Paper drop lead -@@ -3483,10 +3483,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -3492,10 +3492,10 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { } this.removeAfterChangingDimensions(); @@ -1135,7 +1135,7 @@ index 2e9add3cdaf72ed2bf86e1d22a5936fb54de3936..6fb411a6c4bb1414960a80817c11205e } } else { diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 83aeda0a7a2579d894b2eec975941547b0ce67c3..147fb78f10b5eefe0da557306fecf8abb4c81539 100644 +index a1ef049460b1b8a257e09b52b7385fc6555f6472..cd538b09f74170306d18fab9b16fd5750e8cc3ed 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -398,7 +398,7 @@ public abstract class LivingEntity extends Entity { @@ -1527,10 +1527,10 @@ index 1164fdc49115f5178344276f073ac6c43a49411e..fe1f01d7aa27907298dd2e97e6b4d4fa } diff --git a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java -index 7b7daf5232a446b8774bbf53f2f09d9811d1dbbc..ee248e701fe5e84b21b44754cc471f67b0bcb91d 100644 +index 35aa223731014628e4b1654a8b72a2923a483a03..93fe8efe4ddd4de440fff1ca7a38960203d0ff74 100644 --- a/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java +++ b/src/main/java/net/minecraft/world/entity/animal/frog/Tadpole.java -@@ -116,13 +116,13 @@ public class Tadpole extends AbstractFish { +@@ -117,13 +117,13 @@ public class Tadpole extends AbstractFish { private int behaviorTick = 0; // Pufferfish @Override protected void customServerAiStep() { @@ -1588,7 +1588,7 @@ index 8b522186395d570bb14db94df8df2c4fa3705a7e..70d891d85748039b517a87b2438b04a9 } diff --git a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java -index 9d65b412e30f528d378de9072b48632c56c3e5bb..9ff882352b3fb69d8a8ecaf1908709761b3e9658 100644 +index 73c7c1658eea207e9775b7be3180a7a47f683dfe..aba0633361d4d933a3c18049595f3deb1d39da1a 100644 --- a/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java +++ b/src/main/java/net/minecraft/world/entity/monster/hoglin/Hoglin.java @@ -166,10 +166,10 @@ public class Hoglin extends Animal implements Enemy, HoglinBase { @@ -1678,7 +1678,7 @@ index 700d32abc957769960fd081072c941681474f7f0..832469e39901d9ec666ddaf3aff77419 this.assignProfessionWhenSpawned = false; } diff --git a/src/main/java/net/minecraft/world/level/Explosion.java b/src/main/java/net/minecraft/world/level/Explosion.java -index 122880ca3cfe6528e10e6df4c3200d6c66421c8b..51d8271cb8fe246f4c11db8fbc061ed63f416da0 100644 +index f16593a99ca4089151c2247f6028b823614c78e4..e71368734923c4dfed6cfad6571114b87d8fa6dc 100644 --- a/src/main/java/net/minecraft/world/level/Explosion.java +++ b/src/main/java/net/minecraft/world/level/Explosion.java @@ -362,7 +362,7 @@ public class Explosion { diff --git a/patches/server/0283-Add-more-logger-output-for-invalid-movement-kicks.patch b/patches/server/0282-Add-more-logger-output-for-invalid-movement-kicks.patch similarity index 96% rename from patches/server/0283-Add-more-logger-output-for-invalid-movement-kicks.patch rename to patches/server/0282-Add-more-logger-output-for-invalid-movement-kicks.patch index 84add398a..dea3f7015 100644 --- a/patches/server/0283-Add-more-logger-output-for-invalid-movement-kicks.patch +++ b/patches/server/0282-Add-more-logger-output-for-invalid-movement-kicks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add more logger output for invalid movement kicks diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 816f60da1d9c4996cc6dd123400e17c4df4983d9..a37849179a34d0ba5997f7d83c10bd1851135835 100644 +index 731516cc0e7a6a16874b5c9d533f2beb84397e06..be44d43ee9b5fec44f1b3cb27e7180ba370f6de7 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -845,6 +845,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic diff --git a/patches/server/0284-Add-Bee-API.patch b/patches/server/0283-Add-Bee-API.patch similarity index 100% rename from patches/server/0284-Add-Bee-API.patch rename to patches/server/0283-Add-Bee-API.patch diff --git a/patches/server/0285-Debug-Marker-API.patch b/patches/server/0284-Debug-Marker-API.patch similarity index 98% rename from patches/server/0285-Debug-Marker-API.patch rename to patches/server/0284-Debug-Marker-API.patch index 3448d64c1..68e1044ea 100644 --- a/patches/server/0285-Debug-Marker-API.patch +++ b/patches/server/0284-Debug-Marker-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Debug Marker API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 2d295ccc61b465210351edeba3511e9eb535c3be..890aec076baab7795fb39ff3d5f8e3fa3ff1abae 100644 +index d0a8fe4b3827a789866371f8756138376124302d..7f5010ef364705f05b304923ce6da4582d7de81e 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -1495,6 +1495,42 @@ public final class CraftServer implements Server { diff --git a/patches/server/0286-add-Player-showCreditScreen.patch b/patches/server/0285-add-Player-showCreditScreen.patch similarity index 100% rename from patches/server/0286-add-Player-showCreditScreen.patch rename to patches/server/0285-add-Player-showCreditScreen.patch diff --git a/patches/server/0287-mob-spawning-option-to-ignore-creative-players.patch b/patches/server/0286-mob-spawning-option-to-ignore-creative-players.patch similarity index 97% rename from patches/server/0287-mob-spawning-option-to-ignore-creative-players.patch rename to patches/server/0286-mob-spawning-option-to-ignore-creative-players.patch index 4f5ebb124..076395e67 100644 --- a/patches/server/0287-mob-spawning-option-to-ignore-creative-players.patch +++ b/patches/server/0286-mob-spawning-option-to-ignore-creative-players.patch @@ -18,7 +18,7 @@ index fbb735915759ea59660daa809e23849a60fa5974..81ba3c4fa9502cdd2a5c58b0ff51fea6 if (entityhuman != null) { double d2 = entityhuman.distanceToSqr(d0, (double) i, d1); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 30ca7197711f0e8f18a7afb290a17be4489f6499..ec87511c3cbb0300fd7e918971b43ec94db630d4 100644 +index 62bad1a35bae5fea6878e6734381cbbfe19e5673..4a78ea6c92922dc2742e90d1726f2ba39065449f 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -376,6 +376,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0288-Make-pufferfish-config-relocatable.patch b/patches/server/0287-Make-pufferfish-config-relocatable.patch similarity index 93% rename from patches/server/0288-Make-pufferfish-config-relocatable.patch rename to patches/server/0287-Make-pufferfish-config-relocatable.patch index 77705a941..0cdd15259 100644 --- a/patches/server/0288-Make-pufferfish-config-relocatable.patch +++ b/patches/server/0287-Make-pufferfish-config-relocatable.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Make pufferfish config relocatable diff --git a/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java -index 9e3f279d759a49c051544f54f76790d549132ac0..81206fcab3c943ec12e582fb811014b6bd1423ba 100644 +index 5f3be4356a6d65ea2a7e4d013abd4501cedd7428..f3593297929842b52e4467ed4386ab12586b1b70 100644 --- a/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java +++ b/src/main/java/gg/pufferfish/pufferfish/PufferfishConfig.java @@ -28,6 +28,7 @@ public class PufferfishConfig { @@ -38,7 +38,7 @@ index 14c31ac94202e5266610869d3dd93b871cfb4557..46858fb57f122033a68aeb4ad3943132 gg.pufferfish.pufferfish.PufferfishCommand.init(); // Pufferfish diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java -index c2c5c560165eb9ac9920727aaf730a5280107782..082d0516c80cf231dd7ceb454508bb77407c499b 100644 +index 8e706d752b6bbda353d85ce10cdb83a68a4f71d8..576cd8e20982bb20d10213b6c7a229428eec1c2f 100644 --- a/src/main/java/org/bukkit/craftbukkit/Main.java +++ b/src/main/java/org/bukkit/craftbukkit/Main.java @@ -172,6 +172,12 @@ public class Main { diff --git a/patches/server/0289-Add-skeleton-bow-accuracy-option.patch b/patches/server/0288-Add-skeleton-bow-accuracy-option.patch similarity index 97% rename from patches/server/0289-Add-skeleton-bow-accuracy-option.patch rename to patches/server/0288-Add-skeleton-bow-accuracy-option.patch index af29eb41b..84bf02dda 100644 --- a/patches/server/0289-Add-skeleton-bow-accuracy-option.patch +++ b/patches/server/0288-Add-skeleton-bow-accuracy-option.patch @@ -18,7 +18,7 @@ index e542407894f58fb8c0339a7a6d2e7b2cb5891eb4..0cfe5cb3ce0ac8554bbdb68c66583693 org.bukkit.event.entity.EntityShootBowEvent event = org.bukkit.craftbukkit.event.CraftEventFactory.callEntityShootBowEvent(this, this.getMainHandItem(), entityarrow.getPickupItem(), entityarrow, net.minecraft.world.InteractionHand.MAIN_HAND, 0.8F, true); // Paper if (event.isCancelled()) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index ec87511c3cbb0300fd7e918971b43ec94db630d4..7e20ab899271be23ed90b7d3c3b8f79d07076716 100644 +index 4a78ea6c92922dc2742e90d1726f2ba39065449f..ab6c9c87684e1be6276880e847856ee99a0b92a9 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -2406,6 +2406,8 @@ public class PurpurWorldConfig { diff --git a/patches/server/0290-Allay-respect-item-NBT.patch b/patches/server/0289-Allay-respect-item-NBT.patch similarity index 96% rename from patches/server/0290-Allay-respect-item-NBT.patch rename to patches/server/0289-Allay-respect-item-NBT.patch index dbff0db85..b5747972c 100644 --- a/patches/server/0290-Allay-respect-item-NBT.patch +++ b/patches/server/0289-Allay-respect-item-NBT.patch @@ -44,7 +44,7 @@ index 910bf19c7325180f3121ae3982dddae9e4ea0e97..e8f42ad6cc32cb21584d8988fcf3d1e4 private boolean allayConsidersItemEqual(ItemStack stack, ItemStack stack2) { diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 7e20ab899271be23ed90b7d3c3b8f79d07076716..6fcbdb4b6567196f99fddaa70b9b1f393edf4ae6 100644 +index ab6c9c87684e1be6276880e847856ee99a0b92a9..d06be7de030dbeb153ec452cf74751642de9c0d8 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1061,10 +1061,13 @@ public class PurpurWorldConfig { diff --git a/patches/server/0291-Add-death-screen-API.patch b/patches/server/0290-Add-death-screen-API.patch similarity index 100% rename from patches/server/0291-Add-death-screen-API.patch rename to patches/server/0290-Add-death-screen-API.patch diff --git a/patches/server/0292-Implement-ram-and-rambar-commands.patch b/patches/server/0291-Implement-ram-and-rambar-commands.patch similarity index 100% rename from patches/server/0292-Implement-ram-and-rambar-commands.patch rename to patches/server/0291-Implement-ram-and-rambar-commands.patch diff --git a/patches/server/0293-Add-item-packet-serialize-event.patch b/patches/server/0292-Add-item-packet-serialize-event.patch similarity index 100% rename from patches/server/0293-Add-item-packet-serialize-event.patch rename to patches/server/0292-Add-item-packet-serialize-event.patch diff --git a/patches/server/0294-Fix-MC-123848.patch b/patches/server/0293-Fix-MC-123848.patch similarity index 100% rename from patches/server/0294-Fix-MC-123848.patch rename to patches/server/0293-Fix-MC-123848.patch diff --git a/patches/server/0295-Implement-squid-colors-for-rainglow-fabric-mod.patch b/patches/server/0294-Implement-squid-colors-for-rainglow-fabric-mod.patch similarity index 98% rename from patches/server/0295-Implement-squid-colors-for-rainglow-fabric-mod.patch rename to patches/server/0294-Implement-squid-colors-for-rainglow-fabric-mod.patch index 51d1a4938..62e8d0341 100644 --- a/patches/server/0295-Implement-squid-colors-for-rainglow-fabric-mod.patch +++ b/patches/server/0294-Implement-squid-colors-for-rainglow-fabric-mod.patch @@ -40,7 +40,7 @@ index b7abcaa32341c292f9f884fa6319fd65596e1b37..5d6cddc221887be20ef75d688817dfe5 @Override diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 6fcbdb4b6567196f99fddaa70b9b1f393edf4ae6..1234a56a9320d79cf524e11dc959f672e12b45ae 100644 +index d06be7de030dbeb153ec452cf74751642de9c0d8..ba7c9c9d0713a9f9c8cb785922e51fb88a9f13b5 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1658,6 +1658,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0296-Add-an-option-to-fix-MC-3304-projectile-looting.patch b/patches/server/0295-Add-an-option-to-fix-MC-3304-projectile-looting.patch similarity index 97% rename from patches/server/0296-Add-an-option-to-fix-MC-3304-projectile-looting.patch rename to patches/server/0295-Add-an-option-to-fix-MC-3304-projectile-looting.patch index f61b5de56..1abc3516a 100644 --- a/patches/server/0296-Add-an-option-to-fix-MC-3304-projectile-looting.patch +++ b/patches/server/0295-Add-an-option-to-fix-MC-3304-projectile-looting.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add an option to fix MC-3304 (projectile looting) diff --git a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -index 39fa3fa6d49eb9451f876f7b46bd16555e71da05..d90ee7058a2362620c51542ecbf29caa219cf929 100644 +index 9da08e020b4e85bc47423c3b91afbed6a11f87bb..3f8e10c33e0f8739602f8327da3a8f66318c5c94 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java +++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java @@ -72,6 +72,7 @@ public abstract class AbstractArrow extends Projectile { @@ -16,7 +16,7 @@ index 39fa3fa6d49eb9451f876f7b46bd16555e71da05..d90ee7058a2362620c51542ecbf29caa // Spigot Start @Override -@@ -623,6 +624,12 @@ public abstract class AbstractArrow extends Projectile { +@@ -612,6 +613,12 @@ public abstract class AbstractArrow extends Projectile { this.knockback = punch; } diff --git a/patches/server/0297-Configurable-block-blast-resistance.patch b/patches/server/0296-Configurable-block-blast-resistance.patch similarity index 100% rename from patches/server/0297-Configurable-block-blast-resistance.patch rename to patches/server/0296-Configurable-block-blast-resistance.patch diff --git a/patches/server/0298-Configurable-block-fall-damage-modifiers.patch b/patches/server/0297-Configurable-block-fall-damage-modifiers.patch similarity index 97% rename from patches/server/0298-Configurable-block-fall-damage-modifiers.patch rename to patches/server/0297-Configurable-block-fall-damage-modifiers.patch index 6317e8d36..65314100f 100644 --- a/patches/server/0298-Configurable-block-fall-damage-modifiers.patch +++ b/patches/server/0297-Configurable-block-fall-damage-modifiers.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable block fall damage modifiers diff --git a/src/main/java/net/minecraft/world/level/block/BedBlock.java b/src/main/java/net/minecraft/world/level/block/BedBlock.java -index 812a93197774b8fbcb5745a5590717e1e3ba1472..497e405781199788c76e3042bf13514f740d6873 100644 +index 321522ca0396100486379fff5b105e07ce9f0aae..fd83291fc9137527513c492c9e3c670ed5e09236 100644 --- a/src/main/java/net/minecraft/world/level/block/BedBlock.java +++ b/src/main/java/net/minecraft/world/level/block/BedBlock.java -@@ -173,7 +173,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock +@@ -175,7 +175,7 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock @Override public void fallOn(Level world, BlockState state, BlockPos pos, Entity entity, float fallDistance) { diff --git a/patches/server/0299-Language-API.patch b/patches/server/0298-Language-API.patch similarity index 94% rename from patches/server/0299-Language-API.patch rename to patches/server/0298-Language-API.patch index 6497cd1f8..96b25eb64 100644 --- a/patches/server/0299-Language-API.patch +++ b/patches/server/0298-Language-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Language API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java -index 12652b1123417a093d4b7a934eb71798fe038a99..fbfd5ea459ab2751bf100c43c4f0398f579c8fdb 100644 +index 7f5010ef364705f05b304923ce6da4582d7de81e..b69634a5cf57e4086e644819f68638d6a2ab897c 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java @@ -251,6 +251,7 @@ import org.bukkit.scoreboard.Criteria; diff --git a/patches/server/0300-Milk-Keeps-Beneficial-Effects.patch b/patches/server/0299-Milk-Keeps-Beneficial-Effects.patch similarity index 95% rename from patches/server/0300-Milk-Keeps-Beneficial-Effects.patch rename to patches/server/0299-Milk-Keeps-Beneficial-Effects.patch index 5c83d3c9d..1eda6be21 100644 --- a/patches/server/0300-Milk-Keeps-Beneficial-Effects.patch +++ b/patches/server/0299-Milk-Keeps-Beneficial-Effects.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Milk Keeps Beneficial Effects diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 57c73ae309ea38c220c3016c9eb8900c78d8aa78..3fd8e115319e24d31f0b81e88633b83969a41b4b 100644 +index cd538b09f74170306d18fab9b16fd5750e8cc3ed..094afd5636590608c8ec31c9fec97614dfef60db 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1113,6 +1113,7 @@ public abstract class LivingEntity extends Entity { @@ -30,7 +30,7 @@ index da9e749cf775fc4e3ec6846dab1f92e64f088442..6a4983999666c6b59c2c46f194190059 this.goalSelector.addGoal(1, new TradeWithPlayerGoal(this)); this.goalSelector.addGoal(1, new AvoidEntityGoal<>(this, Zombie.class, 8.0F, 0.5D, 0.5D)); diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 1234a56a9320d79cf524e11dc959f672e12b45ae..0ccc7acb4e11b45cf95ea3b79e80611da9ffa8e7 100644 +index ba7c9c9d0713a9f9c8cb785922e51fb88a9f13b5..7f1334fa04fe28a41f29a437e18f1613bd69997e 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -131,6 +131,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0301-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch b/patches/server/0300-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch similarity index 100% rename from patches/server/0301-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch rename to patches/server/0300-MC-121706-Fix-mobs-not-looking-up-and-down-when-stra.patch diff --git a/patches/server/0302-Add-log-suppression-for-LibraryLoader.patch b/patches/server/0301-Add-log-suppression-for-LibraryLoader.patch similarity index 100% rename from patches/server/0302-Add-log-suppression-for-LibraryLoader.patch rename to patches/server/0301-Add-log-suppression-for-LibraryLoader.patch diff --git a/patches/server/0303-Allow-Transparent-Blocks-In-Enchanting-Box.patch b/patches/server/0302-Allow-Transparent-Blocks-In-Enchanting-Box.patch similarity index 100% rename from patches/server/0303-Allow-Transparent-Blocks-In-Enchanting-Box.patch rename to patches/server/0302-Allow-Transparent-Blocks-In-Enchanting-Box.patch diff --git a/patches/server/0304-Add-option-to-allow-creeper-to-encircle-target-when-.patch b/patches/server/0303-Add-option-to-allow-creeper-to-encircle-target-when-.patch similarity index 96% rename from patches/server/0304-Add-option-to-allow-creeper-to-encircle-target-when-.patch rename to patches/server/0303-Add-option-to-allow-creeper-to-encircle-target-when-.patch index ffa04bcba..8f6d2690f 100644 --- a/patches/server/0304-Add-option-to-allow-creeper-to-encircle-target-when-.patch +++ b/patches/server/0303-Add-option-to-allow-creeper-to-encircle-target-when-.patch @@ -24,7 +24,7 @@ index e241ae250f4f04a17ef2c583d00b065a4ca56a4c..02b567e4e808e1a809d285ef39e1abc5 } } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 0ccc7acb4e11b45cf95ea3b79e80611da9ffa8e7..cee5ba9488fe7823b5c86647c22fa042b5c43333 100644 +index 7f1334fa04fe28a41f29a437e18f1613bd69997e..3adfb90ce28ebba6e82a36894f6e625353d6d7f3 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -1314,6 +1314,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0305-Fire-Immunity-API.patch b/patches/server/0304-Fire-Immunity-API.patch similarity index 93% rename from patches/server/0305-Fire-Immunity-API.patch rename to patches/server/0304-Fire-Immunity-API.patch index 5e3a5b5f3..25ae6d36b 100644 --- a/patches/server/0305-Fire-Immunity-API.patch +++ b/patches/server/0304-Fire-Immunity-API.patch @@ -5,13 +5,13 @@ Subject: [PATCH] Fire Immunity API diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 46a979fcafcd1492f63f7c0a8ac9a7c2a708b0a5..c647d46783deb4bf135e535933a0dc9c76a7f7f9 100644 +index 816b546670af57b41b71eefdd0d341c54ce1915a..86b8f88d0baf838da33b7469bc3353ed57590fc5 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -398,6 +398,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { - @javax.annotation.Nullable private UUID originWorld; public boolean freezeLocked = false; // Paper - Freeze Tick Lock API + public boolean collidingWithWorldBorder; // Paper + public @Nullable Boolean immuneToFire = null; // Purpur - Fire immune API public void setOrigin(@javax.annotation.Nonnull Location location) { @@ -25,7 +25,7 @@ index 46a979fcafcd1492f63f7c0a8ac9a7c2a708b0a5..c647d46783deb4bf135e535933a0dc9c } public boolean causeFallDamage(float fallDistance, float damageMultiplier, DamageSource damageSource) { -@@ -2317,6 +2318,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2326,6 +2327,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { nbt.putBoolean("Paper.FreezeLock", true); } // Paper end @@ -37,7 +37,7 @@ index 46a979fcafcd1492f63f7c0a8ac9a7c2a708b0a5..c647d46783deb4bf135e535933a0dc9c return nbt; } catch (Throwable throwable) { CrashReport crashreport = CrashReport.forThrowable(throwable, "Saving entity NBT"); -@@ -2484,6 +2490,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { +@@ -2493,6 +2499,11 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { freezeLocked = nbt.getBoolean("Paper.FreezeLock"); } // Paper end diff --git a/patches/server/0306-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch b/patches/server/0305-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch similarity index 94% rename from patches/server/0306-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch rename to patches/server/0305-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch index 9ea4a627c..c1988a14c 100644 --- a/patches/server/0306-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch +++ b/patches/server/0305-Add-option-to-teleport-to-spawn-on-nether-ceiling-da.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add option to teleport to spawn on nether ceiling damage diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index c647d46783deb4bf135e535933a0dc9c76a7f7f9..6b0e44f77c11e51a570de71b537f75c0dd942006 100644 +index 86b8f88d0baf838da33b7469bc3353ed57590fc5..78f2f70ddc7908b4cedf8f07cc26348a196767f6 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java @@ -420,7 +420,7 @@ public abstract class Entity implements Nameable, EntityAccess, CommandSource { @@ -26,7 +26,7 @@ index c647d46783deb4bf135e535933a0dc9c76a7f7f9..6b0e44f77c11e51a570de71b537f75c0 } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index cee5ba9488fe7823b5c86647c22fa042b5c43333..856024f31ca1eeab6e4d4ee7f547509bc9581bf8 100644 +index 3adfb90ce28ebba6e82a36894f6e625353d6d7f3..e3e5e326e04f54e2903b1e8b60e5e3ab54454736 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -418,6 +418,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0307-Added-got-ram-event.patch b/patches/server/0306-Added-got-ram-event.patch similarity index 100% rename from patches/server/0307-Added-got-ram-event.patch rename to patches/server/0306-Added-got-ram-event.patch diff --git a/patches/server/0308-Log-skipped-entity-s-position.patch b/patches/server/0307-Log-skipped-entity-s-position.patch similarity index 100% rename from patches/server/0308-Log-skipped-entity-s-position.patch rename to patches/server/0307-Log-skipped-entity-s-position.patch diff --git a/patches/server/0309-End-Crystal-Cramming.patch b/patches/server/0308-End-Crystal-Cramming.patch similarity index 96% rename from patches/server/0309-End-Crystal-Cramming.patch rename to patches/server/0308-End-Crystal-Cramming.patch index ef9576cb7..b50e2a684 100644 --- a/patches/server/0309-End-Crystal-Cramming.patch +++ b/patches/server/0308-End-Crystal-Cramming.patch @@ -17,7 +17,7 @@ index eccd32b4cdff15bee637ba6784ce92f53627467f..d542652d376a790c817e09921a432ee8 // Purpur start diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 856024f31ca1eeab6e4d4ee7f547509bc9581bf8..619509538875f2876a53d7d1863f28d979931504 100644 +index e3e5e326e04f54e2903b1e8b60e5e3ab54454736..b4483e3c03d9a96dfd2725cbcd22bca4e3e563c8 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -853,6 +853,7 @@ public class PurpurWorldConfig { diff --git a/patches/server/0310-Option-to-allow-beacon-effects-when-covered-by-tinte.patch b/patches/server/0309-Option-to-allow-beacon-effects-when-covered-by-tinte.patch similarity index 97% rename from patches/server/0310-Option-to-allow-beacon-effects-when-covered-by-tinte.patch rename to patches/server/0309-Option-to-allow-beacon-effects-when-covered-by-tinte.patch index ad004cc4b..f3621457a 100644 --- a/patches/server/0310-Option-to-allow-beacon-effects-when-covered-by-tinte.patch +++ b/patches/server/0309-Option-to-allow-beacon-effects-when-covered-by-tinte.patch @@ -36,7 +36,7 @@ index 82e0a18ce0ce092656bde41da5a52737e1b2242a..c49175dcb7ca4469f729d3afb305fca4 BeaconBlockEntity.playSound(world, pos, SoundEvents.BEACON_AMBIENT); } diff --git a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java -index 619509538875f2876a53d7d1863f28d979931504..b5255f025133d1540b1616d609be20af923024b6 100644 +index b4483e3c03d9a96dfd2725cbcd22bca4e3e563c8..a3f9df384e5723d51177c78722e405a172bb385b 100644 --- a/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java +++ b/src/main/java/org/purpurmc/purpur/PurpurWorldConfig.java @@ -747,11 +747,13 @@ public class PurpurWorldConfig { diff --git a/settings.gradle.kts b/settings.gradle.kts index fa5a3bd3b..68b8bc8aa 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,13 +1,34 @@ import java.util.Locale +if (!file(".git").exists()) { + val errorText = """ + + =====================[ ERROR ]===================== + The Purpur project directory is not a properly cloned Git repository. + + In order to build Purpur from source you must clone + the Purpur repository using Git, not download a code + zip from GitHub. + + Built Purpur jars are available for download at + https://purpurmc.org/downloads + + See https://github.com/PurpurMC/Purpur/blob/HEAD/CONTRIBUTING.md + for further information on building and modifying Purpur. + =================================================== + """.trimIndent() + error(errorText) +} + pluginManagement { repositories { gradlePluginPortal() - maven("https://papermc.io/repo/repository/maven-public/") + maven("https://repo.papermc.io/repository/maven-public/") } } rootProject.name = "purpur" + for (name in listOf("Purpur-API", "Purpur-Server")) { val projName = name.toLowerCase(Locale.ENGLISH) include(projName)