From bd55e322d8cfb8f4d4fed04b38243bc4940fab50 Mon Sep 17 00:00:00 2001 From: Nassim Jahnke Date: Tue, 3 Dec 2024 19:54:10 +0100 Subject: [PATCH] More more more work --- ...t-allow-digging-into-unloaded-chunks.patch | 14 +-- patches/server/0267-Book-size-limits.patch | 2 +- .../server/0274-Brigadier-Mojang-API.patch | 2 +- .../0275-Limit-Client-Sign-length-more.patch | 2 +- ...47-Prevent-teleporting-dead-entities.patch | 2 +- ...t-position-desync-causing-tp-exploit.patch | 2 +- .../0364-Add-PlayerRecipeBookClickEvent.patch | 2 +- ...66-Add-permission-for-command-blocks.patch | 2 +- ...ld-Difficulty-Remembering-Difficulty.patch | 2 +- ...o-not-accept-invalid-client-settings.patch | 2 +- ...ortation-and-cancel-velocity-if-tele.patch | 2 +- ...r-large-move-vectors-crashing-server.patch | 6 +- .../server/0435-Limit-recipe-packets.patch | 2 +- ...ob-spawner-spawn-egg-transformation.patch} | 6 +- ...ix-Not-a-string-Map-Conversion-spam.patch} | 0 ...-Add-PlayerFlowerPotManipulateEvent.patch} | 6 +- ...ct-event-not-being-called-sometimes.patch} | 16 +-- .../0450-Zombie-API-breaking-doors.patch} | 0 ...451-Fix-nerfed-slime-when-splitting.patch} | 0 .../0452-Add-EntityLoadCrossbowEvent.patch} | 6 +- .../0453-Add-WorldGameRuleChangeEvent.patch} | 2 +- ...54-Add-ServerResourcesReloadedEvent.patch} | 2 +- ...d-settings-for-mobs-picking-up-loot.patch} | 4 +- .../0456-Add-BlockFailedDispenseEvent.patch} | 2 +- ...57-Add-PlayerLecternPageChangeEvent.patch} | 0 ...58-Add-PlayerLoomPatternSelectEvent.patch} | 0 ...nfigurable-door-breaking-difficulty.patch} | 0 ...ty-commands-shall-not-be-dispatched.patch} | 0 .../0461-Remove-stale-POIs.patch} | 4 +- .../0462-Fix-villager-boat-exploit.patch} | 0 .../0463-Add-sendOpLevel-API.patch} | 2 +- ...istryAccess-for-managing-Registries.patch} | 10 +- .../0465-Add-StructuresLocateEvent.patch} | 4 +- ...-for-requiring-a-player-participant.patch} | 6 +- ...nent-with-empty-text-instead-of-thr.patch} | 0 ...468-Make-schedule-command-per-world.patch} | 0 ...469-Configurable-max-leash-distance.patch} | 10 +- .../0470-Add-BlockPreDispenseEvent.patch} | 2 +- ...1-Add-PlayerChangeBeaconEffectEvent.patch} | 2 +- ...e-for-always-placing-the-dragon-egg.patch} | 0 ...d-PlayerStonecutterRecipeSelectEvent.patch | 57 ++++++++++ .../0474-Expand-EntityUnleashEvent.patch} | 88 ++++++++------- ...shield-blocking-on-dimension-change.patch} | 4 +- .../0476-Add-DragonEggFormEvent.patch} | 0 .../0477-Add-EntityMoveEvent.patch} | 10 +- ...isable-pathfinding-updates-on-block.patch} | 6 +- .../0479-Inline-shift-direction-fields.patch} | 2 +- ...-adding-items-to-BlockDropItemEvent.patch} | 0 ...inThreadExecutor-to-BukkitScheduler.patch} | 0 ...entity-allow-attribute-registration.patch} | 6 +- ...ix-dead-slime-setSize-invincibility.patch} | 0 ...pes-should-return-an-immutable-list.patch} | 0 .../0485-Expose-Tracked-Players.patch} | 0 .../0486-Improve-ServerGUI.patch} | 0 ...487-fix-converting-txt-to-json-file.patch} | 0 .../0488-Add-worldborder-events.patch} | 0 .../0489-Add-PlayerNameEntityEvent.patch} | 4 +- .../0490-Add-recipe-to-cook-events.patch} | 4 +- .../0491-Add-Block-isValidTool.patch} | 0 ...using-signs-inside-spawn-protection.patch} | 14 +-- .../0493-Expand-world-key-API.patch} | 2 +- ...ternative-constructor-for-Rotations.patch} | 0 ...d-item-when-player-has-disconnected.patch} | 0 ...elist-use-configurable-kick-message.patch} | 2 +- ...gnore-result-of-PlayerEditBookEvent.patch} | 4 +- .../0498-Expose-protocol-version.patch} | 2 +- ...ab-completions-for-brigadier-comman.patch} | 0 ...temConsumeEvent-cancelling-properly.patch} | 4 +- .../0501-Add-bypass-host-check.patch} | 0 ...0502-Set-area-affect-cloud-rotation.patch} | 4 +- ...add-isDeeplySleeping-to-HumanEntity.patch} | 0 ...add-consumeFuel-to-FurnaceBurnEvent.patch} | 4 +- ...-set-drop-chance-to-EntityEquipment.patch} | 0 ...ix-PigZombieAngerEvent-cancellation.patch} | 0 ...ix-PlayerItemHeldEvent-firing-twice.patch} | 4 +- .../0508-Add-PlayerDeepSleepEvent.patch} | 4 +- .../0509-More-World-API.patch} | 2 +- .../0510-Add-PlayerBedFailEnterEvent.patch} | 2 +- ...-to-convert-between-Component-and-B.patch} | 0 ...awnEvent-fix-passed-parameter-issue.patch} | 4 +- ...acon-activation-deactivation-events.patch} | 0 ...dd-Channel-initialization-listeners.patch} | 2 +- ...mands-if-tab-completion-is-disabled.patch} | 0 .../0516-Add-more-WanderingTrader-API.patch} | 0 ...dd-EntityBlockStorage-clearEntities.patch} | 2 +- ...ssage-to-PlayerAdvancementDoneEvent.patch} | 0 .../0519-Add-HiddenPotionEffect-API.patch} | 0 .../0520-Inventory-close.patch} | 0 ...-in-sunlight-API-for-Phantoms-and-S.patch} | 8 +- .../0522-Add-basic-Datapack-API.patch} | 0 ...ment-variable-to-disable-server-gui.patch} | 4 +- ...24-Expand-PlayerGameModeChangeEvent.patch} | 14 +-- .../0525-ItemStack-repair-check-API.patch} | 2 +- .../0526-More-Enchantment-API.patch} | 0 ...ve-range-check-for-block-placing-up.patch} | 14 +-- .../0528-Add-Mob-lookAt-API.patch} | 0 ...f-bucket-dispenses-will-succeed-for.patch} | 2 +- ...0530-Add-Unix-domain-socket-support.patch} | 4 +- .../0531-Add-EntityInsideBlockEvent.patch} | 18 ++-- ...-Improve-item-default-attribute-API.patch} | 2 +- ...ause-to-Weather-ThunderChangeEvents.patch} | 10 +- .../0534-More-Lidded-Block-API.patch} | 0 ...35-Limit-item-frame-cursors-on-maps.patch} | 0 .../0536-Add-PlayerKickEvent-causes.patch} | 101 ++++++++---------- ...0537-Add-PufferFishStateChangeEvent.patch} | 0 ...erBucketEmptyEvent-result-itemstack.patch} | 0 ...tedContainer-instead-of-ThreadingDe.patch} | 0 ...-to-fix-items-merging-through-walls.patch} | 0 .../0541-Add-BellRevealRaiderEvent.patch} | 0 .../0542-Fix-invulnerable-end-crystals.patch} | 0 ...43-Add-ElderGuardianAppearanceEvent.patch} | 0 ...-Biome-Mob-Lookups-for-Mob-Spawning.patch} | 0 .../0545-Line-Of-Sight-Changes.patch} | 8 +- .../0546-add-per-world-spawn-limits.patch} | 2 +- .../0547-Fix-potions-splash-events.patch} | 0 .../0548-Add-more-LimitedRegion-API.patch} | 0 ...layerDropItemEvent-using-wrong-item.patch} | 6 +- .../0550-Missing-Entity-API.patch} | 20 ++-- ...of-Block-applyBoneMeal-always-being.patch} | 0 ...tChunkIfLoadedImmediately-in-places.patch} | 8 +- ...rom-signs-not-firing-command-events.patch} | 2 +- .../0554-Add-PlayerArmSwingEvent.patch} | 4 +- ...-event-leave-message-not-being-sent.patch} | 12 +-- ...-t-apply-cramming-damage-to-players.patch} | 8 +- ...d-timings-for-sensors-and-behaviors.patch} | 0 .../0558-Add-missing-forceDrop-toggles.patch} | 6 +- .../0559-Stinger-API.patch} | 2 +- .../0560-Add-System.out-err-catcher.patch} | 0 ...AFK-kick-while-watching-end-credits.patch} | 4 +- ...iting-of-comments-to-server.propert.patch} | 0 .../0563-Add-PlayerSetSpawnEvent.patch} | 10 +- ...rs-respect-inventory-max-stack-size.patch} | 0 ...ize-entity-tracker-passenger-checks.patch} | 2 +- ...-option-for-Piglins-guarding-chests.patch} | 0 .../0567-Add-EntityDamageItemEvent.patch} | 10 +- ...timize-indirect-passenger-iteration.patch} | 6 +- ...em-frame-map-cursor-update-interval.patch} | 2 +- ...arget-without-changing-other-things.patch} | 0 .../0571-Add-BlockBreakBlockEvent.patch} | 2 +- ...-data-components-copy-in-smithing-r.patch} | 0 .../0573-More-CommandBlock-API.patch} | 0 ...-missing-team-sidebar-display-slots.patch} | 0 ...0575-Add-back-EntityPortalExitEvent.patch} | 6 +- ...-find-targets-for-lightning-strikes.patch} | 8 +- .../0577-Get-entity-default-attributes.patch} | 2 +- .../0578-Left-handed-API.patch} | 0 .../0579-Add-more-advancement-API.patch} | 0 ...580-Add-ItemFactory-getSpawnEgg-API.patch} | 4 +- .../0581-Add-critical-damage-API.patch} | 10 +- ...0582-Fix-issues-with-mob-conversion.patch} | 0 ...Collision-methods-to-various-places.patch} | 0 .../0584-Goat-ram-API.patch} | 0 ...dd-API-for-resetting-a-single-score.patch} | 0 ...6-Add-Raw-Byte-Entity-Serialization.patch} | 6 +- ...87-Vanilla-command-permission-fixes.patch} | 0 ...logic-for-inventories-on-chunk-unlo.patch} | 12 +-- ...89-Fix-GameProfileCache-concurrency.patch} | 0 ...590-Improve-and-expand-AsyncCatcher.patch} | 10 +- ...per-mobcaps-and-paper-playermobcaps.patch} | 2 +- ...tize-ResourceLocation-error-logging.patch} | 0 ...lly-inline-methods-in-BlockPosition.patch} | 6 +- ...ler-threads-according-to-the-plugin.patch} | 0 ...-getChunkAt-has-inlined-logic-for-l.patch} | 4 +- ...our-chunk-data-off-disk-when-conver.patch} | 0 ...d-state-when-raytracing-skip-air-bl.patch} | 2 +- ...rimise-map-impl-for-tracked-players.patch} | 0 .../0599-Add-missing-InventoryType.patch} | 0 ...imise-BlockSoil-nearby-water-lookup.patch} | 0 ...ntory-not-closing-on-entity-removal.patch} | 4 +- ...rement-before-suggesting-root-nodes.patch} | 0 ...ServerboundCommandSuggestionPacket-.patch} | 4 +- .../0604-Add-packet-limiter-config.patch} | 2 +- ...nColor-on-tropical-fish-bucket-meta.patch} | 0 .../0606-Ensure-valid-vehicle-status.patch} | 4 +- ...ftlocked-end-exit-portal-generation.patch} | 0 ...r-causing-a-crash-when-trying-to-ge.patch} | 2 +- ...-t-log-debug-logging-being-disabled.patch} | 0 ...ous-menus-with-empty-level-accesses.patch} | 0 .../0611-Preserve-overstacked-loot.patch} | 0 ...ate-head-rotation-in-missing-places.patch} | 6 +- ...unintended-light-block-manipulation.patch} | 2 +- ...0614-Fix-CraftCriteria-defaults-map.patch} | 0 ...Fix-upstreams-block-state-factories.patch} | 4 +- .../0616-Configurable-feature-seeds.patch} | 4 +- .../0617-Add-root-admin-user-detection.patch} | 0 ...t-attempt-to-teleport-dead-entities.patch} | 4 +- ...ive-velocity-through-repeated-crits.patch} | 4 +- ...e-code-using-deprecated-for-removal.patch} | 4 +- .../0621-Fix-Spigot-growth-modifiers.patch} | 4 +- ...OpenersCounter-openCount-from-going.patch} | 0 ...0623-Add-PlayerItemFrameChangeEvent.patch} | 0 .../0624-Optimize-HashMapPalette.patch} | 0 ...-isSectionEmpty-int-and-optimize-Pa.patch} | 0 .../0626-Add-more-Campfire-API.patch} | 0 ...ard-CraftEntity-in-teleport-command.patch} | 6 +- .../0628-Improve-scoreboard-entries.patch} | 0 .../0629-Entity-powdered-snow-API.patch} | 0 ...0630-Add-API-for-item-entity-health.patch} | 0 ...ax-block-light-for-monster-spawning.patch} | 0 ...pistons-and-BlockPistonRetractEvent.patch} | 0 ...-canSmelt-methods-to-FurnaceInvento.patch} | 0 .../0634-Bucketable-API.patch} | 0 .../0635-Validate-usernames.patch} | 0 ...er-animal-spawn-height-configurable.patch} | 0 ...anilla-BiomeProvider-from-WorldInfo.patch} | 8 +- ...ion-for-worlds-affected-by-time-cmd.patch} | 4 +- ...heck-for-PersistentDataContainer-ha.patch} | 0 ...0-Multiple-Entries-with-Scoreboards.patch} | 0 ...641-Reset-placed-block-on-exception.patch} | 2 +- ...configurable-height-for-slime-spawn.patch} | 0 ...0643-Fix-xp-reward-for-baby-zombies.patch} | 0 ...lti-Block-Change-API-Implementation.patch} | 2 +- .../0645-Fix-NotePlayEvent.patch} | 0 .../0646-Freeze-Tick-Lock-API.patch} | 12 +-- .../0647-More-PotionEffectType-API.patch} | 0 ...for-StructureTemplate.Pallete-cache.patch} | 0 ...command-sender-which-forwards-feedb.patch} | 0 ...-missing-structure-set-seed-configs.patch} | 6 +- ...lled-powdered-snow-bucket-placement.patch} | 6 +- ...ate-calls-to-CraftServer-getSpawnLi.patch} | 0 .../0653-Add-GameEvent-tags.patch} | 0 ...ks-fairly-for-worlds-while-waiting-.patch} | 2 +- .../0655-Furnace-RecipesUsed-API.patch} | 2 +- ...gurable-sculk-sensor-listener-range.patch} | 0 .../0657-Add-missing-block-data-API.patch} | 42 ++++---- ...fault-CustomSpawners-in-custom-worl.patch} | 2 +- ...-worldlist-before-initing-the-world.patch} | 2 +- .../0660-Custom-Potion-Mixes.patch} | 18 ++-- ...61-Force-close-world-loading-screen.patch} | 0 ...662-Fix-falling-block-spawn-methods.patch} | 6 +- ...Expose-furnace-minecart-push-values.patch} | 0 ...ojectileHitEvent-for-piercing-arrow.patch} | 4 +- .../0665-More-Projectile-API.patch} | 10 +- ...x-swamp-hut-cat-generation-deadlock.patch} | 4 +- ...le-movement-from-players-while-tele.patch} | 6 +- ...0668-Implement-getComputedBiome-API.patch} | 0 .../0669-Make-some-itemstacks-nonnull.patch} | 0 ...670-Implement-enchantWithLevels-API.patch} | 4 +- .../0671-Fix-saving-in-unloadWorld.patch} | 0 .../0672-Buffer-OOB-setBlock-calls.patch} | 0 .../0673-Add-TameableDeathMessageEvent.patch} | 4 +- ...ock-data-for-EntityChangeBlockEvent.patch} | 14 +-- ...bles-running-when-mob-loot-gamerule.patch} | 4 +- ...ssenger-world-matches-ridden-entity.patch} | 4 +- ...ys-and-optimize-reference-Holder-ta.patch} | 0 ...low-changing-the-EnderDragon-podium.patch} | 4 +- ...erriding-a-block-entity-during-worl.patch} | 0 ...ead-of-display-name-in-PlayerList-g.patch} | 0 .../0681-Expand-PlayerItemDamageEvent.patch} | 4 +- .../0682-WorldCreator-keepSpawnLoaded.patch} | 0 ...-in-CraftPersistentDataTypeRegistry.patch} | 0 ...destroyed-trigger-in-the-correct-pl.patch} | 2 +- ...Event-and-CollarColorable-interface.patch} | 6 +- ...CauldronLevelChange-on-initial-fill.patch} | 0 ...snow-cauldrons-not-turning-to-water.patch} | 0 .../0688-Add-PlayerStopUsingItemEvent.patch} | 4 +- .../0689-Don-t-tick-markers.patch} | 4 +- .../0690-Expand-FallingBlock-API.patch} | 2 +- ...0691-Add-support-for-Proxy-Protocol.patch} | 4 +- ...x-OfflinePlayer-getBedSpawnLocation.patch} | 0 ...tory-for-smokers-and-blast-furnaces.patch} | 0 ...d-PlayerStonecutterRecipeSelectEvent.patch | 57 ---------- ...nt-tile-entity-copies-loading-chunks.patch | 24 ----- 263 files changed, 522 insertions(+), 539 deletions(-) rename patches/{unapplied/server/0447-Allow-disabling-mob-spawner-spawn-egg-transformation.patch => server/0446-Allow-disabling-mob-spawner-spawn-egg-transformation.patch} (77%) rename patches/{unapplied/server/0448-Fix-Not-a-string-Map-Conversion-spam.patch => server/0447-Fix-Not-a-string-Map-Conversion-spam.patch} (100%) rename patches/{unapplied/server/0449-Add-PlayerFlowerPotManipulateEvent.patch => server/0448-Add-PlayerFlowerPotManipulateEvent.patch} (92%) rename patches/{unapplied/server/0450-Fix-interact-event-not-being-called-sometimes.patch => server/0449-Fix-interact-event-not-being-called-sometimes.patch} (83%) rename patches/{unapplied/server/0451-Zombie-API-breaking-doors.patch => server/0450-Zombie-API-breaking-doors.patch} (100%) rename patches/{unapplied/server/0452-Fix-nerfed-slime-when-splitting.patch => server/0451-Fix-nerfed-slime-when-splitting.patch} (100%) rename patches/{unapplied/server/0453-Add-EntityLoadCrossbowEvent.patch => server/0452-Add-EntityLoadCrossbowEvent.patch} (94%) rename patches/{unapplied/server/0454-Add-WorldGameRuleChangeEvent.patch => server/0453-Add-WorldGameRuleChangeEvent.patch} (98%) rename patches/{unapplied/server/0455-Add-ServerResourcesReloadedEvent.patch => server/0454-Add-ServerResourcesReloadedEvent.patch} (97%) rename patches/{unapplied/server/0456-Add-world-settings-for-mobs-picking-up-loot.patch => server/0455-Add-world-settings-for-mobs-picking-up-loot.patch} (93%) rename patches/{unapplied/server/0457-Add-BlockFailedDispenseEvent.patch => server/0456-Add-BlockFailedDispenseEvent.patch} (96%) rename patches/{unapplied/server/0458-Add-PlayerLecternPageChangeEvent.patch => server/0457-Add-PlayerLecternPageChangeEvent.patch} (100%) rename patches/{unapplied/server/0459-Add-PlayerLoomPatternSelectEvent.patch => server/0458-Add-PlayerLoomPatternSelectEvent.patch} (100%) rename patches/{unapplied/server/0460-Configurable-door-breaking-difficulty.patch => server/0459-Configurable-door-breaking-difficulty.patch} (100%) rename patches/{unapplied/server/0461-Empty-commands-shall-not-be-dispatched.patch => server/0460-Empty-commands-shall-not-be-dispatched.patch} (100%) rename patches/{unapplied/server/0462-Remove-stale-POIs.patch => server/0461-Remove-stale-POIs.patch} (87%) rename patches/{unapplied/server/0463-Fix-villager-boat-exploit.patch => server/0462-Fix-villager-boat-exploit.patch} (100%) rename patches/{unapplied/server/0464-Add-sendOpLevel-API.patch => server/0463-Add-sendOpLevel-API.patch} (96%) rename patches/{unapplied/server/0465-Add-RegistryAccess-for-managing-Registries.patch => server/0464-Add-RegistryAccess-for-managing-Registries.patch} (99%) rename patches/{unapplied/server/0466-Add-StructuresLocateEvent.patch => server/0465-Add-StructuresLocateEvent.patch} (94%) rename patches/{unapplied/server/0467-Collision-option-for-requiring-a-player-participant.patch => server/0466-Collision-option-for-requiring-a-player-participant.patch} (92%) rename patches/{unapplied/server/0468-Return-chat-component-with-empty-text-instead-of-thr.patch => server/0467-Return-chat-component-with-empty-text-instead-of-thr.patch} (100%) rename patches/{unapplied/server/0469-Make-schedule-command-per-world.patch => server/0468-Make-schedule-command-per-world.patch} (100%) rename patches/{unapplied/server/0470-Configurable-max-leash-distance.patch => server/0469-Configurable-max-leash-distance.patch} (79%) rename patches/{unapplied/server/0471-Add-BlockPreDispenseEvent.patch => server/0470-Add-BlockPreDispenseEvent.patch} (97%) rename patches/{unapplied/server/0472-Add-PlayerChangeBeaconEffectEvent.patch => server/0471-Add-PlayerChangeBeaconEffectEvent.patch} (96%) rename patches/{unapplied/server/0473-Add-toggle-for-always-placing-the-dragon-egg.patch => server/0472-Add-toggle-for-always-placing-the-dragon-egg.patch} (100%) create mode 100644 patches/server/0473-Add-PlayerStonecutterRecipeSelectEvent.patch rename patches/{unapplied/server/0475-Expand-EntityUnleashEvent.patch => server/0474-Expand-EntityUnleashEvent.patch} (76%) rename patches/{unapplied/server/0476-Reset-shield-blocking-on-dimension-change.patch => server/0475-Reset-shield-blocking-on-dimension-change.patch} (86%) rename patches/{unapplied/server/0477-Add-DragonEggFormEvent.patch => server/0476-Add-DragonEggFormEvent.patch} (100%) rename patches/{unapplied/server/0478-Add-EntityMoveEvent.patch => server/0477-Add-EntityMoveEvent.patch} (89%) rename patches/{unapplied/server/0479-added-option-to-disable-pathfinding-updates-on-block.patch => server/0478-added-option-to-disable-pathfinding-updates-on-block.patch} (82%) rename patches/{unapplied/server/0480-Inline-shift-direction-fields.patch => server/0479-Inline-shift-direction-fields.patch} (95%) rename patches/{unapplied/server/0481-Allow-adding-items-to-BlockDropItemEvent.patch => server/0480-Allow-adding-items-to-BlockDropItemEvent.patch} (100%) rename patches/{unapplied/server/0482-Add-getMainThreadExecutor-to-BukkitScheduler.patch => server/0481-Add-getMainThreadExecutor-to-BukkitScheduler.patch} (100%) rename patches/{unapplied/server/0483-living-entity-allow-attribute-registration.patch => server/0482-living-entity-allow-attribute-registration.patch} (91%) rename patches/{unapplied/server/0484-fix-dead-slime-setSize-invincibility.patch => server/0483-fix-dead-slime-setSize-invincibility.patch} (100%) rename patches/{unapplied/server/0485-Merchant-getRecipes-should-return-an-immutable-list.patch => server/0484-Merchant-getRecipes-should-return-an-immutable-list.patch} (100%) rename patches/{unapplied/server/0486-Expose-Tracked-Players.patch => server/0485-Expose-Tracked-Players.patch} (100%) rename patches/{unapplied/server/0487-Improve-ServerGUI.patch => server/0486-Improve-ServerGUI.patch} (100%) rename patches/{unapplied/server/0488-fix-converting-txt-to-json-file.patch => server/0487-fix-converting-txt-to-json-file.patch} (100%) rename patches/{unapplied/server/0489-Add-worldborder-events.patch => server/0488-Add-worldborder-events.patch} (100%) rename patches/{unapplied/server/0490-Add-PlayerNameEntityEvent.patch => server/0489-Add-PlayerNameEntityEvent.patch} (93%) rename patches/{unapplied/server/0491-Add-recipe-to-cook-events.patch => server/0490-Add-recipe-to-cook-events.patch} (95%) rename patches/{unapplied/server/0492-Add-Block-isValidTool.patch => server/0491-Add-Block-isValidTool.patch} (100%) rename patches/{unapplied/server/0493-Allow-using-signs-inside-spawn-protection.patch => server/0492-Allow-using-signs-inside-spawn-protection.patch} (58%) rename patches/{unapplied/server/0494-Expand-world-key-API.patch => server/0493-Expand-world-key-API.patch} (97%) rename patches/{unapplied/server/0495-Add-fast-alternative-constructor-for-Rotations.patch => server/0494-Add-fast-alternative-constructor-for-Rotations.patch} (100%) rename patches/{unapplied/server/0496-Drop-carried-item-when-player-has-disconnected.patch => server/0495-Drop-carried-item-when-player-has-disconnected.patch} (100%) rename patches/{unapplied/server/0497-forced-whitelist-use-configurable-kick-message.patch => server/0496-forced-whitelist-use-configurable-kick-message.patch} (92%) rename patches/{unapplied/server/0498-Don-t-ignore-result-of-PlayerEditBookEvent.patch => server/0497-Don-t-ignore-result-of-PlayerEditBookEvent.patch} (87%) rename patches/{unapplied/server/0499-Expose-protocol-version.patch => server/0498-Expose-protocol-version.patch} (90%) rename patches/{unapplied/server/0500-Enhance-console-tab-completions-for-brigadier-comman.patch => server/0499-Enhance-console-tab-completions-for-brigadier-comman.patch} (100%) rename patches/{unapplied/server/0501-Fix-PlayerItemConsumeEvent-cancelling-properly.patch => server/0500-Fix-PlayerItemConsumeEvent-cancelling-properly.patch} (87%) rename patches/{unapplied/server/0502-Add-bypass-host-check.patch => server/0501-Add-bypass-host-check.patch} (100%) rename patches/{unapplied/server/0503-Set-area-affect-cloud-rotation.patch => server/0502-Set-area-affect-cloud-rotation.patch} (93%) rename patches/{unapplied/server/0504-add-isDeeplySleeping-to-HumanEntity.patch => server/0503-add-isDeeplySleeping-to-HumanEntity.patch} (100%) rename patches/{unapplied/server/0505-add-consumeFuel-to-FurnaceBurnEvent.patch => server/0504-add-consumeFuel-to-FurnaceBurnEvent.patch} (86%) rename patches/{unapplied/server/0506-add-get-set-drop-chance-to-EntityEquipment.patch => server/0505-add-get-set-drop-chance-to-EntityEquipment.patch} (100%) rename patches/{unapplied/server/0507-fix-PigZombieAngerEvent-cancellation.patch => server/0506-fix-PigZombieAngerEvent-cancellation.patch} (100%) rename patches/{unapplied/server/0508-fix-PlayerItemHeldEvent-firing-twice.patch => server/0507-fix-PlayerItemHeldEvent-firing-twice.patch} (88%) rename patches/{unapplied/server/0509-Add-PlayerDeepSleepEvent.patch => server/0508-Add-PlayerDeepSleepEvent.patch} (86%) rename patches/{unapplied/server/0510-More-World-API.patch => server/0509-More-World-API.patch} (96%) rename patches/{unapplied/server/0511-Add-PlayerBedFailEnterEvent.patch => server/0510-Add-PlayerBedFailEnterEvent.patch} (96%) rename patches/{unapplied/server/0512-Implement-methods-to-convert-between-Component-and-B.patch => server/0511-Implement-methods-to-convert-between-Component-and-B.patch} (100%) rename patches/{unapplied/server/0513-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch => server/0512-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch} (91%) rename patches/{unapplied/server/0514-Introduce-beacon-activation-deactivation-events.patch => server/0513-Introduce-beacon-activation-deactivation-events.patch} (100%) rename patches/{unapplied/server/0515-Add-Channel-initialization-listeners.patch => server/0514-Add-Channel-initialization-listeners.patch} (98%) rename patches/{unapplied/server/0516-Send-empty-commands-if-tab-completion-is-disabled.patch => server/0515-Send-empty-commands-if-tab-completion-is-disabled.patch} (100%) rename patches/{unapplied/server/0517-Add-more-WanderingTrader-API.patch => server/0516-Add-more-WanderingTrader-API.patch} (100%) rename patches/{unapplied/server/0518-Add-EntityBlockStorage-clearEntities.patch => server/0517-Add-EntityBlockStorage-clearEntities.patch} (94%) rename patches/{unapplied/server/0519-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch => server/0518-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch} (100%) rename patches/{unapplied/server/0520-Add-HiddenPotionEffect-API.patch => server/0519-Add-HiddenPotionEffect-API.patch} (100%) rename patches/{unapplied/server/0521-Inventory-close.patch => server/0520-Inventory-close.patch} (100%) rename patches/{unapplied/server/0522-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch => server/0521-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch} (94%) rename patches/{unapplied/server/0523-Add-basic-Datapack-API.patch => server/0522-Add-basic-Datapack-API.patch} (100%) rename patches/{unapplied/server/0524-Add-environment-variable-to-disable-server-gui.patch => server/0523-Add-environment-variable-to-disable-server-gui.patch} (86%) rename patches/{unapplied/server/0525-Expand-PlayerGameModeChangeEvent.patch => server/0524-Expand-PlayerGameModeChangeEvent.patch} (94%) rename patches/{unapplied/server/0526-ItemStack-repair-check-API.patch => server/0525-ItemStack-repair-check-API.patch} (96%) rename patches/{unapplied/server/0527-More-Enchantment-API.patch => server/0526-More-Enchantment-API.patch} (100%) rename patches/{unapplied/server/0528-Move-range-check-for-block-placing-up.patch => server/0527-Move-range-check-for-block-placing-up.patch} (60%) rename patches/{unapplied/server/0529-Add-Mob-lookAt-API.patch => server/0528-Add-Mob-lookAt-API.patch} (100%) rename patches/{unapplied/server/0530-Correctly-check-if-bucket-dispenses-will-succeed-for.patch => server/0529-Correctly-check-if-bucket-dispenses-will-succeed-for.patch} (96%) rename patches/{unapplied/server/0531-Add-Unix-domain-socket-support.patch => server/0530-Add-Unix-domain-socket-support.patch} (98%) rename patches/{unapplied/server/0532-Add-EntityInsideBlockEvent.patch => server/0531-Add-EntityInsideBlockEvent.patch} (96%) rename patches/{unapplied/server/0533-Improve-item-default-attribute-API.patch => server/0532-Improve-item-default-attribute-API.patch} (98%) rename patches/{unapplied/server/0534-Add-cause-to-Weather-ThunderChangeEvents.patch => server/0533-Add-cause-to-Weather-ThunderChangeEvents.patch} (94%) rename patches/{unapplied/server/0535-More-Lidded-Block-API.patch => server/0534-More-Lidded-Block-API.patch} (100%) rename patches/{unapplied/server/0536-Limit-item-frame-cursors-on-maps.patch => server/0535-Limit-item-frame-cursors-on-maps.patch} (100%) rename patches/{unapplied/server/0537-Add-PlayerKickEvent-causes.patch => server/0536-Add-PlayerKickEvent-causes.patch} (90%) rename patches/{unapplied/server/0538-Add-PufferFishStateChangeEvent.patch => server/0537-Add-PufferFishStateChangeEvent.patch} (100%) rename patches/{unapplied/server/0539-Fix-PlayerBucketEmptyEvent-result-itemstack.patch => server/0538-Fix-PlayerBucketEmptyEvent-result-itemstack.patch} (100%) rename patches/{unapplied/server/0540-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch => server/0539-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch} (100%) rename patches/{unapplied/server/0541-Add-option-to-fix-items-merging-through-walls.patch => server/0540-Add-option-to-fix-items-merging-through-walls.patch} (100%) rename patches/{unapplied/server/0542-Add-BellRevealRaiderEvent.patch => server/0541-Add-BellRevealRaiderEvent.patch} (100%) rename patches/{unapplied/server/0543-Fix-invulnerable-end-crystals.patch => server/0542-Fix-invulnerable-end-crystals.patch} (100%) rename patches/{unapplied/server/0544-Add-ElderGuardianAppearanceEvent.patch => server/0543-Add-ElderGuardianAppearanceEvent.patch} (100%) rename patches/{unapplied/server/0545-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch => server/0544-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch} (100%) rename patches/{unapplied/server/0546-Line-Of-Sight-Changes.patch => server/0545-Line-Of-Sight-Changes.patch} (92%) rename patches/{unapplied/server/0547-add-per-world-spawn-limits.patch => server/0546-add-per-world-spawn-limits.patch} (91%) rename patches/{unapplied/server/0548-Fix-potions-splash-events.patch => server/0547-Fix-potions-splash-events.patch} (100%) rename patches/{unapplied/server/0549-Add-more-LimitedRegion-API.patch => server/0548-Add-more-LimitedRegion-API.patch} (100%) rename patches/{unapplied/server/0550-Fix-PlayerDropItemEvent-using-wrong-item.patch => server/0549-Fix-PlayerDropItemEvent-using-wrong-item.patch} (93%) rename patches/{unapplied/server/0551-Missing-Entity-API.patch => server/0550-Missing-Entity-API.patch} (98%) rename patches/{unapplied/server/0552-Fix-return-value-of-Block-applyBoneMeal-always-being.patch => server/0551-Fix-return-value-of-Block-applyBoneMeal-always-being.patch} (100%) rename patches/{unapplied/server/0553-Use-getChunkIfLoadedImmediately-in-places.patch => server/0552-Use-getChunkIfLoadedImmediately-in-places.patch} (88%) rename patches/{unapplied/server/0554-Fix-commands-from-signs-not-firing-command-events.patch => server/0553-Fix-commands-from-signs-not-firing-command-events.patch} (98%) rename patches/{unapplied/server/0555-Add-PlayerArmSwingEvent.patch => server/0554-Add-PlayerArmSwingEvent.patch} (88%) rename patches/{unapplied/server/0556-Fix-kick-event-leave-message-not-being-sent.patch => server/0555-Fix-kick-event-leave-message-not-being-sent.patch} (95%) rename patches/{unapplied/server/0557-Don-t-apply-cramming-damage-to-players.patch => server/0556-Don-t-apply-cramming-damage-to-players.patch} (64%) rename patches/{unapplied/server/0558-Rate-options-and-timings-for-sensors-and-behaviors.patch => server/0557-Rate-options-and-timings-for-sensors-and-behaviors.patch} (100%) rename patches/{unapplied/server/0559-Add-missing-forceDrop-toggles.patch => server/0558-Add-missing-forceDrop-toggles.patch} (96%) rename patches/{unapplied/server/0560-Stinger-API.patch => server/0559-Stinger-API.patch} (95%) rename patches/{unapplied/server/0561-Add-System.out-err-catcher.patch => server/0560-Add-System.out-err-catcher.patch} (100%) rename patches/{unapplied/server/0562-Prevent-AFK-kick-while-watching-end-credits.patch => server/0561-Prevent-AFK-kick-while-watching-end-credits.patch} (90%) rename patches/{unapplied/server/0563-Allow-skipping-writing-of-comments-to-server.propert.patch => server/0562-Allow-skipping-writing-of-comments-to-server.propert.patch} (100%) rename patches/{unapplied/server/0564-Add-PlayerSetSpawnEvent.patch => server/0563-Add-PlayerSetSpawnEvent.patch} (97%) rename patches/{unapplied/server/0565-Make-hoppers-respect-inventory-max-stack-size.patch => server/0564-Make-hoppers-respect-inventory-max-stack-size.patch} (100%) rename patches/{unapplied/server/0566-Optimize-entity-tracker-passenger-checks.patch => server/0565-Optimize-entity-tracker-passenger-checks.patch} (90%) rename patches/{unapplied/server/0567-Config-option-for-Piglins-guarding-chests.patch => server/0566-Config-option-for-Piglins-guarding-chests.patch} (100%) rename patches/{unapplied/server/0568-Add-EntityDamageItemEvent.patch => server/0567-Add-EntityDamageItemEvent.patch} (94%) rename patches/{unapplied/server/0569-Optimize-indirect-passenger-iteration.patch => server/0568-Optimize-indirect-passenger-iteration.patch} (91%) rename patches/{unapplied/server/0570-Configurable-item-frame-map-cursor-update-interval.patch => server/0569-Configurable-item-frame-map-cursor-update-interval.patch} (93%) rename patches/{unapplied/server/0571-Change-EnderEye-target-without-changing-other-things.patch => server/0570-Change-EnderEye-target-without-changing-other-things.patch} (100%) rename patches/{unapplied/server/0572-Add-BlockBreakBlockEvent.patch => server/0571-Add-BlockBreakBlockEvent.patch} (98%) rename patches/{unapplied/server/0573-Option-to-prevent-data-components-copy-in-smithing-r.patch => server/0572-Option-to-prevent-data-components-copy-in-smithing-r.patch} (100%) rename patches/{unapplied/server/0574-More-CommandBlock-API.patch => server/0573-More-CommandBlock-API.patch} (100%) rename patches/{unapplied/server/0575-Add-missing-team-sidebar-display-slots.patch => server/0574-Add-missing-team-sidebar-display-slots.patch} (100%) rename patches/{unapplied/server/0576-Add-back-EntityPortalExitEvent.patch => server/0575-Add-back-EntityPortalExitEvent.patch} (93%) rename patches/{unapplied/server/0577-Add-methods-to-find-targets-for-lightning-strikes.patch => server/0576-Add-methods-to-find-targets-for-lightning-strikes.patch} (90%) rename patches/{unapplied/server/0578-Get-entity-default-attributes.patch => server/0577-Get-entity-default-attributes.patch} (98%) rename patches/{unapplied/server/0579-Left-handed-API.patch => server/0578-Left-handed-API.patch} (100%) rename patches/{unapplied/server/0580-Add-more-advancement-API.patch => server/0579-Add-more-advancement-API.patch} (100%) rename patches/{unapplied/server/0581-Add-ItemFactory-getSpawnEgg-API.patch => server/0580-Add-ItemFactory-getSpawnEgg-API.patch} (95%) rename patches/{unapplied/server/0582-Add-critical-damage-API.patch => server/0581-Add-critical-damage-API.patch} (94%) rename patches/{unapplied/server/0583-Fix-issues-with-mob-conversion.patch => server/0582-Fix-issues-with-mob-conversion.patch} (100%) rename patches/{unapplied/server/0584-Add-hasCollision-methods-to-various-places.patch => server/0583-Add-hasCollision-methods-to-various-places.patch} (100%) rename patches/{unapplied/server/0585-Goat-ram-API.patch => server/0584-Goat-ram-API.patch} (100%) rename patches/{unapplied/server/0586-Add-API-for-resetting-a-single-score.patch => server/0585-Add-API-for-resetting-a-single-score.patch} (100%) rename patches/{unapplied/server/0587-Add-Raw-Byte-Entity-Serialization.patch => server/0586-Add-Raw-Byte-Entity-Serialization.patch} (95%) rename patches/{unapplied/server/0588-Vanilla-command-permission-fixes.patch => server/0587-Vanilla-command-permission-fixes.patch} (100%) rename patches/{unapplied/server/0589-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch => server/0588-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch} (88%) rename patches/{unapplied/server/0590-Fix-GameProfileCache-concurrency.patch => server/0589-Fix-GameProfileCache-concurrency.patch} (100%) rename patches/{unapplied/server/0591-Improve-and-expand-AsyncCatcher.patch => server/0590-Improve-and-expand-AsyncCatcher.patch} (96%) rename patches/{unapplied/server/0592-Add-paper-mobcaps-and-paper-playermobcaps.patch => server/0591-Add-paper-mobcaps-and-paper-playermobcaps.patch} (99%) rename patches/{unapplied/server/0593-Sanitize-ResourceLocation-error-logging.patch => server/0592-Sanitize-ResourceLocation-error-logging.patch} (100%) rename patches/{unapplied/server/0594-Manually-inline-methods-in-BlockPosition.patch => server/0593-Manually-inline-methods-in-BlockPosition.patch} (92%) rename patches/{unapplied/server/0595-Name-craft-scheduler-threads-according-to-the-plugin.patch => server/0594-Name-craft-scheduler-threads-according-to-the-plugin.patch} (100%) rename patches/{unapplied/server/0596-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch => server/0595-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch} (90%) rename patches/{unapplied/server/0597-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch => server/0596-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch} (100%) rename patches/{unapplied/server/0598-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch => server/0597-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch} (94%) rename patches/{unapplied/server/0599-Oprimise-map-impl-for-tracked-players.patch => server/0598-Oprimise-map-impl-for-tracked-players.patch} (100%) rename patches/{unapplied/server/0600-Add-missing-InventoryType.patch => server/0599-Add-missing-InventoryType.patch} (100%) rename patches/{unapplied/server/0601-Optimise-BlockSoil-nearby-water-lookup.patch => server/0600-Optimise-BlockSoil-nearby-water-lookup.patch} (100%) rename patches/{unapplied/server/0602-Fix-merchant-inventory-not-closing-on-entity-removal.patch => server/0601-Fix-merchant-inventory-not-closing-on-entity-removal.patch} (90%) rename patches/{unapplied/server/0603-Check-requirement-before-suggesting-root-nodes.patch => server/0602-Check-requirement-before-suggesting-root-nodes.patch} (100%) rename patches/{unapplied/server/0604-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch => server/0603-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch} (86%) rename patches/{unapplied/server/0605-Add-packet-limiter-config.patch => server/0604-Add-packet-limiter-config.patch} (98%) rename patches/{unapplied/server/0606-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch => server/0605-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch} (100%) rename patches/{unapplied/server/0607-Ensure-valid-vehicle-status.patch => server/0606-Ensure-valid-vehicle-status.patch} (85%) rename patches/{unapplied/server/0608-Prevent-softlocked-end-exit-portal-generation.patch => server/0607-Prevent-softlocked-end-exit-portal-generation.patch} (100%) rename patches/{unapplied/server/0609-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch => server/0608-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch} (91%) rename patches/{unapplied/server/0610-Don-t-log-debug-logging-being-disabled.patch => server/0609-Don-t-log-debug-logging-being-disabled.patch} (100%) rename patches/{unapplied/server/0611-fix-various-menus-with-empty-level-accesses.patch => server/0610-fix-various-menus-with-empty-level-accesses.patch} (100%) rename patches/{unapplied/server/0612-Preserve-overstacked-loot.patch => server/0611-Preserve-overstacked-loot.patch} (100%) rename patches/{unapplied/server/0613-Update-head-rotation-in-missing-places.patch => server/0612-Update-head-rotation-in-missing-places.patch} (84%) rename patches/{unapplied/server/0614-prevent-unintended-light-block-manipulation.patch => server/0613-prevent-unintended-light-block-manipulation.patch} (94%) rename patches/{unapplied/server/0615-Fix-CraftCriteria-defaults-map.patch => server/0614-Fix-CraftCriteria-defaults-map.patch} (100%) rename patches/{unapplied/server/0616-Fix-upstreams-block-state-factories.patch => server/0615-Fix-upstreams-block-state-factories.patch} (99%) rename patches/{unapplied/server/0617-Configurable-feature-seeds.patch => server/0616-Configurable-feature-seeds.patch} (91%) rename patches/{unapplied/server/0618-Add-root-admin-user-detection.patch => server/0617-Add-root-admin-user-detection.patch} (100%) rename patches/{unapplied/server/0619-don-t-attempt-to-teleport-dead-entities.patch => server/0618-don-t-attempt-to-teleport-dead-entities.patch} (84%) rename patches/{unapplied/server/0620-Prevent-excessive-velocity-through-repeated-crits.patch => server/0619-Prevent-excessive-velocity-through-repeated-crits.patch} (92%) rename patches/{unapplied/server/0621-Remove-client-side-code-using-deprecated-for-removal.patch => server/0620-Remove-client-side-code-using-deprecated-for-removal.patch} (90%) rename patches/{unapplied/server/0622-Fix-Spigot-growth-modifiers.patch => server/0621-Fix-Spigot-growth-modifiers.patch} (97%) rename patches/{unapplied/server/0623-Prevent-ContainerOpenersCounter-openCount-from-going.patch => server/0622-Prevent-ContainerOpenersCounter-openCount-from-going.patch} (100%) rename patches/{unapplied/server/0624-Add-PlayerItemFrameChangeEvent.patch => server/0623-Add-PlayerItemFrameChangeEvent.patch} (100%) rename patches/{unapplied/server/0625-Optimize-HashMapPalette.patch => server/0624-Optimize-HashMapPalette.patch} (100%) rename patches/{unapplied/server/0626-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch => server/0625-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch} (100%) rename patches/{unapplied/server/0627-Add-more-Campfire-API.patch => server/0626-Add-more-Campfire-API.patch} (100%) rename patches/{unapplied/server/0628-Forward-CraftEntity-in-teleport-command.patch => server/0627-Forward-CraftEntity-in-teleport-command.patch} (88%) rename patches/{unapplied/server/0629-Improve-scoreboard-entries.patch => server/0628-Improve-scoreboard-entries.patch} (100%) rename patches/{unapplied/server/0630-Entity-powdered-snow-API.patch => server/0629-Entity-powdered-snow-API.patch} (100%) rename patches/{unapplied/server/0631-Add-API-for-item-entity-health.patch => server/0630-Add-API-for-item-entity-health.patch} (100%) rename patches/{unapplied/server/0632-Configurable-max-block-light-for-monster-spawning.patch => server/0631-Configurable-max-block-light-for-monster-spawning.patch} (100%) rename patches/{unapplied/server/0633-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch => server/0632-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch} (100%) rename patches/{unapplied/server/0634-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch => server/0633-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch} (100%) rename patches/{unapplied/server/0635-Bucketable-API.patch => server/0634-Bucketable-API.patch} (100%) rename patches/{unapplied/server/0636-Validate-usernames.patch => server/0635-Validate-usernames.patch} (100%) rename patches/{unapplied/server/0637-Make-water-animal-spawn-height-configurable.patch => server/0636-Make-water-animal-spawn-height-configurable.patch} (100%) rename patches/{unapplied/server/0638-Expose-vanilla-BiomeProvider-from-WorldInfo.patch => server/0637-Expose-vanilla-BiomeProvider-from-WorldInfo.patch} (96%) rename patches/{unapplied/server/0639-Add-config-option-for-worlds-affected-by-time-cmd.patch => server/0638-Add-config-option-for-worlds-affected-by-time-cmd.patch} (93%) rename patches/{unapplied/server/0640-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch => server/0639-Add-missing-IAE-check-for-PersistentDataContainer-ha.patch} (100%) rename patches/{unapplied/server/0641-Multiple-Entries-with-Scoreboards.patch => server/0640-Multiple-Entries-with-Scoreboards.patch} (100%) rename patches/{unapplied/server/0642-Reset-placed-block-on-exception.patch => server/0641-Reset-placed-block-on-exception.patch} (96%) rename patches/{unapplied/server/0643-Add-configurable-height-for-slime-spawn.patch => server/0642-Add-configurable-height-for-slime-spawn.patch} (100%) rename patches/{unapplied/server/0644-Fix-xp-reward-for-baby-zombies.patch => server/0643-Fix-xp-reward-for-baby-zombies.patch} (100%) rename patches/{unapplied/server/0645-Multi-Block-Change-API-Implementation.patch => server/0644-Multi-Block-Change-API-Implementation.patch} (97%) rename patches/{unapplied/server/0646-Fix-NotePlayEvent.patch => server/0645-Fix-NotePlayEvent.patch} (100%) rename patches/{unapplied/server/0647-Freeze-Tick-Lock-API.patch => server/0646-Freeze-Tick-Lock-API.patch} (89%) rename patches/{unapplied/server/0648-More-PotionEffectType-API.patch => server/0647-More-PotionEffectType-API.patch} (100%) rename patches/{unapplied/server/0649-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch => server/0648-Use-a-CHM-for-StructureTemplate.Pallete-cache.patch} (100%) rename patches/{unapplied/server/0650-API-for-creating-command-sender-which-forwards-feedb.patch => server/0649-API-for-creating-command-sender-which-forwards-feedb.patch} (100%) rename patches/{unapplied/server/0651-Add-missing-structure-set-seed-configs.patch => server/0650-Add-missing-structure-set-seed-configs.patch} (99%) rename patches/{unapplied/server/0652-Fix-cancelled-powdered-snow-bucket-placement.patch => server/0651-Fix-cancelled-powdered-snow-bucket-placement.patch} (89%) rename patches/{unapplied/server/0653-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch => server/0652-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch} (100%) rename patches/{unapplied/server/0654-Add-GameEvent-tags.patch => server/0653-Add-GameEvent-tags.patch} (100%) rename patches/{unapplied/server/0655-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch => server/0654-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch} (94%) rename patches/{unapplied/server/0656-Furnace-RecipesUsed-API.patch => server/0655-Furnace-RecipesUsed-API.patch} (96%) rename patches/{unapplied/server/0657-Configurable-sculk-sensor-listener-range.patch => server/0656-Configurable-sculk-sensor-listener-range.patch} (100%) rename patches/{unapplied/server/0658-Add-missing-block-data-API.patch => server/0657-Add-missing-block-data-API.patch} (94%) rename patches/{unapplied/server/0659-Option-to-have-default-CustomSpawners-in-custom-worl.patch => server/0658-Option-to-have-default-CustomSpawners-in-custom-worl.patch} (96%) rename patches/{unapplied/server/0660-Put-world-into-worldlist-before-initing-the-world.patch => server/0659-Put-world-into-worldlist-before-initing-the-world.patch} (95%) rename patches/{unapplied/server/0661-Custom-Potion-Mixes.patch => server/0660-Custom-Potion-Mixes.patch} (96%) rename patches/{unapplied/server/0662-Force-close-world-loading-screen.patch => server/0661-Force-close-world-loading-screen.patch} (100%) rename patches/{unapplied/server/0663-Fix-falling-block-spawn-methods.patch => server/0662-Fix-falling-block-spawn-methods.patch} (94%) rename patches/{unapplied/server/0664-Expose-furnace-minecart-push-values.patch => server/0663-Expose-furnace-minecart-push-values.patch} (100%) rename patches/{unapplied/server/0665-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch => server/0664-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch} (92%) rename patches/{unapplied/server/0666-More-Projectile-API.patch => server/0665-More-Projectile-API.patch} (99%) rename patches/{unapplied/server/0667-Fix-swamp-hut-cat-generation-deadlock.patch => server/0666-Fix-swamp-hut-cat-generation-deadlock.patch} (96%) rename patches/{unapplied/server/0668-Don-t-allow-vehicle-movement-from-players-while-tele.patch => server/0667-Don-t-allow-vehicle-movement-from-players-while-tele.patch} (85%) rename patches/{unapplied/server/0669-Implement-getComputedBiome-API.patch => server/0668-Implement-getComputedBiome-API.patch} (100%) rename patches/{unapplied/server/0670-Make-some-itemstacks-nonnull.patch => server/0669-Make-some-itemstacks-nonnull.patch} (100%) rename patches/{unapplied/server/0671-Implement-enchantWithLevels-API.patch => server/0670-Implement-enchantWithLevels-API.patch} (95%) rename patches/{unapplied/server/0672-Fix-saving-in-unloadWorld.patch => server/0671-Fix-saving-in-unloadWorld.patch} (100%) rename patches/{unapplied/server/0673-Buffer-OOB-setBlock-calls.patch => server/0672-Buffer-OOB-setBlock-calls.patch} (100%) rename patches/{unapplied/server/0674-Add-TameableDeathMessageEvent.patch => server/0673-Add-TameableDeathMessageEvent.patch} (89%) rename patches/{unapplied/server/0675-Fix-new-block-data-for-EntityChangeBlockEvent.patch => server/0674-Fix-new-block-data-for-EntityChangeBlockEvent.patch} (96%) rename patches/{unapplied/server/0676-fix-player-loottables-running-when-mob-loot-gamerule.patch => server/0675-fix-player-loottables-running-when-mob-loot-gamerule.patch} (89%) rename patches/{unapplied/server/0677-Ensure-entity-passenger-world-matches-ridden-entity.patch => server/0676-Ensure-entity-passenger-world-matches-ridden-entity.patch} (85%) rename patches/{unapplied/server/0678-Cache-resource-keys-and-optimize-reference-Holder-ta.patch => server/0677-Cache-resource-keys-and-optimize-reference-Holder-ta.patch} (100%) rename patches/{unapplied/server/0679-Allow-changing-the-EnderDragon-podium.patch => server/0678-Allow-changing-the-EnderDragon-podium.patch} (98%) rename patches/{unapplied/server/0680-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch => server/0679-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch} (100%) rename patches/{unapplied/server/0682-Use-username-instead-of-display-name-in-PlayerList-g.patch => server/0680-Use-username-instead-of-display-name-in-PlayerList-g.patch} (100%) rename patches/{unapplied/server/0683-Expand-PlayerItemDamageEvent.patch => server/0681-Expand-PlayerItemDamageEvent.patch} (90%) rename patches/{unapplied/server/0684-WorldCreator-keepSpawnLoaded.patch => server/0682-WorldCreator-keepSpawnLoaded.patch} (100%) rename patches/{unapplied/server/0685-Fix-CME-in-CraftPersistentDataTypeRegistry.patch => server/0683-Fix-CME-in-CraftPersistentDataTypeRegistry.patch} (100%) rename patches/{unapplied/server/0686-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch => server/0684-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch} (97%) rename patches/{unapplied/server/0687-Add-EntityDyeEvent-and-CollarColorable-interface.patch => server/0685-Add-EntityDyeEvent-and-CollarColorable-interface.patch} (91%) rename patches/{unapplied/server/0688-Fire-CauldronLevelChange-on-initial-fill.patch => server/0686-Fire-CauldronLevelChange-on-initial-fill.patch} (100%) rename patches/{unapplied/server/0689-fix-powder-snow-cauldrons-not-turning-to-water.patch => server/0687-fix-powder-snow-cauldrons-not-turning-to-water.patch} (100%) rename patches/{unapplied/server/0690-Add-PlayerStopUsingItemEvent.patch => server/0688-Add-PlayerStopUsingItemEvent.patch} (85%) rename patches/{unapplied/server/0691-Don-t-tick-markers.patch => server/0689-Don-t-tick-markers.patch} (93%) rename patches/{unapplied/server/0692-Expand-FallingBlock-API.patch => server/0690-Expand-FallingBlock-API.patch} (98%) rename patches/{unapplied/server/0693-Add-support-for-Proxy-Protocol.patch => server/0691-Add-support-for-Proxy-Protocol.patch} (97%) rename patches/{unapplied/server/0694-Fix-OfflinePlayer-getBedSpawnLocation.patch => server/0692-Fix-OfflinePlayer-getBedSpawnLocation.patch} (100%) rename patches/{unapplied/server/0695-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch => server/0693-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch} (100%) delete mode 100644 patches/unapplied/server/0474-Add-PlayerStonecutterRecipeSelectEvent.patch delete mode 100644 patches/unapplied/server/0681-Prevent-tile-entity-copies-loading-chunks.patch diff --git a/patches/server/0263-Don-t-allow-digging-into-unloaded-chunks.patch b/patches/server/0263-Don-t-allow-digging-into-unloaded-chunks.patch index 6f9db2ddeb..7603da369f 100644 --- a/patches/server/0263-Don-t-allow-digging-into-unloaded-chunks.patch +++ b/patches/server/0263-Don-t-allow-digging-into-unloaded-chunks.patch @@ -59,19 +59,19 @@ index 4c8189a2a7edea824545a24dccb376b8eceac001..4623c8acd125dff4919c4e2045b84831 this.level.destroyBlockProgress(this.player.getId(), pos, -1); diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index a87ea0f22b44c2fb67fd51bc8c9b0067aacac7de..1be04d0c910ebd58f2eededcdf81c94279d521c7 100644 +index a87ea0f22b44c2fb67fd51bc8c9b0067aacac7de..6ea2a25789fe7f90dae7e3de7966c88f39e929a8 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1668,6 +1668,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl case START_DESTROY_BLOCK: case ABORT_DESTROY_BLOCK: case STOP_DESTROY_BLOCK: -+ // Paper start - Don't allow digging into unloaded chunks -+ if (this.player.level().getChunkIfLoadedImmediately(blockposition.getX() >> 4, blockposition.getZ() >> 4) == null) { -+ this.player.connection.ackBlockChangesUpTo(packet.getSequence()); -+ return; -+ } -+ // Paper end - Don't allow digging into unloaded chunks ++ // Paper start - Don't allow digging into unloaded chunks ++ if (this.player.level().getChunkIfLoadedImmediately(blockposition.getX() >> 4, blockposition.getZ() >> 4) == null) { ++ this.player.connection.ackBlockChangesUpTo(packet.getSequence()); ++ return; ++ } ++ // Paper end - Don't allow digging into unloaded chunks this.player.gameMode.handleBlockBreakAction(blockposition, packetplayinblockdig_enumplayerdigtype, packet.getDirection(), this.player.level().getMaxY(), packet.getSequence()); this.player.connection.ackBlockChangesUpTo(packet.getSequence()); return; diff --git a/patches/server/0267-Book-size-limits.patch b/patches/server/0267-Book-size-limits.patch index e43d682a1b..2c4374aa7a 100644 --- a/patches/server/0267-Book-size-limits.patch +++ b/patches/server/0267-Book-size-limits.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Book size limits Puts some limits on the size of books. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 1be04d0c910ebd58f2eededcdf81c94279d521c7..ca0aa2acbc1316201d7a9c69e4aad8ffe4d61d83 100644 +index 6ea2a25789fe7f90dae7e3de7966c88f39e929a8..fb01e24ea6fd1d1f4beabb862c70332f92a80d78 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1117,6 +1117,44 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0274-Brigadier-Mojang-API.patch b/patches/server/0274-Brigadier-Mojang-API.patch index dcabb54ddb..9dc98d9edd 100644 --- a/patches/server/0274-Brigadier-Mojang-API.patch +++ b/patches/server/0274-Brigadier-Mojang-API.patch @@ -119,7 +119,7 @@ index 6212d94503023f7bb5ca21785cbb69babe4421c3..642d5c6849debc5a266605b0df30d552 if (commandnode2.canUse(source)) { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index ca0aa2acbc1316201d7a9c69e4aad8ffe4d61d83..c32dd209e751f8c0e8e73c91a9d4b2c21c59b883 100644 +index fb01e24ea6fd1d1f4beabb862c70332f92a80d78..ba10d147705d7d775999d94053cf47b5f481b905 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -778,19 +778,34 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0275-Limit-Client-Sign-length-more.patch b/patches/server/0275-Limit-Client-Sign-length-more.patch index 8e4daa3d06..808ca0937b 100644 --- a/patches/server/0275-Limit-Client-Sign-length-more.patch +++ b/patches/server/0275-Limit-Client-Sign-length-more.patch @@ -22,7 +22,7 @@ it only impacts data sent from the client. Set -DPaper.maxSignLength=XX to change limit or -1 to disable diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index c32dd209e751f8c0e8e73c91a9d4b2c21c59b883..969fee86d2422cbadfbce18d8bbaf72ff30b5c3d 100644 +index ba10d147705d7d775999d94053cf47b5f481b905..9f984834f3da2582f21172f2d52783ad3ff5c46d 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -310,6 +310,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0347-Prevent-teleporting-dead-entities.patch b/patches/server/0347-Prevent-teleporting-dead-entities.patch index 7582f1a3d6..7f2a2917af 100644 --- a/patches/server/0347-Prevent-teleporting-dead-entities.patch +++ b/patches/server/0347-Prevent-teleporting-dead-entities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Prevent teleporting dead entities diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 969fee86d2422cbadfbce18d8bbaf72ff30b5c3d..d754eda8e8111886e610bc68e8980b54b43eadb1 100644 +index 9f984834f3da2582f21172f2d52783ad3ff5c46d..e9e0a3d0958b309ca17322b11a6612be59ca41a6 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1625,6 +1625,13 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0362-Prevent-position-desync-causing-tp-exploit.patch b/patches/server/0362-Prevent-position-desync-causing-tp-exploit.patch index a3f9d5b3c7..4421a00963 100644 --- a/patches/server/0362-Prevent-position-desync-causing-tp-exploit.patch +++ b/patches/server/0362-Prevent-position-desync-causing-tp-exploit.patch @@ -13,7 +13,7 @@ behaviour, we need to move all of this dangerous logic outside of the move call and into an appropriate place in the tick method. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index d754eda8e8111886e610bc68e8980b54b43eadb1..7d7fff91beafd5cf67296efaa06308f1363585a0 100644 +index e9e0a3d0958b309ca17322b11a6612be59ca41a6..b7e3c15055681b916482503f6b2370b362863c9c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -1413,6 +1413,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0364-Add-PlayerRecipeBookClickEvent.patch b/patches/server/0364-Add-PlayerRecipeBookClickEvent.patch index abaa3fa71e..1bda25313e 100644 --- a/patches/server/0364-Add-PlayerRecipeBookClickEvent.patch +++ b/patches/server/0364-Add-PlayerRecipeBookClickEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerRecipeBookClickEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 7d7fff91beafd5cf67296efaa06308f1363585a0..a7d1b4d4668b90445e1cba786be74fbd069d3330 100644 +index b7e3c15055681b916482503f6b2370b362863c9c..71785d4b2204030dc718c10494840013d5ea72fa 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -201,6 +201,7 @@ import net.minecraft.world.phys.Vec3; diff --git a/patches/server/0366-Add-permission-for-command-blocks.patch b/patches/server/0366-Add-permission-for-command-blocks.patch index 604ac9cb23..88dc3a8c71 100644 --- a/patches/server/0366-Add-permission-for-command-blocks.patch +++ b/patches/server/0366-Add-permission-for-command-blocks.patch @@ -18,7 +18,7 @@ index 4623c8acd125dff4919c4e2045b848310d785da5..86e4559da2344f228ef4d1c4ac3c115f return false; } else if (this.player.blockActionRestricted(this.level, pos, this.gameModeForPlayer)) { diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index a7d1b4d4668b90445e1cba786be74fbd069d3330..1aec0f76636b1bdc5bb0b300690099ad341873e8 100644 +index 71785d4b2204030dc718c10494840013d5ea72fa..51e718812f2696f05824c735962aa885069d68e3 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -816,7 +816,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0368-Fix-Per-World-Difficulty-Remembering-Difficulty.patch b/patches/server/0368-Fix-Per-World-Difficulty-Remembering-Difficulty.patch index cf9db52420..329a3d31a9 100644 --- a/patches/server/0368-Fix-Per-World-Difficulty-Remembering-Difficulty.patch +++ b/patches/server/0368-Fix-Per-World-Difficulty-Remembering-Difficulty.patch @@ -76,7 +76,7 @@ index fe1975675189c6d1a63c42b7959fa40b5ac95ef8..9a3e73a5c206b78dfcf6f41a47b61434 @Override diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 1aec0f76636b1bdc5bb0b300690099ad341873e8..11f9853bd48cec693c99edb3d43f0356a0852d5e 100644 +index 51e718812f2696f05824c735962aa885069d68e3..20d7b673df5e2def564c9b0daee1e943d7522deb 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -3366,7 +3366,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0373-Do-not-accept-invalid-client-settings.patch b/patches/server/0373-Do-not-accept-invalid-client-settings.patch index c59997797f..5a6f7f0a1f 100644 --- a/patches/server/0373-Do-not-accept-invalid-client-settings.patch +++ b/patches/server/0373-Do-not-accept-invalid-client-settings.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Do not accept invalid client settings diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 11f9853bd48cec693c99edb3d43f0356a0852d5e..417930ad0ffe395e9211a6bf1e6c192af659471b 100644 +index 20d7b673df5e2def564c9b0daee1e943d7522deb..d30febf2f37f2b9c864184f272d5949cbe2dc1e8 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -3352,6 +3352,13 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0401-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch b/patches/server/0401-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch index fa6d3ee774..37e4591ad7 100644 --- a/patches/server/0401-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch +++ b/patches/server/0401-Fix-Entity-Teleportation-and-cancel-velocity-if-tele.patch @@ -9,7 +9,7 @@ as this is how Vanilla teleports entities. Cancel any pending motion when teleported. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 417930ad0ffe395e9211a6bf1e6c192af659471b..6f96f1522ae552940cf279194bd84630c3e4853c 100644 +index d30febf2f37f2b9c864184f272d5949cbe2dc1e8..748458bf569e7b96fd7cea6bd8a29d1735eb7d25 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -680,7 +680,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/server/0411-Fix-for-large-move-vectors-crashing-server.patch b/patches/server/0411-Fix-for-large-move-vectors-crashing-server.patch index c2cff41458..12c0f652ae 100644 --- a/patches/server/0411-Fix-for-large-move-vectors-crashing-server.patch +++ b/patches/server/0411-Fix-for-large-move-vectors-crashing-server.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix for large move vectors crashing server Check movement distance also based on current position. diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 6f96f1522ae552940cf279194bd84630c3e4853c..bfcf0a27ab8d90742b83e9c200f2ec867e2424fe 100644 +index 748458bf569e7b96fd7cea6bd8a29d1735eb7d25..8be41f7ea383a27331109813e04d807f38bf6736 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -499,9 +499,9 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @@ -33,7 +33,7 @@ index 6f96f1522ae552940cf279194bd84630c3e4853c..bfcf0a27ab8d90742b83e9c200f2ec86 + double currDeltaZ = toZ - fromZ; + double d10 = Math.max(d6 * d6 + d7 * d7 + d8 * d8, (currDeltaX * currDeltaX + currDeltaY * currDeltaY + currDeltaZ * currDeltaZ) - 1); + double otherFieldX = d3 - this.vehicleLastGoodX; -+ double otherFieldY = d4 - this.vehicleLastGoodY - 1.0E-6D; ++ double otherFieldY = d4 - this.vehicleLastGoodY; + double otherFieldZ = d5 - this.vehicleLastGoodZ; + d10 = Math.max(d10, (otherFieldX * otherFieldX + otherFieldY * otherFieldY + otherFieldZ * otherFieldZ) - 1); + // Paper end - fix large move vectors killing the server @@ -48,7 +48,7 @@ index 6f96f1522ae552940cf279194bd84630c3e4853c..bfcf0a27ab8d90742b83e9c200f2ec86 - d7 = d4 - this.vehicleLastGoodY; - d8 = d5 - this.vehicleLastGoodZ; + d6 = d3 - this.vehicleLastGoodX; // Paper - diff on change, used for checking large move vectors above -+ d7 = d4 - this.vehicleLastGoodY - 1.0E-6D; // Paper - diff on change, used for checking large move vectors above ++ d7 = d4 - this.vehicleLastGoodY; // Paper - diff on change, used for checking large move vectors above + d8 = d5 - this.vehicleLastGoodZ; // Paper - diff on change, used for checking large move vectors above boolean flag1 = entity.verticalCollisionBelow; diff --git a/patches/server/0435-Limit-recipe-packets.patch b/patches/server/0435-Limit-recipe-packets.patch index 66c9b8f393..f12a292853 100644 --- a/patches/server/0435-Limit-recipe-packets.patch +++ b/patches/server/0435-Limit-recipe-packets.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Limit recipe packets diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index bfcf0a27ab8d90742b83e9c200f2ec867e2424fe..65bc724ba824e4b65005f0886de768506a9b4160 100644 +index 8be41f7ea383a27331109813e04d807f38bf6736..bf4b64f07f21d816eb866d23b290c2f5e5471c70 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java @@ -279,6 +279,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl diff --git a/patches/unapplied/server/0447-Allow-disabling-mob-spawner-spawn-egg-transformation.patch b/patches/server/0446-Allow-disabling-mob-spawner-spawn-egg-transformation.patch similarity index 77% rename from patches/unapplied/server/0447-Allow-disabling-mob-spawner-spawn-egg-transformation.patch rename to patches/server/0446-Allow-disabling-mob-spawner-spawn-egg-transformation.patch index 893e6ffe60..140d605ba0 100644 --- a/patches/unapplied/server/0447-Allow-disabling-mob-spawner-spawn-egg-transformation.patch +++ b/patches/server/0446-Allow-disabling-mob-spawner-spawn-egg-transformation.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Allow disabling mob spawner spawn egg transformation diff --git a/src/main/java/net/minecraft/world/item/SpawnEggItem.java b/src/main/java/net/minecraft/world/item/SpawnEggItem.java -index ac35651e4f415243a0f84cca9a4f776b1f1623a5..9956ed42df55daa6d97fd6e3ab5368dad91cfaf0 100644 +index ecc3193b4276a083461780eddab9f7b1c34175a8..cc7e9b87e919b4ef8cf77cd780c890fd9a9cfa50 100644 --- a/src/main/java/net/minecraft/world/item/SpawnEggItem.java +++ b/src/main/java/net/minecraft/world/item/SpawnEggItem.java -@@ -68,6 +68,8 @@ public class SpawnEggItem extends Item { +@@ -63,6 +63,8 @@ public class SpawnEggItem extends Item { EntityType entitytypes; if (tileentity instanceof Spawner) { @@ -16,4 +16,4 @@ index ac35651e4f415243a0f84cca9a4f776b1f1623a5..9956ed42df55daa6d97fd6e3ab5368da + Spawner spawner = (Spawner) tileentity; - entitytypes = this.getType(itemstack); + entitytypes = this.getType(world.registryAccess(), itemstack); diff --git a/patches/unapplied/server/0448-Fix-Not-a-string-Map-Conversion-spam.patch b/patches/server/0447-Fix-Not-a-string-Map-Conversion-spam.patch similarity index 100% rename from patches/unapplied/server/0448-Fix-Not-a-string-Map-Conversion-spam.patch rename to patches/server/0447-Fix-Not-a-string-Map-Conversion-spam.patch diff --git a/patches/unapplied/server/0449-Add-PlayerFlowerPotManipulateEvent.patch b/patches/server/0448-Add-PlayerFlowerPotManipulateEvent.patch similarity index 92% rename from patches/unapplied/server/0449-Add-PlayerFlowerPotManipulateEvent.patch rename to patches/server/0448-Add-PlayerFlowerPotManipulateEvent.patch index 5b13a05793..8b8fb61ee2 100644 --- a/patches/unapplied/server/0449-Add-PlayerFlowerPotManipulateEvent.patch +++ b/patches/server/0448-Add-PlayerFlowerPotManipulateEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerFlowerPotManipulateEvent diff --git a/src/main/java/net/minecraft/world/level/block/FlowerPotBlock.java b/src/main/java/net/minecraft/world/level/block/FlowerPotBlock.java -index c6de1b6587b300404c38c27f566c80de11bc0814..bee71ed48365694c488af88317a738fc6a4e5893 100644 +index 4c7723b9f369391ab253c4a60510e318fb7cfce3..f45a8741e6707f033b0205eee03c59aa889565e1 100644 --- a/src/main/java/net/minecraft/world/level/block/FlowerPotBlock.java +++ b/src/main/java/net/minecraft/world/level/block/FlowerPotBlock.java -@@ -61,6 +61,18 @@ public class FlowerPotBlock extends Block { +@@ -63,6 +63,18 @@ public class FlowerPotBlock extends Block { } else if (!this.isEmpty()) { return InteractionResult.CONSUME; } else { @@ -27,7 +27,7 @@ index c6de1b6587b300404c38c27f566c80de11bc0814..bee71ed48365694c488af88317a738fc world.setBlock(pos, blockState, 3); world.gameEvent(player, GameEvent.BLOCK_CHANGE, pos); player.awardStat(Stats.POT_FLOWER); -@@ -75,6 +87,18 @@ public class FlowerPotBlock extends Block { +@@ -77,6 +89,18 @@ public class FlowerPotBlock extends Block { return InteractionResult.CONSUME; } else { ItemStack itemStack = new ItemStack(this.potted); diff --git a/patches/unapplied/server/0450-Fix-interact-event-not-being-called-sometimes.patch b/patches/server/0449-Fix-interact-event-not-being-called-sometimes.patch similarity index 83% rename from patches/unapplied/server/0450-Fix-interact-event-not-being-called-sometimes.patch rename to patches/server/0449-Fix-interact-event-not-being-called-sometimes.patch index 72c54e87a3..3c9078dd88 100644 --- a/patches/unapplied/server/0450-Fix-interact-event-not-being-called-sometimes.patch +++ b/patches/server/0449-Fix-interact-event-not-being-called-sometimes.patch @@ -11,19 +11,19 @@ Subject: [PATCH] Fix interact event not being called sometimes Co-authored-by: Moulberry diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index f2c1893677004b1699beb16ebfcbe9816aad2a78..03e87e35f4478d948602569c319a7b5a0e938cd5 100644 +index bf4b64f07f21d816eb866d23b290c2f5e5471c70..3d4ab22077eb358168b2959c3d1beb10b7104ab7 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1785,7 +1785,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - } else if (enuminteractionresult instanceof InteractionResult.Success) { - InteractionResult.Success enuminteractionresult_d = (InteractionResult.Success) enuminteractionresult; +@@ -1842,7 +1842,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl + } else if (enuminteractionresult instanceof InteractionResult.Success) { + InteractionResult.Success enuminteractionresult_d = (InteractionResult.Success) enuminteractionresult; -- if (enuminteractionresult_d.swingSource() == InteractionResult.SwingSource.SERVER) { +- if (enuminteractionresult_d.swingSource() == InteractionResult.SwingSource.SERVER) { + if (enuminteractionresult_d.swingSource() == InteractionResult.SwingSource.SERVER && !this.player.gameMode.interactResult) { - this.player.swing(enumhand, true); + this.player.swing(enumhand, true); + } } - } -@@ -2406,13 +2406,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2466,13 +2466,20 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl double d3 = Math.max(this.player.blockInteractionRange(), this.player.entityInteractionRange()); // SPIGOT-5607: Only call interact event if no block or entity is being clicked. Use bukkit ray trace method, because it handles blocks and entities at the same time // SPIGOT-7429: Make sure to call PlayerInteractEvent for spectators and non-pickable entities diff --git a/patches/unapplied/server/0451-Zombie-API-breaking-doors.patch b/patches/server/0450-Zombie-API-breaking-doors.patch similarity index 100% rename from patches/unapplied/server/0451-Zombie-API-breaking-doors.patch rename to patches/server/0450-Zombie-API-breaking-doors.patch diff --git a/patches/unapplied/server/0452-Fix-nerfed-slime-when-splitting.patch b/patches/server/0451-Fix-nerfed-slime-when-splitting.patch similarity index 100% rename from patches/unapplied/server/0452-Fix-nerfed-slime-when-splitting.patch rename to patches/server/0451-Fix-nerfed-slime-when-splitting.patch diff --git a/patches/unapplied/server/0453-Add-EntityLoadCrossbowEvent.patch b/patches/server/0452-Add-EntityLoadCrossbowEvent.patch similarity index 94% rename from patches/unapplied/server/0453-Add-EntityLoadCrossbowEvent.patch rename to patches/server/0452-Add-EntityLoadCrossbowEvent.patch index 72ec5141a0..be830ab067 100644 --- a/patches/unapplied/server/0453-Add-EntityLoadCrossbowEvent.patch +++ b/patches/server/0452-Add-EntityLoadCrossbowEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add EntityLoadCrossbowEvent diff --git a/src/main/java/net/minecraft/world/item/CrossbowItem.java b/src/main/java/net/minecraft/world/item/CrossbowItem.java -index 710181cf04563f06690eee5b46a5a0d84844ac29..52c40eafc77e50a6fd21b9a7a250cea501f11690 100644 +index a81e2f1e5abc20a95c562c1b9b1f7af489eaaaab..be1902a307a54434644b242b429ad47c271d2a0c 100644 --- a/src/main/java/net/minecraft/world/item/CrossbowItem.java +++ b/src/main/java/net/minecraft/world/item/CrossbowItem.java -@@ -89,7 +89,14 @@ public class CrossbowItem extends ProjectileWeaponItem { +@@ -90,7 +90,14 @@ public class CrossbowItem extends ProjectileWeaponItem { public boolean releaseUsing(ItemStack stack, Level world, LivingEntity user, int remainingUseTicks) { int i = this.getUseDuration(stack, user) - remainingUseTicks; float f = getPowerForTime(i, stack, user); @@ -24,7 +24,7 @@ index 710181cf04563f06690eee5b46a5a0d84844ac29..52c40eafc77e50a6fd21b9a7a250cea5 CrossbowItem.ChargingSounds chargingSounds = this.getChargingSounds(stack); chargingSounds.end() .ifPresent( -@@ -110,8 +117,14 @@ public class CrossbowItem extends ProjectileWeaponItem { +@@ -111,8 +118,14 @@ public class CrossbowItem extends ProjectileWeaponItem { } } diff --git a/patches/unapplied/server/0454-Add-WorldGameRuleChangeEvent.patch b/patches/server/0453-Add-WorldGameRuleChangeEvent.patch similarity index 98% rename from patches/unapplied/server/0454-Add-WorldGameRuleChangeEvent.patch rename to patches/server/0453-Add-WorldGameRuleChangeEvent.patch index a2d6d932ee..a35834efa7 100644 --- a/patches/unapplied/server/0454-Add-WorldGameRuleChangeEvent.patch +++ b/patches/server/0453-Add-WorldGameRuleChangeEvent.patch @@ -64,7 +64,7 @@ index 7ea92a0b0f5d4eb6bd873e61c42bc0499d5d2028..09299e45552eb998fd02123c3921c065 public int get() { diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 8d2d5cae4de522676cc4764f8b36f93744f3c890..8fc7192b8eb56fb1411391153e37ae654af9b68e 100644 +index b877904bd18c96a4a7e49fb3e1aba2b6109f15cd..69464a4fe467128121fe1a9ba08c9c7154e22c7f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1884,9 +1884,14 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/unapplied/server/0455-Add-ServerResourcesReloadedEvent.patch b/patches/server/0454-Add-ServerResourcesReloadedEvent.patch similarity index 97% rename from patches/unapplied/server/0455-Add-ServerResourcesReloadedEvent.patch rename to patches/server/0454-Add-ServerResourcesReloadedEvent.patch index 11f184335e..b6ef8ff126 100644 --- a/patches/unapplied/server/0455-Add-ServerResourcesReloadedEvent.patch +++ b/patches/server/0454-Add-ServerResourcesReloadedEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add ServerResourcesReloadedEvent diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 8364a52db57b43ba503cb8109c35a261de347109..6a10ef4f5e6d19ffbadd43cb3a606084b69b5ce9 100644 +index c036c391172ffb4b14b7a5f77776a68e3670775c..d6fe710a4e3784ba38776a0496eac7fa702aed88 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -2150,7 +2150,13 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { this.getServer().execute(() -> { diff --git a/patches/unapplied/server/0463-Fix-villager-boat-exploit.patch b/patches/server/0462-Fix-villager-boat-exploit.patch similarity index 100% rename from patches/unapplied/server/0463-Fix-villager-boat-exploit.patch rename to patches/server/0462-Fix-villager-boat-exploit.patch diff --git a/patches/unapplied/server/0464-Add-sendOpLevel-API.patch b/patches/server/0463-Add-sendOpLevel-API.patch similarity index 96% rename from patches/unapplied/server/0464-Add-sendOpLevel-API.patch rename to patches/server/0463-Add-sendOpLevel-API.patch index 266bf11160..44d11dcef6 100644 --- a/patches/unapplied/server/0464-Add-sendOpLevel-API.patch +++ b/patches/server/0463-Add-sendOpLevel-API.patch @@ -32,7 +32,7 @@ index fbe10666c4ec6caa95aa38a6f99ccca700e9a4d2..061bba184c8bc2569ce1d413435ec136 public boolean isWhiteListed(GameProfile profile) { diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 0ec00d64947359c08d2315ebaebd76aee548b512..a9ba1ae986985e1af132e651059d4aee261779a3 100644 +index 0aaea6091c5828782ed606d250423f3d75b9b27f..c93ec7e97c9af44ed75e7ea4fb1c6c58c2b6bc1a 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -684,6 +684,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/unapplied/server/0465-Add-RegistryAccess-for-managing-Registries.patch b/patches/server/0464-Add-RegistryAccess-for-managing-Registries.patch similarity index 99% rename from patches/unapplied/server/0465-Add-RegistryAccess-for-managing-Registries.patch rename to patches/server/0464-Add-RegistryAccess-for-managing-Registries.patch index 721db48bdb..9c82b85992 100644 --- a/patches/unapplied/server/0465-Add-RegistryAccess-for-managing-Registries.patch +++ b/patches/server/0464-Add-RegistryAccess-for-managing-Registries.patch @@ -761,10 +761,10 @@ index 3f72e30b57fb2a4231e22a2234729408c1240af4..4638ba98dbbdb0f880337347be85a6e0 LOADERS.put(resourceLocation, () -> initializer.run(registry)); WRITABLE_REGISTRY.register((ResourceKey)key, registry, RegistrationInfo.BUILT_IN); // Paper - decompile fix diff --git a/src/main/java/net/minecraft/resources/RegistryDataLoader.java b/src/main/java/net/minecraft/resources/RegistryDataLoader.java -index a75f6fefdd72188fa8d16df2b5cbb34c4129f52d..61774165a25209ee6d26cf8d80149b220c3874e6 100644 +index b9b9ec93442423e99def9b2c51aedc955a7799d5..b8c1840eeda982c0c6350e49fae2784a599ef3ce 100644 --- a/src/main/java/net/minecraft/resources/RegistryDataLoader.java +++ b/src/main/java/net/minecraft/resources/RegistryDataLoader.java -@@ -351,6 +351,7 @@ public class RegistryDataLoader { +@@ -349,6 +349,7 @@ public class RegistryDataLoader { RegistryDataLoader.Loader create(Lifecycle lifecycle, Map, Exception> errors) { WritableRegistry writableRegistry = new MappedRegistry<>(this.key, lifecycle); @@ -773,7 +773,7 @@ index a75f6fefdd72188fa8d16df2b5cbb34c4129f52d..61774165a25209ee6d26cf8d80149b22 } diff --git a/src/main/java/net/minecraft/server/ReloadableServerRegistries.java b/src/main/java/net/minecraft/server/ReloadableServerRegistries.java -index 8e8d6214adbd21a221147f0fc0d91cd9c06a080c..6fddef967b6314ca0158f5bd4b8898670ea5e9ec 100644 +index 257cfce009fb6fcd24d1fddfd8001e9b2a8ae1ae..185752185549ebd5f431932b63d8e5fea50a2cb2 100644 --- a/src/main/java/net/minecraft/server/ReloadableServerRegistries.java +++ b/src/main/java/net/minecraft/server/ReloadableServerRegistries.java @@ -64,6 +64,7 @@ public class ReloadableServerRegistries { @@ -782,8 +782,8 @@ index 8e8d6214adbd21a221147f0fc0d91cd9c06a080c..6fddef967b6314ca0158f5bd4b889867 WritableRegistry writableRegistry = new MappedRegistry<>(type.registryKey(), Lifecycle.experimental()); + io.papermc.paper.registry.PaperRegistryAccess.instance().registerReloadableRegistry(type.registryKey(), writableRegistry); // Paper - register reloadable registry Map map = new HashMap<>(); - String string = Registries.elementsDirPath(type.registryKey()); - SimpleJsonResourceReloadListener.scanDirectory(resourceManager, string, ops, type.codec(), map); + SimpleJsonResourceReloadListener.scanDirectory(resourceManager, type.registryKey(), ops, type.codec(), map); + map.forEach((id, value) -> writableRegistry.register(ResourceKey.create(type.registryKey(), id), (T)value, DEFAULT_REGISTRATION_INFO)); diff --git a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java b/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java index 0d091c7b328fb70a82f5b5ded7dec61b7cd3d59a..249f0dcad04a35244da6dab837a461bb42aad00a 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftRegistry.java diff --git a/patches/unapplied/server/0466-Add-StructuresLocateEvent.patch b/patches/server/0465-Add-StructuresLocateEvent.patch similarity index 94% rename from patches/unapplied/server/0466-Add-StructuresLocateEvent.patch rename to patches/server/0465-Add-StructuresLocateEvent.patch index 5556e96212..6f3d0638ff 100644 --- a/patches/unapplied/server/0466-Add-StructuresLocateEvent.patch +++ b/patches/server/0465-Add-StructuresLocateEvent.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Add StructuresLocateEvent Co-authored-by: Jake Potrebic diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -index 115deba41ec48143570489e8494785a3a48cd789..e3c5a49611d584fbd19a44da5aa78ff6d7c43881 100644 +index 0acf8b62ddb5e005f8f861558934e8afc8673725..416b1afcbab093f45900a4d55708609ba5a7de7a 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -@@ -126,6 +126,24 @@ public abstract class ChunkGenerator { +@@ -127,6 +127,24 @@ public abstract class ChunkGenerator { @Nullable public Pair> findNearestMapStructure(ServerLevel world, HolderSet structures, BlockPos center, int radius, boolean skipReferencedStructures) { diff --git a/patches/unapplied/server/0467-Collision-option-for-requiring-a-player-participant.patch b/patches/server/0466-Collision-option-for-requiring-a-player-participant.patch similarity index 92% rename from patches/unapplied/server/0467-Collision-option-for-requiring-a-player-participant.patch rename to patches/server/0466-Collision-option-for-requiring-a-player-participant.patch index 407fffe0af..c5dba4f028 100644 --- a/patches/unapplied/server/0467-Collision-option-for-requiring-a-player-participant.patch +++ b/patches/server/0466-Collision-option-for-requiring-a-player-participant.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Collision option for requiring a player participant diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index e08d20b65fdea46be94228b4b10ba1cb7b3beeb6..0832d43ca1be2581bcda9fc32d3359689d8c0384 100644 +index 341cfedfb06ac0a18b8cca1df5aa4f72b1455737..e556788a7c5e38c6ed293d566f75ef6501b7464c 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2025,6 +2025,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2048,6 +2048,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess public void push(Entity entity) { if (!this.isPassengerOfSameVehicle(entity)) { if (!entity.noPhysics && !this.noPhysics) { @@ -17,7 +17,7 @@ index e08d20b65fdea46be94228b4b10ba1cb7b3beeb6..0832d43ca1be2581bcda9fc32d335968 double d1 = entity.getZ() - this.getZ(); double d2 = Mth.absMax(d0, d1); diff --git a/src/main/java/net/minecraft/world/entity/vehicle/AbstractBoat.java b/src/main/java/net/minecraft/world/entity/vehicle/AbstractBoat.java -index a9661ab34bc98c19d525eb4b60b1f0d05d73241e..3590f4bc1af829cdb6e0cfdc8fa6857197b9219e 100644 +index e2bbb4b519010cbabc0796c5b2f749b4fac32bb7..8a5b3ebc875e5c71ca0d57a52e01b74cfee408b6 100644 --- a/src/main/java/net/minecraft/world/entity/vehicle/AbstractBoat.java +++ b/src/main/java/net/minecraft/world/entity/vehicle/AbstractBoat.java @@ -196,6 +196,7 @@ public abstract class AbstractBoat extends VehicleEntity implements Leashable { diff --git a/patches/unapplied/server/0468-Return-chat-component-with-empty-text-instead-of-thr.patch b/patches/server/0467-Return-chat-component-with-empty-text-instead-of-thr.patch similarity index 100% rename from patches/unapplied/server/0468-Return-chat-component-with-empty-text-instead-of-thr.patch rename to patches/server/0467-Return-chat-component-with-empty-text-instead-of-thr.patch diff --git a/patches/unapplied/server/0469-Make-schedule-command-per-world.patch b/patches/server/0468-Make-schedule-command-per-world.patch similarity index 100% rename from patches/unapplied/server/0469-Make-schedule-command-per-world.patch rename to patches/server/0468-Make-schedule-command-per-world.patch diff --git a/patches/unapplied/server/0470-Configurable-max-leash-distance.patch b/patches/server/0469-Configurable-max-leash-distance.patch similarity index 79% rename from patches/unapplied/server/0470-Configurable-max-leash-distance.patch rename to patches/server/0469-Configurable-max-leash-distance.patch index 625e1c156b..39054ac60f 100644 --- a/patches/unapplied/server/0470-Configurable-max-leash-distance.patch +++ b/patches/server/0469-Configurable-max-leash-distance.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Configurable max leash distance diff --git a/src/main/java/net/minecraft/world/entity/Leashable.java b/src/main/java/net/minecraft/world/entity/Leashable.java -index e53c3b53ea9c0932f0f049bf76f1f6de0432506a..dc39ecc3e1aada638337d31bfe68b400c6454af7 100644 +index 4692704b58d1b73a45f1d587782dc706da94a6e6..5e67402340a81a965b0b3af88307d36500c2dc6b 100644 --- a/src/main/java/net/minecraft/world/entity/Leashable.java +++ b/src/main/java/net/minecraft/world/entity/Leashable.java -@@ -180,7 +180,7 @@ public interface Leashable { +@@ -201,7 +201,7 @@ public interface Leashable { return; } @@ -18,15 +18,15 @@ index e53c3b53ea9c0932f0f049bf76f1f6de0432506a..dc39ecc3e1aada638337d31bfe68b400 } else if ((double) f > 6.0D) { ((Leashable) entity).elasticRangeLeashBehaviour(entity1, f); diff --git a/src/main/java/net/minecraft/world/entity/TamableAnimal.java b/src/main/java/net/minecraft/world/entity/TamableAnimal.java -index f239ab65d914ee9ec819e112f0a0466a06a77929..d2785628368b65854b6e1f35005c478d490a2f8c 100644 +index 144ef3cc71bb265646e48f3a5f10d971b5768154..9c6e2124da7c2358d2d524c52d3e77422f15f6e5 100644 --- a/src/main/java/net/minecraft/world/entity/TamableAnimal.java +++ b/src/main/java/net/minecraft/world/entity/TamableAnimal.java -@@ -98,7 +98,7 @@ public abstract class TamableAnimal extends Animal implements OwnableEntity { +@@ -101,7 +101,7 @@ public abstract class TamableAnimal extends Animal implements OwnableEntity { @Override public boolean handleLeashAtDistance(Entity leashHolder, float distance) { if (this.isInSittingPose()) { - if (distance > 10.0F) { + if (distance > (float) this.level().paperConfig().misc.maxLeashDistance.or(Leashable.LEASH_TOO_FAR_DIST)) { // Paper - Configurable max leash distance - this.dropLeash(true, true); + this.dropLeash(); } diff --git a/patches/unapplied/server/0471-Add-BlockPreDispenseEvent.patch b/patches/server/0470-Add-BlockPreDispenseEvent.patch similarity index 97% rename from patches/unapplied/server/0471-Add-BlockPreDispenseEvent.patch rename to patches/server/0470-Add-BlockPreDispenseEvent.patch index 58c12a1348..f2725046a1 100644 --- a/patches/unapplied/server/0471-Add-BlockPreDispenseEvent.patch +++ b/patches/server/0470-Add-BlockPreDispenseEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add BlockPreDispenseEvent diff --git a/src/main/java/net/minecraft/world/level/block/DispenserBlock.java b/src/main/java/net/minecraft/world/level/block/DispenserBlock.java -index f4853a5ff8a45efcda2d7781c1fa897c47d8ea46..a02f24448b002824b068278fa427003008c0d0f1 100644 +index d915ef1030728a3f6ff303977784097b712238d4..6a8e0df7d0150ad8dbbffcd5f49c4623a259e680 100644 --- a/src/main/java/net/minecraft/world/level/block/DispenserBlock.java +++ b/src/main/java/net/minecraft/world/level/block/DispenserBlock.java @@ -107,6 +107,7 @@ public class DispenserBlock extends BaseEntityBlock { diff --git a/patches/unapplied/server/0472-Add-PlayerChangeBeaconEffectEvent.patch b/patches/server/0471-Add-PlayerChangeBeaconEffectEvent.patch similarity index 96% rename from patches/unapplied/server/0472-Add-PlayerChangeBeaconEffectEvent.patch rename to patches/server/0471-Add-PlayerChangeBeaconEffectEvent.patch index 0b8263f96e..f8164b3839 100644 --- a/patches/unapplied/server/0472-Add-PlayerChangeBeaconEffectEvent.patch +++ b/patches/server/0471-Add-PlayerChangeBeaconEffectEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerChangeBeaconEffectEvent diff --git a/src/main/java/net/minecraft/world/inventory/BeaconMenu.java b/src/main/java/net/minecraft/world/inventory/BeaconMenu.java -index a191cef8037d94c7e93f79b86fc26ebefae95d8f..cad0b581c992edc5cd312a727695a443e26e96d8 100644 +index cb063d6e7f4d34eab3a5f52b11f671e0c99bbd40..c257660c79516a5919032b771fc3ac9575e9db9d 100644 --- a/src/main/java/net/minecraft/world/inventory/BeaconMenu.java +++ b/src/main/java/net/minecraft/world/inventory/BeaconMenu.java @@ -157,12 +157,25 @@ public class BeaconMenu extends AbstractContainerMenu { diff --git a/patches/unapplied/server/0473-Add-toggle-for-always-placing-the-dragon-egg.patch b/patches/server/0472-Add-toggle-for-always-placing-the-dragon-egg.patch similarity index 100% rename from patches/unapplied/server/0473-Add-toggle-for-always-placing-the-dragon-egg.patch rename to patches/server/0472-Add-toggle-for-always-placing-the-dragon-egg.patch diff --git a/patches/server/0473-Add-PlayerStonecutterRecipeSelectEvent.patch b/patches/server/0473-Add-PlayerStonecutterRecipeSelectEvent.patch new file mode 100644 index 0000000000..66c297aace --- /dev/null +++ b/patches/server/0473-Add-PlayerStonecutterRecipeSelectEvent.patch @@ -0,0 +1,57 @@ +From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 +From: Jake Potrebic +Date: Fri, 27 Nov 2020 17:14:27 -0800 +Subject: [PATCH] Add PlayerStonecutterRecipeSelectEvent + +Co-Authored-By: MiniDigger + +diff --git a/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java b/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java +index 46d6bc61ba54ab23eb35915073cfd5a3ab0111f1..74ea3f0154733ed4f096d88403fe011cca663e02 100644 +--- a/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java ++++ b/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java +@@ -64,7 +64,7 @@ public class StonecutterMenu extends AbstractContainerMenu { + + public StonecutterMenu(int syncId, Inventory playerInventory, final ContainerLevelAccess context) { + super(MenuType.STONECUTTER, syncId); +- this.selectedRecipeIndex = DataSlot.standalone(); ++ this.selectedRecipeIndex = DataSlot.shared(new int[1], 0); // Paper - Add PlayerStonecutterRecipeSelectEvent + this.recipesForInput = SelectableRecipe.SingleInputSet.empty(); + this.input = ItemStack.EMPTY; + this.slotUpdateListener = () -> { +@@ -153,8 +153,34 @@ public class StonecutterMenu extends AbstractContainerMenu { + return false; + } else { + if (this.isValidRecipeIndex(id)) { +- this.selectedRecipeIndex.set(id); +- this.setupResultSlot(id); ++ // Paper start - Add PlayerStonecutterRecipeSelectEvent ++ int recipeIndex = id; ++ this.selectedRecipeIndex.set(recipeIndex); ++ this.selectedRecipeIndex.checkAndClearUpdateFlag(); // mark as changed ++ paperEventBlock: if (this.isValidRecipeIndex(id)) { ++ final Optional> recipe = this.recipesForInput.entries().get(id).recipe().recipe(); ++ if (recipe.isEmpty()) break paperEventBlock; // The recipe selected does not have an actual server recipe (presumably its the empty one). Cannot call the event, just break. ++ ++ io.papermc.paper.event.player.PlayerStonecutterRecipeSelectEvent event = new io.papermc.paper.event.player.PlayerStonecutterRecipeSelectEvent((Player) player.getBukkitEntity(), getBukkitView().getTopInventory(), (org.bukkit.inventory.StonecuttingRecipe) recipe.get().toBukkitRecipe()); ++ if (!event.callEvent()) { ++ player.containerMenu.sendAllDataToRemote(); ++ return false; ++ } ++ ++ net.minecraft.resources.ResourceLocation key = org.bukkit.craftbukkit.util.CraftNamespacedKey.toMinecraft(event.getStonecuttingRecipe().getKey()); ++ if (!recipe.get().id().location().equals(key)) { // If the recipe did NOT stay the same ++ for (int newRecipeIndex = 0; newRecipeIndex < this.recipesForInput.entries().size(); newRecipeIndex++) { ++ if (this.recipesForInput.entries().get(newRecipeIndex).recipe().recipe().filter(r -> r.id().location().equals(key)).isPresent()) { ++ recipeIndex = newRecipeIndex; ++ break; ++ } ++ } ++ } ++ } ++ player.containerMenu.sendAllDataToRemote(); ++ this.selectedRecipeIndex.set(recipeIndex); // set new index, so that listeners can read it ++ this.setupResultSlot(recipeIndex); ++ // Paper end - Add PlayerStonecutterRecipeSelectEvent + } + + return true; diff --git a/patches/unapplied/server/0475-Expand-EntityUnleashEvent.patch b/patches/server/0474-Expand-EntityUnleashEvent.patch similarity index 76% rename from patches/unapplied/server/0475-Expand-EntityUnleashEvent.patch rename to patches/server/0474-Expand-EntityUnleashEvent.patch index 9ca5dd92d0..a982255f45 100644 --- a/patches/unapplied/server/0475-Expand-EntityUnleashEvent.patch +++ b/patches/server/0474-Expand-EntityUnleashEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Expand EntityUnleashEvent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 0832d43ca1be2581bcda9fc32d3359689d8c0384..bac2165553262bc3b26cddd607d83ca15807e9d2 100644 +index e556788a7c5e38c6ed293d566f75ef6501b7464c..a18e716a8c1c6f1fe23dcd3f4da033da95417e22 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2690,12 +2690,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2715,12 +2715,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (leashable.getLeashHolder() == player) { if (!this.level().isClientSide()) { // CraftBukkit start - fire PlayerUnleashEntityEvent @@ -21,46 +21,50 @@ index 0832d43ca1be2581bcda9fc32d3359689d8c0384..bac2165553262bc3b26cddd607d83ca1 return InteractionResult.PASS; } // CraftBukkit end -- leashable.dropLeash(true, !player.hasInfiniteMaterials()); -+ leashable.dropLeash(true, event.isDropLeash()); // Paper - Expand EntityUnleashEvent - this.gameEvent(GameEvent.ENTITY_INTERACT, player); - } - -@@ -3660,9 +3663,12 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +- if (player.hasInfiniteMaterials()) { ++ if (!event.isDropLeash()) { // Paper - Expand EntityUnleashEvent + leashable.removeLeash(); + } else { + leashable.dropLeash(); +@@ -3690,9 +3693,16 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess protected void removeAfterChangingDimensions() { this.setRemoved(Entity.RemovalReason.CHANGED_DIMENSION, null); // CraftBukkit - add Bukkit remove cause - if (this instanceof Leashable leashable) { - this.level().getCraftServer().getPluginManager().callEvent(new EntityUnleashEvent(this.getBukkitEntity(), UnleashReason.UNKNOWN)); // CraftBukkit -- leashable.dropLeash(true, false); +- leashable.removeLeash(); + if (this instanceof Leashable leashable && leashable.isLeashed()) { // Paper - only call if it is leashed + // Paper start - Expand EntityUnleashEvent + final EntityUnleashEvent event = new EntityUnleashEvent(this.getBukkitEntity(), UnleashReason.UNKNOWN, false); // CraftBukkit + event.callEvent(); -+ leashable.dropLeash(true, event.isDropLeash()); ++ if (!event.isDropLeash()) { ++ leashable.removeLeash(); ++ } else { ++ leashable.dropLeash(); ++ } + // Paper end - Expand EntityUnleashEvent } } diff --git a/src/main/java/net/minecraft/world/entity/Leashable.java b/src/main/java/net/minecraft/world/entity/Leashable.java -index dc39ecc3e1aada638337d31bfe68b400c6454af7..b7721ed97305d1cd6725935f965c2effc1bef5a1 100644 +index 5e67402340a81a965b0b3af88307d36500c2dc6b..68b869c5d76aeb390a05b053eef70486bd4126fd 100644 --- a/src/main/java/net/minecraft/world/entity/Leashable.java +++ b/src/main/java/net/minecraft/world/entity/Leashable.java -@@ -167,8 +167,11 @@ public interface Leashable { +@@ -184,8 +184,11 @@ public interface Leashable { if (leashable_a != null && leashable_a.leashHolder != null) { if (!entity.isAlive() || !leashable_a.leashHolder.isAlive()) { - world.getCraftServer().getPluginManager().callEvent(new EntityUnleashEvent(entity.getBukkitEntity(), (!entity.isAlive()) ? UnleashReason.PLAYER_UNLEASH : UnleashReason.HOLDER_GONE)); // CraftBukkit -- Leashable.dropLeash(entity, true, world.getGameRules().getBoolean(GameRules.RULE_DOENTITYDROPS) && !entity.pluginRemoved); // CraftBukkit - SPIGOT-7487: Don't drop leash, when the holder was removed by a plugin +- if (world.getGameRules().getBoolean(GameRules.RULE_DOENTITYDROPS) && !entity.pluginRemoved) { // CraftBukkit - SPIGOT-7487: Don't drop leash, when the holder was removed by a plugin + // Paper start - Expand EntityUnleashEvent + final EntityUnleashEvent event = new EntityUnleashEvent(entity.getBukkitEntity(), (!entity.isAlive()) ? UnleashReason.PLAYER_UNLEASH : UnleashReason.HOLDER_GONE, world.getGameRules().getBoolean(GameRules.RULE_DOENTITYDROPS) && !entity.pluginRemoved); + event.callEvent(); -+ Leashable.dropLeash(entity, true, event.isDropLeash()); // CraftBukkit - SPIGOT-7487: Don't drop leash, when the holder was removed by a plugin -+ // Paper end - Expand EntityUnleashEvent - } - - Entity entity1 = ((Leashable) entity).getLeashHolder(); -@@ -199,11 +202,16 @@ public interface Leashable { ++ if (event.isDropLeash()) { // CraftBukkit - SPIGOT-7487: Don't drop leash, when the holder was removed by a plugin ++ // Paper end - Expand EntityUnleashEvent + ((Leashable) entity).dropLeash(); + } else { + ((Leashable) entity).removeLeash(); +@@ -220,11 +223,20 @@ public interface Leashable { default void leashTooFarBehaviour() { // CraftBukkit start @@ -71,51 +75,63 @@ index dc39ecc3e1aada638337d31bfe68b400c6454af7..b7721ed97305d1cd6725935f965c2eff + final EntityUnleashEvent event = new EntityUnleashEvent(entity.getBukkitEntity(), EntityUnleashEvent.UnleashReason.DISTANCE, true); + if (!event.callEvent()) return; + dropLeash = event.isDropLeash(); -+ // Paper end - Expand EntityUnleashEvent } // CraftBukkit end -- this.dropLeash(true, true); -+ this.dropLeash(true, dropLeash); // Paper +- this.dropLeash(); ++ if (dropLeash) { ++ this.dropLeash(); ++ } else { ++ this.removeLeash(); ++ } ++ // Paper end - Expand EntityUnleashEvent } default void closeRangeLeashBehaviour(Entity entity) {} diff --git a/src/main/java/net/minecraft/world/entity/Mob.java b/src/main/java/net/minecraft/world/entity/Mob.java -index a8ab3c03a6f96658ce2a3f5758225954a36de6a9..ac7a52e77fd2fcbe9f95709b95ba54f8c2a6514b 100644 +index b3c27cdf7d336404403fe09553080835f2d3de49..7d3e165bae2c00737019689b7bf1e74ad2517270 100644 --- a/src/main/java/net/minecraft/world/entity/Mob.java +++ b/src/main/java/net/minecraft/world/entity/Mob.java -@@ -1613,8 +1613,11 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab +@@ -1612,8 +1612,15 @@ public abstract class Mob extends LivingEntity implements EquipmentUser, Leashab boolean flag1 = super.startRiding(entity, force); if (flag1 && this.isLeashed()) { - this.level().getCraftServer().getPluginManager().callEvent(new EntityUnleashEvent(this.getBukkitEntity(), UnleashReason.UNKNOWN)); // CraftBukkit -- this.dropLeash(true, true); +- this.dropLeash(); + // Paper start - Expand EntityUnleashEvent + EntityUnleashEvent event = new EntityUnleashEvent(this.getBukkitEntity(), EntityUnleashEvent.UnleashReason.UNKNOWN, true); + if (!event.callEvent()) { return flag1; } -+ this.dropLeash(true, event.isDropLeash()); ++ if (event.isDropLeash()) { ++ this.dropLeash(); ++ } else { ++ this.removeLeash(); ++ } + // Paper end - Expand EntityUnleashEvent } return flag1; diff --git a/src/main/java/net/minecraft/world/entity/TamableAnimal.java b/src/main/java/net/minecraft/world/entity/TamableAnimal.java -index d2785628368b65854b6e1f35005c478d490a2f8c..cd565d1a8dab8d45196e4d29cab3d93a3ca619eb 100644 +index 9c6e2124da7c2358d2d524c52d3e77422f15f6e5..45a340fddcec48dfb796f4515a500452adb30c59 100644 --- a/src/main/java/net/minecraft/world/entity/TamableAnimal.java +++ b/src/main/java/net/minecraft/world/entity/TamableAnimal.java -@@ -99,7 +99,11 @@ public abstract class TamableAnimal extends Animal implements OwnableEntity { +@@ -102,7 +102,15 @@ public abstract class TamableAnimal extends Animal implements OwnableEntity { public boolean handleLeashAtDistance(Entity leashHolder, float distance) { if (this.isInSittingPose()) { if (distance > (float) this.level().paperConfig().misc.maxLeashDistance.or(Leashable.LEASH_TOO_FAR_DIST)) { // Paper - Configurable max leash distance -- this.dropLeash(true, true); +- this.dropLeash(); + // Paper start - Expand EntityUnleashEvent + org.bukkit.event.entity.EntityUnleashEvent event = new org.bukkit.event.entity.EntityUnleashEvent(this.getBukkitEntity(), org.bukkit.event.entity.EntityUnleashEvent.UnleashReason.DISTANCE, true); + if (!event.callEvent()) return false; -+ this.dropLeash(true, event.isDropLeash()); ++ if (event.isDropLeash()) { ++ this.dropLeash(); ++ } else { ++ this.removeLeash(); ++ } + // Paper end - Expand EntityUnleashEvent } return false; diff --git a/src/main/java/net/minecraft/world/entity/decoration/LeashFenceKnotEntity.java b/src/main/java/net/minecraft/world/entity/decoration/LeashFenceKnotEntity.java -index 4b44830ef5d08887274ebb39e2780606fe3a76b4..d3a7953a3f42a0020342845e9107c6991637b050 100644 +index d4955d4174e5c2920d5cccaa4494db2c27284660..d06ec03ad16630f2dfd81cf9f32542bd1c2592de 100644 --- a/src/main/java/net/minecraft/world/entity/decoration/LeashFenceKnotEntity.java +++ b/src/main/java/net/minecraft/world/entity/decoration/LeashFenceKnotEntity.java @@ -119,13 +119,18 @@ public class LeashFenceKnotEntity extends BlockAttachedEntity { @@ -134,11 +150,11 @@ index 4b44830ef5d08887274ebb39e2780606fe3a76b4..d3a7953a3f42a0020342845e9107c699 continue; } } -- leashable1.dropLeash(true, !player.getAbilities().instabuild); // false -> survival mode boolean -+ leashable1.dropLeash(true, dropLeash); // false -> survival mode boolean // Paper - Expand EntityUnleashEvent - // CraftBukkit end - flag1 = true; - } +- if (player.getAbilities().instabuild){ ++ if (!dropLeash) { // Paper - Expand EntityUnleashEvent + leashable1.removeLeash(); + } else { + leashable1.dropLeash(); diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java index 6d1d3451054af05e2381d70d71b99869f37c0901..697c69b60aa45b6a229f3bec77dc728e50a895ce 100644 --- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java diff --git a/patches/unapplied/server/0476-Reset-shield-blocking-on-dimension-change.patch b/patches/server/0475-Reset-shield-blocking-on-dimension-change.patch similarity index 86% rename from patches/unapplied/server/0476-Reset-shield-blocking-on-dimension-change.patch rename to patches/server/0475-Reset-shield-blocking-on-dimension-change.patch index 1e1175064f..3126d1c539 100644 --- a/patches/unapplied/server/0476-Reset-shield-blocking-on-dimension-change.patch +++ b/patches/server/0475-Reset-shield-blocking-on-dimension-change.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Reset shield blocking on dimension change diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 46de03e961438faaf44b8bd39aed7535daef1bf9..5571e89876317e7b4b304bb1ec9c31078d0f69ee 100644 +index 6344947f445e1da19d21de67a51b88de65eceb7a..f046b8e6307079878d94eab615a5463a807e6c6c 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1613,6 +1613,11 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -1604,6 +1604,11 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { PlayerChangedWorldEvent changeEvent = new PlayerChangedWorldEvent(this.getBukkitEntity(), worldserver1.getWorld()); this.level().getCraftServer().getPluginManager().callEvent(changeEvent); // CraftBukkit end diff --git a/patches/unapplied/server/0477-Add-DragonEggFormEvent.patch b/patches/server/0476-Add-DragonEggFormEvent.patch similarity index 100% rename from patches/unapplied/server/0477-Add-DragonEggFormEvent.patch rename to patches/server/0476-Add-DragonEggFormEvent.patch diff --git a/patches/unapplied/server/0478-Add-EntityMoveEvent.patch b/patches/server/0477-Add-EntityMoveEvent.patch similarity index 89% rename from patches/unapplied/server/0478-Add-EntityMoveEvent.patch rename to patches/server/0477-Add-EntityMoveEvent.patch index a117f77f1b..298e088eb9 100644 --- a/patches/unapplied/server/0478-Add-EntityMoveEvent.patch +++ b/patches/server/0477-Add-EntityMoveEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add EntityMoveEvent diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 6a10ef4f5e6d19ffbadd43cb3a606084b69b5ce9..6920554bfaaadfa230f329784f0d9e0f12835745 100644 +index d6fe710a4e3784ba38776a0496eac7fa702aed88..b28a2756429270414f8ef89539f91ce0595d13c6 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1647,6 +1647,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop { String s = String.valueOf(worldserver); diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index e4710b95685508a54d552cf916cbaa56ee48a11a..9d62a76a82097f1fc934312e6b764c66c673a8e8 100644 +index e56f9e823f9460854c6f0f2f05422136c12aabba..de948bb8903c48e0431c1a46f5aac4fc1828b581 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -229,6 +229,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -230,6 +230,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe public final LevelStorageSource.LevelStorageAccess convertable; public final UUID uuid; public boolean hasPhysicsEvent = true; // Paper - BlockPhysicsEvent @@ -29,10 +29,10 @@ index e4710b95685508a54d552cf916cbaa56ee48a11a..9d62a76a82097f1fc934312e6b764c66 public LevelChunk getChunkIfLoaded(int x, int z) { return this.chunkSource.getChunk(x, z, false); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index b725bd297ed40aa8ccf3ad77f8652b39980efcf2..6b5d8328ae9ce819f6ff1b9ba109a67ce8f121e8 100644 +index d7e5c2d5935a86bab9987c36df8e1b957fe90ba0..2d3f418b5a7a5414ca5be8525146e480add51635 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3627,6 +3627,20 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3638,6 +3638,20 @@ public abstract class LivingEntity extends Entity implements Attackable { this.pushEntities(); gameprofilerfiller.pop(); diff --git a/patches/unapplied/server/0479-added-option-to-disable-pathfinding-updates-on-block.patch b/patches/server/0478-added-option-to-disable-pathfinding-updates-on-block.patch similarity index 82% rename from patches/unapplied/server/0479-added-option-to-disable-pathfinding-updates-on-block.patch rename to patches/server/0478-added-option-to-disable-pathfinding-updates-on-block.patch index d7fc759f02..dd3704bba6 100644 --- a/patches/unapplied/server/0479-added-option-to-disable-pathfinding-updates-on-block.patch +++ b/patches/server/0478-added-option-to-disable-pathfinding-updates-on-block.patch @@ -5,10 +5,10 @@ Subject: [PATCH] added option to disable pathfinding updates on block changes diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 9d62a76a82097f1fc934312e6b764c66c673a8e8..d8eeedcc52ae939246caa61a6bacd3b15c8ae239 100644 +index de948bb8903c48e0431c1a46f5aac4fc1828b581..dc2b8d8e62cf1405191aa4fc8d4fa548c7249032 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -1362,6 +1362,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -1363,6 +1363,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe this.getChunkSource().blockChanged(pos); this.pathTypesByPosCache.invalidate(pos); @@ -16,7 +16,7 @@ index 9d62a76a82097f1fc934312e6b764c66c673a8e8..d8eeedcc52ae939246caa61a6bacd3b1 VoxelShape voxelshape = oldState.getCollisionShape(this, pos); VoxelShape voxelshape1 = newState.getCollisionShape(this, pos); -@@ -1403,6 +1404,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -1404,6 +1405,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe } } diff --git a/patches/unapplied/server/0480-Inline-shift-direction-fields.patch b/patches/server/0479-Inline-shift-direction-fields.patch similarity index 95% rename from patches/unapplied/server/0480-Inline-shift-direction-fields.patch rename to patches/server/0479-Inline-shift-direction-fields.patch index 22234bc09a..e47ea8a571 100644 --- a/patches/unapplied/server/0480-Inline-shift-direction-fields.patch +++ b/patches/server/0479-Inline-shift-direction-fields.patch @@ -7,7 +7,7 @@ Removes a layer of indirection for EnumDirection.getAdjacent(X|Y|Z)(), which is critical section for much of the server, including the lighting engine. diff --git a/src/main/java/net/minecraft/core/Direction.java b/src/main/java/net/minecraft/core/Direction.java -index 69ccada8ea78c05d3fb886222698c07dee421506..3fde5abde736b2c19d8819d9aec0397a0245ccd1 100644 +index acecb0e9df1b157579d2b438abf1568d7672b570..690e1d2394e68356c56a39ac083cc53ee0388d71 100644 --- a/src/main/java/net/minecraft/core/Direction.java +++ b/src/main/java/net/minecraft/core/Direction.java @@ -57,6 +57,12 @@ public enum Direction implements StringRepresentable { diff --git a/patches/unapplied/server/0481-Allow-adding-items-to-BlockDropItemEvent.patch b/patches/server/0480-Allow-adding-items-to-BlockDropItemEvent.patch similarity index 100% rename from patches/unapplied/server/0481-Allow-adding-items-to-BlockDropItemEvent.patch rename to patches/server/0480-Allow-adding-items-to-BlockDropItemEvent.patch diff --git a/patches/unapplied/server/0482-Add-getMainThreadExecutor-to-BukkitScheduler.patch b/patches/server/0481-Add-getMainThreadExecutor-to-BukkitScheduler.patch similarity index 100% rename from patches/unapplied/server/0482-Add-getMainThreadExecutor-to-BukkitScheduler.patch rename to patches/server/0481-Add-getMainThreadExecutor-to-BukkitScheduler.patch diff --git a/patches/unapplied/server/0483-living-entity-allow-attribute-registration.patch b/patches/server/0482-living-entity-allow-attribute-registration.patch similarity index 91% rename from patches/unapplied/server/0483-living-entity-allow-attribute-registration.patch rename to patches/server/0482-living-entity-allow-attribute-registration.patch index e9e4ab2f48..ef6df5b4ed 100644 --- a/patches/unapplied/server/0483-living-entity-allow-attribute-registration.patch +++ b/patches/server/0482-living-entity-allow-attribute-registration.patch @@ -5,10 +5,10 @@ Subject: [PATCH] living entity allow attribute registration diff --git a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java -index 3a6c55a7f07e8871a77c91679732dd63db604004..94d04a20f97405e02d7cccaabadc7a7e86e336f7 100644 +index b3707ca404245ae048ddba4ce2190c0801b474d4..fb967ac7b3e7828301f08a7fe9b039441cf7da30 100644 --- a/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java +++ b/src/main/java/net/minecraft/world/entity/ai/attributes/AttributeMap.java -@@ -149,4 +149,12 @@ public class AttributeMap { +@@ -162,4 +162,12 @@ public class AttributeMap { } } } @@ -38,7 +38,7 @@ index 5678d2007d5adf45dec0638c5dd848b601801814..0a7ed5a4f1644a70d8f98ad7a6962b81 + // Paper end - living entity allow attribute registration } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index ff3b53eff8f5fc1e02e7b30d59ff27dfe8f5d431..5749e2b5174be23633c8a811baec8c05da12e3e2 100644 +index 1ca252f36500322d56c0c12b6ec80c069214c0e8..a4be1eea356ba99358d707381df70032ded42140 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -775,6 +775,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/unapplied/server/0484-fix-dead-slime-setSize-invincibility.patch b/patches/server/0483-fix-dead-slime-setSize-invincibility.patch similarity index 100% rename from patches/unapplied/server/0484-fix-dead-slime-setSize-invincibility.patch rename to patches/server/0483-fix-dead-slime-setSize-invincibility.patch diff --git a/patches/unapplied/server/0485-Merchant-getRecipes-should-return-an-immutable-list.patch b/patches/server/0484-Merchant-getRecipes-should-return-an-immutable-list.patch similarity index 100% rename from patches/unapplied/server/0485-Merchant-getRecipes-should-return-an-immutable-list.patch rename to patches/server/0484-Merchant-getRecipes-should-return-an-immutable-list.patch diff --git a/patches/unapplied/server/0486-Expose-Tracked-Players.patch b/patches/server/0485-Expose-Tracked-Players.patch similarity index 100% rename from patches/unapplied/server/0486-Expose-Tracked-Players.patch rename to patches/server/0485-Expose-Tracked-Players.patch diff --git a/patches/unapplied/server/0487-Improve-ServerGUI.patch b/patches/server/0486-Improve-ServerGUI.patch similarity index 100% rename from patches/unapplied/server/0487-Improve-ServerGUI.patch rename to patches/server/0486-Improve-ServerGUI.patch diff --git a/patches/unapplied/server/0488-fix-converting-txt-to-json-file.patch b/patches/server/0487-fix-converting-txt-to-json-file.patch similarity index 100% rename from patches/unapplied/server/0488-fix-converting-txt-to-json-file.patch rename to patches/server/0487-fix-converting-txt-to-json-file.patch diff --git a/patches/unapplied/server/0489-Add-worldborder-events.patch b/patches/server/0488-Add-worldborder-events.patch similarity index 100% rename from patches/unapplied/server/0489-Add-worldborder-events.patch rename to patches/server/0488-Add-worldborder-events.patch diff --git a/patches/unapplied/server/0490-Add-PlayerNameEntityEvent.patch b/patches/server/0489-Add-PlayerNameEntityEvent.patch similarity index 93% rename from patches/unapplied/server/0490-Add-PlayerNameEntityEvent.patch rename to patches/server/0489-Add-PlayerNameEntityEvent.patch index 4215e4291d..8d982f76db 100644 --- a/patches/unapplied/server/0490-Add-PlayerNameEntityEvent.patch +++ b/patches/server/0489-Add-PlayerNameEntityEvent.patch @@ -5,12 +5,12 @@ Subject: [PATCH] Add PlayerNameEntityEvent diff --git a/src/main/java/net/minecraft/world/item/NameTagItem.java b/src/main/java/net/minecraft/world/item/NameTagItem.java -index dd5aa4bbf2e7bab3be1c3582b090fdf0fa3fb0df..000d1863bfba98b5132dfc6743362d687b2f54f3 100644 +index 244663ff31bdb29bbff8b3ffd9fe99279b173296..df9cdcb9544a171a5a07c65ba0150933fb70d5fc 100644 --- a/src/main/java/net/minecraft/world/item/NameTagItem.java +++ b/src/main/java/net/minecraft/world/item/NameTagItem.java @@ -18,8 +18,13 @@ public class NameTagItem extends Item { Component component = stack.get(DataComponents.CUSTOM_NAME); - if (component != null && entity.getType().canSerialize()) { + if (component != null && entity.getType().canSerialize() && entity.canBeNameTagged()) { if (!user.level().isClientSide && entity.isAlive()) { - entity.setCustomName(component); - if (entity instanceof Mob mob) { diff --git a/patches/unapplied/server/0491-Add-recipe-to-cook-events.patch b/patches/server/0490-Add-recipe-to-cook-events.patch similarity index 95% rename from patches/unapplied/server/0491-Add-recipe-to-cook-events.patch rename to patches/server/0490-Add-recipe-to-cook-events.patch index db11d30abc..416e598dc6 100644 --- a/patches/unapplied/server/0491-Add-recipe-to-cook-events.patch +++ b/patches/server/0490-Add-recipe-to-cook-events.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add recipe to cook events diff --git a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java -index 187f380eae3948eb5e37e8703db6ea785aaf833d..08b94e5e31ca835c1f9eaefbab07076c91deadeb 100644 +index b2c0de191fdc84d4a007373309a5df81cacd5466..4acf487f9a5f3fa828ee76f9708d6a2ae28707e1 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java -@@ -332,7 +332,7 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit +@@ -327,7 +327,7 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit CraftItemStack source = CraftItemStack.asCraftMirror(itemstack); org.bukkit.inventory.ItemStack result = CraftItemStack.asBukkitCopy(itemstack1); diff --git a/patches/unapplied/server/0492-Add-Block-isValidTool.patch b/patches/server/0491-Add-Block-isValidTool.patch similarity index 100% rename from patches/unapplied/server/0492-Add-Block-isValidTool.patch rename to patches/server/0491-Add-Block-isValidTool.patch diff --git a/patches/unapplied/server/0493-Allow-using-signs-inside-spawn-protection.patch b/patches/server/0492-Allow-using-signs-inside-spawn-protection.patch similarity index 58% rename from patches/unapplied/server/0493-Allow-using-signs-inside-spawn-protection.patch rename to patches/server/0492-Allow-using-signs-inside-spawn-protection.patch index cbb5462bf6..3953df000d 100644 --- a/patches/unapplied/server/0493-Allow-using-signs-inside-spawn-protection.patch +++ b/patches/server/0492-Allow-using-signs-inside-spawn-protection.patch @@ -5,15 +5,15 @@ Subject: [PATCH] Allow using signs inside spawn protection diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 03e87e35f4478d948602569c319a7b5a0e938cd5..03ab4e27e141716e1c9ae92d41f42cfb7a48db66 100644 +index 3d4ab22077eb358168b2959c3d1beb10b7104ab7..e23b1f98c4ea066e1c35e15454ed524a20f65b4d 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1770,7 +1770,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - int i = this.player.level().getMaxY(); +@@ -1827,7 +1827,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl + int i = this.player.level().getMaxY(); - if (blockposition.getY() <= i) { -- if (this.awaitingPositionFromClient == null && worldserver.mayInteract(this.player, blockposition)) { + if (blockposition.getY() <= i) { +- if (this.awaitingPositionFromClient == null && worldserver.mayInteract(this.player, blockposition)) { + if (this.awaitingPositionFromClient == null && (worldserver.mayInteract(this.player, blockposition) || (worldserver.paperConfig().spawn.allowUsingSignsInsideSpawnProtection && worldserver.getBlockState(blockposition).getBlock() instanceof net.minecraft.world.level.block.SignBlock))) { // Paper - Allow using signs inside spawn protection - this.player.stopUsingItem(); // CraftBukkit - SPIGOT-4706 - InteractionResult enuminteractionresult = this.player.gameMode.useItemOn(this.player, worldserver, itemstack, enumhand, movingobjectpositionblock); + this.player.stopUsingItem(); // CraftBukkit - SPIGOT-4706 + InteractionResult enuminteractionresult = this.player.gameMode.useItemOn(this.player, worldserver, itemstack, enumhand, movingobjectpositionblock); diff --git a/patches/unapplied/server/0494-Expand-world-key-API.patch b/patches/server/0493-Expand-world-key-API.patch similarity index 97% rename from patches/unapplied/server/0494-Expand-world-key-API.patch rename to patches/server/0493-Expand-world-key-API.patch index f5b8dc10fe..7e7d90c838 100644 --- a/patches/unapplied/server/0494-Expand-world-key-API.patch +++ b/patches/server/0493-Expand-world-key-API.patch @@ -67,7 +67,7 @@ index 5ae8f646083fb580ac8d28fcbfe8ed2208b45d09..3cfacacd1d8fd17ec4b54936afd81248 // Check if a World already exists with the UID. if (this.getWorld(world.getUID()) != null) { diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index e88b384e3d640dd77e419611f3c0e588fbf4f406..28948975c5adcf78d9c0e0b6fb63db981a369a77 100644 +index 5f0fd1d4fe419435ac7293106c0ebb5382d64074..8d9380b50424546bcebdfa868635f94c8efa5899 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -538,6 +538,11 @@ public final class CraftMagicNumbers implements UnsafeValues { diff --git a/patches/unapplied/server/0495-Add-fast-alternative-constructor-for-Rotations.patch b/patches/server/0494-Add-fast-alternative-constructor-for-Rotations.patch similarity index 100% rename from patches/unapplied/server/0495-Add-fast-alternative-constructor-for-Rotations.patch rename to patches/server/0494-Add-fast-alternative-constructor-for-Rotations.patch diff --git a/patches/unapplied/server/0496-Drop-carried-item-when-player-has-disconnected.patch b/patches/server/0495-Drop-carried-item-when-player-has-disconnected.patch similarity index 100% rename from patches/unapplied/server/0496-Drop-carried-item-when-player-has-disconnected.patch rename to patches/server/0495-Drop-carried-item-when-player-has-disconnected.patch diff --git a/patches/unapplied/server/0497-forced-whitelist-use-configurable-kick-message.patch b/patches/server/0496-forced-whitelist-use-configurable-kick-message.patch similarity index 92% rename from patches/unapplied/server/0497-forced-whitelist-use-configurable-kick-message.patch rename to patches/server/0496-forced-whitelist-use-configurable-kick-message.patch index d025eb967b..f9aab54d8f 100644 --- a/patches/unapplied/server/0497-forced-whitelist-use-configurable-kick-message.patch +++ b/patches/server/0496-forced-whitelist-use-configurable-kick-message.patch @@ -5,7 +5,7 @@ Subject: [PATCH] forced whitelist: use configurable kick message diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 6920554bfaaadfa230f329784f0d9e0f12835745..c0cf470807ddeaecd63946cc9e3bdbe18fdb7092 100644 +index b28a2756429270414f8ef89539f91ce0595d13c6..0ab92fb362729108beca6bc0230fb6fb06ca6280 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -2325,7 +2325,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop> list1 = pages.stream().map(this::filterableFromOutgoing).toList(); itemstack.set(DataComponents.WRITABLE_BOOK_CONTENT, new WritableBookContent(list1)); diff --git a/patches/unapplied/server/0499-Expose-protocol-version.patch b/patches/server/0498-Expose-protocol-version.patch similarity index 90% rename from patches/unapplied/server/0499-Expose-protocol-version.patch rename to patches/server/0498-Expose-protocol-version.patch index 61d4fc32be..cd6a7ab2b0 100644 --- a/patches/unapplied/server/0499-Expose-protocol-version.patch +++ b/patches/server/0498-Expose-protocol-version.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expose protocol version diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 28948975c5adcf78d9c0e0b6fb63db981a369a77..25a206cf1eb07e826b549aacf9a4d0fbffb32177 100644 +index 8d9380b50424546bcebdfa868635f94c8efa5899..30f2ddb66385718304b4b0302f7efcafd54bc42a 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -543,6 +543,11 @@ public final class CraftMagicNumbers implements UnsafeValues { diff --git a/patches/unapplied/server/0500-Enhance-console-tab-completions-for-brigadier-comman.patch b/patches/server/0499-Enhance-console-tab-completions-for-brigadier-comman.patch similarity index 100% rename from patches/unapplied/server/0500-Enhance-console-tab-completions-for-brigadier-comman.patch rename to patches/server/0499-Enhance-console-tab-completions-for-brigadier-comman.patch diff --git a/patches/unapplied/server/0501-Fix-PlayerItemConsumeEvent-cancelling-properly.patch b/patches/server/0500-Fix-PlayerItemConsumeEvent-cancelling-properly.patch similarity index 87% rename from patches/unapplied/server/0501-Fix-PlayerItemConsumeEvent-cancelling-properly.patch rename to patches/server/0500-Fix-PlayerItemConsumeEvent-cancelling-properly.patch index ad9efea6d1..7ab0446f86 100644 --- a/patches/unapplied/server/0501-Fix-PlayerItemConsumeEvent-cancelling-properly.patch +++ b/patches/server/0500-Fix-PlayerItemConsumeEvent-cancelling-properly.patch @@ -9,10 +9,10 @@ till their item is switched. This patch clears the active item when the event is cancelled diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 6b5d8328ae9ce819f6ff1b9ba109a67ce8f121e8..123f9a7675c1f194273fff0fdd804cb6ab409201 100644 +index 2d3f418b5a7a5414ca5be8525146e480add51635..509139ab9a3070c8c96d14fdc4d07bc229b41bd6 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -4142,6 +4142,7 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -4149,6 +4149,7 @@ public abstract class LivingEntity extends Entity implements Attackable { } entityPlayer.getBukkitEntity().updateInventory(); entityPlayer.getBukkitEntity().updateScaledHealth(); diff --git a/patches/unapplied/server/0502-Add-bypass-host-check.patch b/patches/server/0501-Add-bypass-host-check.patch similarity index 100% rename from patches/unapplied/server/0502-Add-bypass-host-check.patch rename to patches/server/0501-Add-bypass-host-check.patch diff --git a/patches/unapplied/server/0503-Set-area-affect-cloud-rotation.patch b/patches/server/0502-Set-area-affect-cloud-rotation.patch similarity index 93% rename from patches/unapplied/server/0503-Set-area-affect-cloud-rotation.patch rename to patches/server/0502-Set-area-affect-cloud-rotation.patch index e87d48589a..92bb3dc84a 100644 --- a/patches/unapplied/server/0503-Set-area-affect-cloud-rotation.patch +++ b/patches/server/0502-Set-area-affect-cloud-rotation.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Set area affect cloud rotation diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java -index e0ff8e8ed03a6a78c9fd8e4630c8b95600bee10a..f8ce309c6ec8c294378d2cd9bc542e43338f8376 100644 +index 0ebcf7ed1cb9e896de5fbac60afdb937ba86d15c..95c2ef53e6c5574e69614d8058eb3ed94ab6b0d6 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java -@@ -428,7 +428,7 @@ public final class CraftEntityTypes { +@@ -426,7 +426,7 @@ public final class CraftEntityTypes { register(new EntityTypeData<>(EntityType.EXPERIENCE_ORB, ExperienceOrb.class, CraftExperienceOrb::new, spawnData -> new net.minecraft.world.entity.ExperienceOrb(spawnData.minecraftWorld(), spawnData.x(), spawnData.y(), spawnData.z(), 0, org.bukkit.entity.ExperienceOrb.SpawnReason.CUSTOM, null, null) // Paper )); diff --git a/patches/unapplied/server/0504-add-isDeeplySleeping-to-HumanEntity.patch b/patches/server/0503-add-isDeeplySleeping-to-HumanEntity.patch similarity index 100% rename from patches/unapplied/server/0504-add-isDeeplySleeping-to-HumanEntity.patch rename to patches/server/0503-add-isDeeplySleeping-to-HumanEntity.patch diff --git a/patches/unapplied/server/0505-add-consumeFuel-to-FurnaceBurnEvent.patch b/patches/server/0504-add-consumeFuel-to-FurnaceBurnEvent.patch similarity index 86% rename from patches/unapplied/server/0505-add-consumeFuel-to-FurnaceBurnEvent.patch rename to patches/server/0504-add-consumeFuel-to-FurnaceBurnEvent.patch index 5b664856f4..150b4fe7c0 100644 --- a/patches/unapplied/server/0505-add-consumeFuel-to-FurnaceBurnEvent.patch +++ b/patches/server/0504-add-consumeFuel-to-FurnaceBurnEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] add consumeFuel to FurnaceBurnEvent diff --git a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java -index 08b94e5e31ca835c1f9eaefbab07076c91deadeb..9c1267df7057caa3500c7a9e6c705ea58c2b5e11 100644 +index 4acf487f9a5f3fa828ee76f9708d6a2ae28707e1..7b63e2fd004ae452c7350f0b2d8d7c57a42891ea 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity.java -@@ -255,7 +255,7 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit +@@ -250,7 +250,7 @@ public abstract class AbstractFurnaceBlockEntity extends BaseContainerBlockEntit if (blockEntity.isLit() && furnaceBurnEvent.isBurning()) { // CraftBukkit end flag1 = true; diff --git a/patches/unapplied/server/0506-add-get-set-drop-chance-to-EntityEquipment.patch b/patches/server/0505-add-get-set-drop-chance-to-EntityEquipment.patch similarity index 100% rename from patches/unapplied/server/0506-add-get-set-drop-chance-to-EntityEquipment.patch rename to patches/server/0505-add-get-set-drop-chance-to-EntityEquipment.patch diff --git a/patches/unapplied/server/0507-fix-PigZombieAngerEvent-cancellation.patch b/patches/server/0506-fix-PigZombieAngerEvent-cancellation.patch similarity index 100% rename from patches/unapplied/server/0507-fix-PigZombieAngerEvent-cancellation.patch rename to patches/server/0506-fix-PigZombieAngerEvent-cancellation.patch diff --git a/patches/unapplied/server/0508-fix-PlayerItemHeldEvent-firing-twice.patch b/patches/server/0507-fix-PlayerItemHeldEvent-firing-twice.patch similarity index 88% rename from patches/unapplied/server/0508-fix-PlayerItemHeldEvent-firing-twice.patch rename to patches/server/0507-fix-PlayerItemHeldEvent-firing-twice.patch index 5732fc5af6..631dbbe515 100644 --- a/patches/unapplied/server/0508-fix-PlayerItemHeldEvent-firing-twice.patch +++ b/patches/server/0507-fix-PlayerItemHeldEvent-firing-twice.patch @@ -5,10 +5,10 @@ Subject: [PATCH] fix PlayerItemHeldEvent firing twice diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 1b4a19eb510c3efa2f2459554bed5e16bcb23430..2bd2f1cdf3467cacee55094d43bd3eccf61b9aa7 100644 +index ddf2b9c6de079f55c3ac8836345c1e681f23fcac..47f925707d8756796ce169b7cbd8f2410b0b7104 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1954,6 +1954,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2014,6 +2014,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); if (this.player.isImmobile()) return; // CraftBukkit if (packet.getSlot() >= 0 && packet.getSlot() < Inventory.getSelectionSize()) { diff --git a/patches/unapplied/server/0509-Add-PlayerDeepSleepEvent.patch b/patches/server/0508-Add-PlayerDeepSleepEvent.patch similarity index 86% rename from patches/unapplied/server/0509-Add-PlayerDeepSleepEvent.patch rename to patches/server/0508-Add-PlayerDeepSleepEvent.patch index 2f01c63a54..1750b3bc37 100644 --- a/patches/unapplied/server/0509-Add-PlayerDeepSleepEvent.patch +++ b/patches/server/0508-Add-PlayerDeepSleepEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerDeepSleepEvent 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 78bb666dbc5ccd84820e1c7b382249510dd5795c..57850f16a681af4fc302895c7608247675b44ab4 100644 +index 136a6b8e2065c7bada396e0f54f91c841a85c3d8..13f21822d0eb1d167b9b71addb46c4f508301c8d 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -262,6 +262,13 @@ public abstract class Player extends LivingEntity { +@@ -265,6 +265,13 @@ public abstract class Player extends LivingEntity { if (this.isSleeping()) { ++this.sleepCounter; diff --git a/patches/unapplied/server/0510-More-World-API.patch b/patches/server/0509-More-World-API.patch similarity index 96% rename from patches/unapplied/server/0510-More-World-API.patch rename to patches/server/0509-More-World-API.patch index 6f6b279ced..2b853eb7b0 100644 --- a/patches/unapplied/server/0510-More-World-API.patch +++ b/patches/server/0509-More-World-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] More World API diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 8fc7192b8eb56fb1411391153e37ae654af9b68e..956f7206f26325ed1be639bd6289991332763a70 100644 +index 69464a4fe467128121fe1a9ba08c9c7154e22c7f..f20717ee4505d28fa44f0f9ced5c71ae75c8a6d9 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -2130,6 +2130,28 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/unapplied/server/0511-Add-PlayerBedFailEnterEvent.patch b/patches/server/0510-Add-PlayerBedFailEnterEvent.patch similarity index 96% rename from patches/unapplied/server/0511-Add-PlayerBedFailEnterEvent.patch rename to patches/server/0510-Add-PlayerBedFailEnterEvent.patch index a592f428c2..375fec28c9 100644 --- a/patches/unapplied/server/0511-Add-PlayerBedFailEnterEvent.patch +++ b/patches/server/0510-Add-PlayerBedFailEnterEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerBedFailEnterEvent 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 bee869b62af5fc845425458b713d1efaf8b28b51..b09fa473426a6c7e006a071827e5a68560d6c685 100644 +index 1e5f1b4c746fe9a105c2771c785976aae70a9a3e..30db6ae29e2fe03866dfa656330f7341e0a3f9ab 100644 --- a/src/main/java/net/minecraft/world/level/block/BedBlock.java +++ b/src/main/java/net/minecraft/world/level/block/BedBlock.java @@ -120,14 +120,23 @@ public class BedBlock extends HorizontalDirectionalBlock implements EntityBlock diff --git a/patches/unapplied/server/0512-Implement-methods-to-convert-between-Component-and-B.patch b/patches/server/0511-Implement-methods-to-convert-between-Component-and-B.patch similarity index 100% rename from patches/unapplied/server/0512-Implement-methods-to-convert-between-Component-and-B.patch rename to patches/server/0511-Implement-methods-to-convert-between-Component-and-B.patch diff --git a/patches/unapplied/server/0513-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch b/patches/server/0512-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch similarity index 91% rename from patches/unapplied/server/0513-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch rename to patches/server/0512-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch index 852f5276ee..017cc4e93e 100644 --- a/patches/unapplied/server/0513-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch +++ b/patches/server/0512-Expand-PlayerRespawnEvent-fix-passed-parameter-issue.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Expand PlayerRespawnEvent, fix passed parameter issues Co-authored-by: Jake Potrebic diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 5571e89876317e7b4b304bb1ec9c31078d0f69ee..563b20033a5280091f93ab72a8600369035b6a0a 100644 +index f046b8e6307079878d94eab615a5463a807e6c6c..c22dce8b30c8af3e37b497b0d97c6ceef0295883 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1456,7 +1456,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -1447,7 +1447,13 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { Player respawnPlayer = this.getBukkitEntity(); Location location = CraftLocation.toBukkit(teleportTransition.position(), teleportTransition.newLevel().getWorld(), teleportTransition.yRot(), teleportTransition.xRot()); diff --git a/patches/unapplied/server/0514-Introduce-beacon-activation-deactivation-events.patch b/patches/server/0513-Introduce-beacon-activation-deactivation-events.patch similarity index 100% rename from patches/unapplied/server/0514-Introduce-beacon-activation-deactivation-events.patch rename to patches/server/0513-Introduce-beacon-activation-deactivation-events.patch diff --git a/patches/unapplied/server/0515-Add-Channel-initialization-listeners.patch b/patches/server/0514-Add-Channel-initialization-listeners.patch similarity index 98% rename from patches/unapplied/server/0515-Add-Channel-initialization-listeners.patch rename to patches/server/0514-Add-Channel-initialization-listeners.patch index 334eb230f0..430324c8f2 100644 --- a/patches/unapplied/server/0515-Add-Channel-initialization-listeners.patch +++ b/patches/server/0514-Add-Channel-initialization-listeners.patch @@ -122,7 +122,7 @@ index 0000000000000000000000000000000000000000..0d7e7db9e37ef0183c32b217bd944fb4 + COMPRESSION_DISABLED +} diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index ba41646a5edb57c4d9766df08bbc57016e2de189..2b86415e4ea197c5c44c23072c9a1cda595544a8 100644 +index 448bde861b4190a678a8ccb63cade43c4a3d6ad9..f5fe87103ce53ba07b43c6c10fc9dafcc5ea4958 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java @@ -680,6 +680,7 @@ public class Connection extends SimpleChannelInboundHandler> { diff --git a/patches/unapplied/server/0516-Send-empty-commands-if-tab-completion-is-disabled.patch b/patches/server/0515-Send-empty-commands-if-tab-completion-is-disabled.patch similarity index 100% rename from patches/unapplied/server/0516-Send-empty-commands-if-tab-completion-is-disabled.patch rename to patches/server/0515-Send-empty-commands-if-tab-completion-is-disabled.patch diff --git a/patches/unapplied/server/0517-Add-more-WanderingTrader-API.patch b/patches/server/0516-Add-more-WanderingTrader-API.patch similarity index 100% rename from patches/unapplied/server/0517-Add-more-WanderingTrader-API.patch rename to patches/server/0516-Add-more-WanderingTrader-API.patch diff --git a/patches/unapplied/server/0518-Add-EntityBlockStorage-clearEntities.patch b/patches/server/0517-Add-EntityBlockStorage-clearEntities.patch similarity index 94% rename from patches/unapplied/server/0518-Add-EntityBlockStorage-clearEntities.patch rename to patches/server/0517-Add-EntityBlockStorage-clearEntities.patch index c37749bd56..51ffd96ff7 100644 --- a/patches/unapplied/server/0518-Add-EntityBlockStorage-clearEntities.patch +++ b/patches/server/0517-Add-EntityBlockStorage-clearEntities.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add EntityBlockStorage#clearEntities() diff --git a/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java -index 0fab8826e14af9184f07bc1262555a71effcd84b..8224d5bddb7f7893dee09222a673af54791abcfa 100644 +index 333189cf01ce571993e8152f5851b8c362ba4b70..801528022c902714138c264bc4d05ef0df85912e 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/BeehiveBlockEntity.java @@ -152,6 +152,11 @@ public class BeehiveBlockEntity extends BlockEntity { diff --git a/patches/unapplied/server/0519-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch b/patches/server/0518-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch similarity index 100% rename from patches/unapplied/server/0519-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch rename to patches/server/0518-Add-Adventure-message-to-PlayerAdvancementDoneEvent.patch diff --git a/patches/unapplied/server/0520-Add-HiddenPotionEffect-API.patch b/patches/server/0519-Add-HiddenPotionEffect-API.patch similarity index 100% rename from patches/unapplied/server/0520-Add-HiddenPotionEffect-API.patch rename to patches/server/0519-Add-HiddenPotionEffect-API.patch diff --git a/patches/unapplied/server/0521-Inventory-close.patch b/patches/server/0520-Inventory-close.patch similarity index 100% rename from patches/unapplied/server/0521-Inventory-close.patch rename to patches/server/0520-Inventory-close.patch diff --git a/patches/unapplied/server/0522-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch b/patches/server/0521-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch similarity index 94% rename from patches/unapplied/server/0522-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch rename to patches/server/0521-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch index ca5b9a4b8a..cf84510891 100644 --- a/patches/unapplied/server/0522-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch +++ b/patches/server/0521-Add-a-should-burn-in-sunlight-API-for-Phantoms-and-S.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Add a "should burn in sunlight" API for Phantoms and diff --git a/src/main/java/net/minecraft/world/entity/monster/AbstractSkeleton.java b/src/main/java/net/minecraft/world/entity/monster/AbstractSkeleton.java -index 723a098eabcc632caeb096f39c90e4e0581edc35..0cb179bc28cc863b09a079b37b957744f26f3e1d 100644 +index 7c80c79a87ec438d0891c5c977e162f272d80039..cb89a95e6ff9db73c912bba04d27657683135153 100644 --- a/src/main/java/net/minecraft/world/entity/monster/AbstractSkeleton.java +++ b/src/main/java/net/minecraft/world/entity/monster/AbstractSkeleton.java -@@ -95,9 +95,15 @@ public abstract class AbstractSkeleton extends Monster implements RangedAttackMo +@@ -97,9 +97,15 @@ public abstract class AbstractSkeleton extends Monster implements RangedAttackMo abstract SoundEvent getStepSound(); @@ -26,7 +26,7 @@ index 723a098eabcc632caeb096f39c90e4e0581edc35..0cb179bc28cc863b09a079b37b957744 if (flag) { ItemStack itemstack = this.getItemBySlot(EquipmentSlot.HEAD); -@@ -236,7 +242,20 @@ public abstract class AbstractSkeleton extends Monster implements RangedAttackMo +@@ -243,7 +249,20 @@ public abstract class AbstractSkeleton extends Monster implements RangedAttackMo public void readAdditionalSaveData(CompoundTag nbt) { super.readAdditionalSaveData(nbt); this.reassessWeaponGoal(); @@ -48,7 +48,7 @@ index 723a098eabcc632caeb096f39c90e4e0581edc35..0cb179bc28cc863b09a079b37b957744 @Override public void setItemSlot(EquipmentSlot slot, ItemStack stack) { diff --git a/src/main/java/net/minecraft/world/entity/monster/Phantom.java b/src/main/java/net/minecraft/world/entity/monster/Phantom.java -index d0820b3a561db7e1e5667594b2b6ea13214dfa58..150fd890ac65097b5434fd88e8d2b24a89dca79a 100644 +index 1171a4e45bed0455b29b2cf012fbc2883b16d061..4ff75412452649ebf106ef591cb97dc7ac8175e7 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Phantom.java +++ b/src/main/java/net/minecraft/world/entity/monster/Phantom.java @@ -139,7 +139,7 @@ public class Phantom extends FlyingMob implements Enemy { diff --git a/patches/unapplied/server/0523-Add-basic-Datapack-API.patch b/patches/server/0522-Add-basic-Datapack-API.patch similarity index 100% rename from patches/unapplied/server/0523-Add-basic-Datapack-API.patch rename to patches/server/0522-Add-basic-Datapack-API.patch diff --git a/patches/unapplied/server/0524-Add-environment-variable-to-disable-server-gui.patch b/patches/server/0523-Add-environment-variable-to-disable-server-gui.patch similarity index 86% rename from patches/unapplied/server/0524-Add-environment-variable-to-disable-server-gui.patch rename to patches/server/0523-Add-environment-variable-to-disable-server-gui.patch index 5afe5fb870..186cfa260f 100644 --- a/patches/unapplied/server/0524-Add-environment-variable-to-disable-server-gui.patch +++ b/patches/server/0523-Add-environment-variable-to-disable-server-gui.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add environment variable to disable server gui diff --git a/src/main/java/net/minecraft/server/Main.java b/src/main/java/net/minecraft/server/Main.java -index 59d623dd45c395552ffd99e6fa744c0f71d94998..cf071610ed662c4a309cc26ee73a74fa490d846f 100644 +index da61f3a4ec9bb9726d9d45552b8eada3f87d9e58..c551f6827476b6432ebe1d48e7ca5d168df305c5 100644 --- a/src/main/java/net/minecraft/server/Main.java +++ b/src/main/java/net/minecraft/server/Main.java -@@ -318,6 +318,7 @@ public class Main { +@@ -320,6 +320,7 @@ public class Main { */ boolean flag2 = !optionset.has("nogui") && !optionset.nonOptionArguments().contains("nogui"); diff --git a/patches/unapplied/server/0525-Expand-PlayerGameModeChangeEvent.patch b/patches/server/0524-Expand-PlayerGameModeChangeEvent.patch similarity index 94% rename from patches/unapplied/server/0525-Expand-PlayerGameModeChangeEvent.patch rename to patches/server/0524-Expand-PlayerGameModeChangeEvent.patch index 1aafe423c2..065d67fdf4 100644 --- a/patches/unapplied/server/0525-Expand-PlayerGameModeChangeEvent.patch +++ b/patches/server/0524-Expand-PlayerGameModeChangeEvent.patch @@ -45,10 +45,10 @@ index 7f09119bc7d661e08a960dd2bd46006efe752d3e..d1da3600dc07107309b20ebe6e7c0c4d } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 563b20033a5280091f93ab72a8600369035b6a0a..bbbf48a43c48ba0db7ee74a8b9a1f1beeb211f68 100644 +index c22dce8b30c8af3e37b497b0d97c6ceef0295883..2125f9dc87dbf31a66004dc859788f584e099e73 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -2335,10 +2335,18 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -2315,10 +2315,18 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { } public boolean setGameMode(GameType gameMode) { @@ -69,7 +69,7 @@ index 563b20033a5280091f93ab72a8600369035b6a0a..bbbf48a43c48ba0db7ee74a8b9a1f1be } else { this.connection.send(new ClientboundGameEventPacket(ClientboundGameEventPacket.CHANGE_GAME_MODE, (float) gameMode.getId())); if (gameMode == GameType.SPECTATOR) { -@@ -2354,7 +2362,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -2334,7 +2342,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { this.onUpdateAbilities(); this.updateEffectVisibility(); @@ -78,7 +78,7 @@ index 563b20033a5280091f93ab72a8600369035b6a0a..bbbf48a43c48ba0db7ee74a8b9a1f1be } } -@@ -2803,6 +2811,16 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -2783,6 +2791,16 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { } public void loadGameTypes(@Nullable CompoundTag nbt) { @@ -134,10 +134,10 @@ index 546be40a8e4470fb5a6686072cdd342cdaa6fe15..e000a918230187f6841b03b7b0dd7368 } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 2bd2f1cdf3467cacee55094d43bd3eccf61b9aa7..c3b4b800c5a34afa03ed7c31e14f26ca16109982 100644 +index 47f925707d8756796ce169b7cbd8f2410b0b7104..f97bbed2b0098fb9b9b0a9e7c2a124e1370608cc 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2751,7 +2751,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2818,7 +2818,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.player = this.server.getPlayerList().respawn(this.player, false, Entity.RemovalReason.KILLED, RespawnReason.DEATH); // CraftBukkit this.resetPosition(); if (this.server.isHardcore()) { @@ -147,7 +147,7 @@ index 2bd2f1cdf3467cacee55094d43bd3eccf61b9aa7..c3b4b800c5a34afa03ed7c31e14f26ca } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index a9ba1ae986985e1af132e651059d4aee261779a3..6f8e56117a78b9bd41668580414c2b4ebe2e1ec7 100644 +index c93ec7e97c9af44ed75e7ea4fb1c6c58c2b6bc1a..0b151a66d7419653088526bd72119ebd2d6dd18e 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1671,7 +1671,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/unapplied/server/0526-ItemStack-repair-check-API.patch b/patches/server/0525-ItemStack-repair-check-API.patch similarity index 96% rename from patches/unapplied/server/0526-ItemStack-repair-check-API.patch rename to patches/server/0525-ItemStack-repair-check-API.patch index fb178f277b..33c7e11836 100644 --- a/patches/unapplied/server/0526-ItemStack-repair-check-API.patch +++ b/patches/server/0525-ItemStack-repair-check-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] ItemStack repair check API diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 25a206cf1eb07e826b549aacf9a4d0fbffb32177..079cb08b92061bb14952cf4ad2bda61e154f4438 100644 +index 30f2ddb66385718304b4b0302f7efcafd54bc42a..fa4e8cb2d53e0ac4e15a8188454ceed0afafe503 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -548,6 +548,14 @@ public final class CraftMagicNumbers implements UnsafeValues { diff --git a/patches/unapplied/server/0527-More-Enchantment-API.patch b/patches/server/0526-More-Enchantment-API.patch similarity index 100% rename from patches/unapplied/server/0527-More-Enchantment-API.patch rename to patches/server/0526-More-Enchantment-API.patch diff --git a/patches/unapplied/server/0528-Move-range-check-for-block-placing-up.patch b/patches/server/0527-Move-range-check-for-block-placing-up.patch similarity index 60% rename from patches/unapplied/server/0528-Move-range-check-for-block-placing-up.patch rename to patches/server/0527-Move-range-check-for-block-placing-up.patch index b93574bed6..fb8c43feb0 100644 --- a/patches/unapplied/server/0528-Move-range-check-for-block-placing-up.patch +++ b/patches/server/0527-Move-range-check-for-block-placing-up.patch @@ -5,18 +5,18 @@ Subject: [PATCH] Move range check for block placing up diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index c3b4b800c5a34afa03ed7c31e14f26ca16109982..cad988c90749183e3af01b319206d49a8734ac15 100644 +index f97bbed2b0098fb9b9b0a9e7c2a124e1370608cc..10376b24e3a09c023a73a21a4499415589795423 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1757,6 +1757,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - if (itemstack.isItemEnabled(worldserver.enabledFeatures())) { - BlockHitResult movingobjectpositionblock = packet.getHitResult(); - Vec3 vec3d = movingobjectpositionblock.getLocation(); +@@ -1814,6 +1814,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl + if (itemstack.isItemEnabled(worldserver.enabledFeatures())) { + BlockHitResult movingobjectpositionblock = packet.getHitResult(); + Vec3 vec3d = movingobjectpositionblock.getLocation(); + // Paper start - improve distance check + if (!Double.isFinite(vec3d.x) || !Double.isFinite(vec3d.y) || !Double.isFinite(vec3d.z)) { + return; + } + // Paper end - improve distance check - BlockPos blockposition = movingobjectpositionblock.getBlockPos(); + BlockPos blockposition = movingobjectpositionblock.getBlockPos(); - if (this.player.canInteractWithBlock(blockposition, 1.0D)) { + if (this.player.canInteractWithBlock(blockposition, 1.0D)) { diff --git a/patches/unapplied/server/0529-Add-Mob-lookAt-API.patch b/patches/server/0528-Add-Mob-lookAt-API.patch similarity index 100% rename from patches/unapplied/server/0529-Add-Mob-lookAt-API.patch rename to patches/server/0528-Add-Mob-lookAt-API.patch diff --git a/patches/unapplied/server/0530-Correctly-check-if-bucket-dispenses-will-succeed-for.patch b/patches/server/0529-Correctly-check-if-bucket-dispenses-will-succeed-for.patch similarity index 96% rename from patches/unapplied/server/0530-Correctly-check-if-bucket-dispenses-will-succeed-for.patch rename to patches/server/0529-Correctly-check-if-bucket-dispenses-will-succeed-for.patch index 85ef521c40..cc05cc8b4e 100644 --- a/patches/unapplied/server/0530-Correctly-check-if-bucket-dispenses-will-succeed-for.patch +++ b/patches/server/0529-Correctly-check-if-bucket-dispenses-will-succeed-for.patch @@ -8,7 +8,7 @@ in order to fire the BlockDispenseEvent. This patch corrects that. diff --git a/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java b/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java -index c63a86af95849cacdfed3b061122b90651fd5bdf..5793569ae8a088f21b0d8d6771a5099b1e88be09 100644 +index ab002c2a5cfb029bd61b7d8e0548fd135b95cdcc..780f83d50aac70c819608f4c79c08ef34664d7b0 100644 --- a/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java +++ b/src/main/java/net/minecraft/core/dispenser/DispenseItemBehavior.java @@ -330,7 +330,13 @@ public interface DispenseItemBehavior { diff --git a/patches/unapplied/server/0531-Add-Unix-domain-socket-support.patch b/patches/server/0530-Add-Unix-domain-socket-support.patch similarity index 98% rename from patches/unapplied/server/0531-Add-Unix-domain-socket-support.patch rename to patches/server/0530-Add-Unix-domain-socket-support.patch index 34dd3ee134..08bcf8abe1 100644 --- a/patches/unapplied/server/0531-Add-Unix-domain-socket-support.patch +++ b/patches/server/0530-Add-Unix-domain-socket-support.patch @@ -87,10 +87,10 @@ index d6d7f1c446ba5507f67038ff27775ba75156f4a7..c63c194c44646e6bc1a5942655278701 } diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index cad988c90749183e3af01b319206d49a8734ac15..34258a58ea7b75363eff825e3db27832d3559557 100644 +index 10376b24e3a09c023a73a21a4499415589795423..979f2aa4716cd5ddc35e2d81a3de82af4b4c296e 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2566,6 +2566,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2631,6 +2631,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // Spigot Start public SocketAddress getRawAddress() { diff --git a/patches/unapplied/server/0532-Add-EntityInsideBlockEvent.patch b/patches/server/0531-Add-EntityInsideBlockEvent.patch similarity index 96% rename from patches/unapplied/server/0532-Add-EntityInsideBlockEvent.patch rename to patches/server/0531-Add-EntityInsideBlockEvent.patch index 0009e3fbdf..cf9fee7e14 100644 --- a/patches/unapplied/server/0532-Add-EntityInsideBlockEvent.patch +++ b/patches/server/0531-Add-EntityInsideBlockEvent.patch @@ -77,7 +77,7 @@ index de1b64e0cbe7f2de63f04262428c9e6ec340916e..c045b1cccf0047dbef8c04d5a28d31d5 } diff --git a/src/main/java/net/minecraft/world/level/block/CampfireBlock.java b/src/main/java/net/minecraft/world/level/block/CampfireBlock.java -index 1cc807a7a73ea35919259d7d8370fa3bcc44fb2f..18d4020017d76303d3179fad8974574777ea6305 100644 +index e03e2f1d84b4f12d78974b90eb4b741818cdac17..1b94f26e78db062f80d806b82f714a815b4710ff 100644 --- a/src/main/java/net/minecraft/world/level/block/CampfireBlock.java +++ b/src/main/java/net/minecraft/world/level/block/CampfireBlock.java @@ -112,6 +112,7 @@ public class CampfireBlock extends BaseEntityBlock implements SimpleWaterloggedB @@ -89,7 +89,7 @@ index 1cc807a7a73ea35919259d7d8370fa3bcc44fb2f..18d4020017d76303d3179fad89745747 entity.hurt(world.damageSources().campfire().directBlock(world, pos), (float) this.fireDamage); // CraftBukkit } diff --git a/src/main/java/net/minecraft/world/level/block/CropBlock.java b/src/main/java/net/minecraft/world/level/block/CropBlock.java -index 93c9f093eef0568a3816412fa497c12487ff04e3..79ebc37a779bf6cba66a34a7604f819e95fd86a2 100644 +index 91dd550de860fd16585218814eae0b9dc877c77d..6fe896079c0ae622976c2055f8d13cda5ed3ea3d 100644 --- a/src/main/java/net/minecraft/world/level/block/CropBlock.java +++ b/src/main/java/net/minecraft/world/level/block/CropBlock.java @@ -174,6 +174,7 @@ public class CropBlock extends BushBlock implements BonemealableBlock { @@ -113,7 +113,7 @@ index 1e2f56b5c40c3dc72bc38354160f8e7de1f4f5cf..fa1c4defd0d4e4cd888eb26eed131539 if (!(Boolean) state.getValue(DetectorRailBlock.POWERED)) { this.checkPressed(world, pos, state); diff --git a/src/main/java/net/minecraft/world/level/block/EndGatewayBlock.java b/src/main/java/net/minecraft/world/level/block/EndGatewayBlock.java -index ae32d7819ee45d6d334be19c78f8150d104fb787..bb4800c60ac05f2db8821737b2b884ea99b64799 100644 +index b27b09fcb895b72c51335bdcb095f0f3bd3a190b..58b2454ac5bd3400559aba3c64f228f41f6218ae 100644 --- a/src/main/java/net/minecraft/world/level/block/EndGatewayBlock.java +++ b/src/main/java/net/minecraft/world/level/block/EndGatewayBlock.java @@ -92,6 +92,7 @@ public class EndGatewayBlock extends BaseEntityBlock implements Portal { @@ -125,7 +125,7 @@ index ae32d7819ee45d6d334be19c78f8150d104fb787..bb4800c60ac05f2db8821737b2b884ea BlockEntity tileentity = world.getBlockEntity(pos); diff --git a/src/main/java/net/minecraft/world/level/block/EndPortalBlock.java b/src/main/java/net/minecraft/world/level/block/EndPortalBlock.java -index 5744944455b08d45a7c0fe2289414b50b6c0d66a..6ed6c2123ed4c54f191ed8cf6da72109fb95eb69 100644 +index 8887d35d188510cf10da3dc46b0b56373ac346bd..8ca226641588a88c8b068a7acac9d7e92b077144 100644 --- a/src/main/java/net/minecraft/world/level/block/EndPortalBlock.java +++ b/src/main/java/net/minecraft/world/level/block/EndPortalBlock.java @@ -68,6 +68,7 @@ public class EndPortalBlock extends BaseEntityBlock implements Portal { @@ -161,10 +161,10 @@ index 3ddf43a8afe8f00ca910d7838356dfc6d007a4f9..5c360c6768582c1a35431739613e9b40 this.maybeDoSlideAchievement(entity, pos); this.doSlideMovement(entity); diff --git a/src/main/java/net/minecraft/world/level/block/HopperBlock.java b/src/main/java/net/minecraft/world/level/block/HopperBlock.java -index 19ace6115a80f2696746bd98a5465259e4f1a633..b61324fe162f32817b87e4adb80df57b9433259f 100644 +index 882e7e6c7fa77eef109f8203f22edfa9536a96f8..9da02e643948aaea91307e28eb83177aa5d0ecec 100644 --- a/src/main/java/net/minecraft/world/level/block/HopperBlock.java +++ b/src/main/java/net/minecraft/world/level/block/HopperBlock.java -@@ -183,6 +183,7 @@ public class HopperBlock extends BaseEntityBlock { +@@ -178,6 +178,7 @@ public class HopperBlock extends BaseEntityBlock { @Override protected void entityInside(BlockState state, Level world, BlockPos pos, Entity entity) { @@ -197,7 +197,7 @@ index c088d713e80f16ead333ea5283f7f95a2de08523..4ab73a083eba2ad3e12526af0a0dbcfb if (entity.isOnFire() && this.isEntityInsideContent(state, pos, entity)) { // CraftBukkit start - moved down diff --git a/src/main/java/net/minecraft/world/level/block/NetherPortalBlock.java b/src/main/java/net/minecraft/world/level/block/NetherPortalBlock.java -index dea13596eb8a3b7bc69c19545b2227b4c45ed241..c00507fa7af579263caed67dafc2ea9eba09512b 100644 +index e404722c119631e31c0519111ccd5f1682c2638d..151025a407a07271bc205955f0ce06f84231563b 100644 --- a/src/main/java/net/minecraft/world/level/block/NetherPortalBlock.java +++ b/src/main/java/net/minecraft/world/level/block/NetherPortalBlock.java @@ -115,6 +115,7 @@ public class NetherPortalBlock extends Block implements Portal { @@ -233,7 +233,7 @@ index aaf9350a096022c87ccb788d657c1ae6a7b53a47..53f1a7ed6b4bd6e2d8460531226aabf2 entity.makeStuckInBlock(state, new Vec3(0.8999999761581421D, 1.5D, 0.8999999761581421D)); if (world.isClientSide) { diff --git a/src/main/java/net/minecraft/world/level/block/SweetBerryBushBlock.java b/src/main/java/net/minecraft/world/level/block/SweetBerryBushBlock.java -index 3cd04097fc698d29d395c0ee28aadaec7c87b5a2..d61173ae5818fe6b507823fd9ddc0584cd5809b9 100644 +index a044a2d7e5cb7027394c95c495c59530bc5e18ce..265c85413da04dbc7292a0af934a8b665b2fced5 100644 --- a/src/main/java/net/minecraft/world/level/block/SweetBerryBushBlock.java +++ b/src/main/java/net/minecraft/world/level/block/SweetBerryBushBlock.java @@ -84,6 +84,7 @@ public class SweetBerryBushBlock extends BushBlock implements BonemealableBlock @@ -281,7 +281,7 @@ index 4b621793da3d6fbc44f90df863b099ba992930fb..fc209fab3ed1ccb35706a5529ec23ad8 if (entity instanceof LivingEntity livingEntity && livingEntity.hasEffect(MobEffects.WEAVING)) { vec3 = new Vec3(0.5, 0.25, 0.5); diff --git a/src/main/java/net/minecraft/world/level/block/WitherRoseBlock.java b/src/main/java/net/minecraft/world/level/block/WitherRoseBlock.java -index 2f67e26b4c030c1747346f6d02076bd21f11d32e..b481d67e3646242b8eb1b9890e09b56b9406fecb 100644 +index b42924ebdd0f5369151b8a37f0070dec7f402073..8b79b2b7766d873b7e689309d936982fc1724686 100644 --- a/src/main/java/net/minecraft/world/level/block/WitherRoseBlock.java +++ b/src/main/java/net/minecraft/world/level/block/WitherRoseBlock.java @@ -63,6 +63,7 @@ public class WitherRoseBlock extends FlowerBlock { diff --git a/patches/unapplied/server/0533-Improve-item-default-attribute-API.patch b/patches/server/0532-Improve-item-default-attribute-API.patch similarity index 98% rename from patches/unapplied/server/0533-Improve-item-default-attribute-API.patch rename to patches/server/0532-Improve-item-default-attribute-API.patch index f5daf28287..4ded5398f8 100644 --- a/patches/unapplied/server/0533-Improve-item-default-attribute-API.patch +++ b/patches/server/0532-Improve-item-default-attribute-API.patch @@ -62,7 +62,7 @@ index 68756419ac6ee292db9569eab380a5c14d748002..6d76cc1db3ac3f1ae74c13511937fb86 return defaultAttributes.build(); } diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 079cb08b92061bb14952cf4ad2bda61e154f4438..6855210dc58f455b5af05d9c039da55e8dfc93f1 100644 +index fa4e8cb2d53e0ac4e15a8188454ceed0afafe503..e613ea0eba9a1d162b8f7dfe32c9c31d82f17dd2 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -386,7 +386,11 @@ public final class CraftMagicNumbers implements UnsafeValues { diff --git a/patches/unapplied/server/0534-Add-cause-to-Weather-ThunderChangeEvents.patch b/patches/server/0533-Add-cause-to-Weather-ThunderChangeEvents.patch similarity index 94% rename from patches/unapplied/server/0534-Add-cause-to-Weather-ThunderChangeEvents.patch rename to patches/server/0533-Add-cause-to-Weather-ThunderChangeEvents.patch index a1ad2da798..6293b65e40 100644 --- a/patches/unapplied/server/0534-Add-cause-to-Weather-ThunderChangeEvents.patch +++ b/patches/server/0533-Add-cause-to-Weather-ThunderChangeEvents.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add cause to Weather/ThunderChangeEvents diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index d8eeedcc52ae939246caa61a6bacd3b15c8ae239..8e2edab16113128a755349d03d83dd46e8b806cb 100644 +index dc2b8d8e62cf1405191aa4fc8d4fa548c7249032..c05ccab70bd81d536f93352f30aab9b07b90876a 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -434,8 +434,8 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -435,8 +435,8 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe this.serverLevelData.setClearWeatherTime(clearDuration); this.serverLevelData.setRainTime(rainDuration); this.serverLevelData.setThunderTime(rainDuration); @@ -19,7 +19,7 @@ index d8eeedcc52ae939246caa61a6bacd3b15c8ae239..8e2edab16113128a755349d03d83dd46 } @Override -@@ -851,8 +851,8 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -852,8 +852,8 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe this.serverLevelData.setThunderTime(j); this.serverLevelData.setRainTime(k); this.serverLevelData.setClearWeatherTime(i); @@ -30,7 +30,7 @@ index d8eeedcc52ae939246caa61a6bacd3b15c8ae239..8e2edab16113128a755349d03d83dd46 } this.oThunderLevel = this.thunderLevel; -@@ -919,14 +919,14 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -920,14 +920,14 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe @VisibleForTesting public void resetWeatherCycle() { // CraftBukkit start @@ -95,7 +95,7 @@ index 6a3959095e57f76b3a092b32d26ff91cf1c5e068..0fa16ff37f09ecfda104b751e48bf246 if (weather.isCancelled()) { return; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 956f7206f26325ed1be639bd6289991332763a70..1311c9aae7859f706b20bf4d43f23959d0ef050b 100644 +index f20717ee4505d28fa44f0f9ced5c71ae75c8a6d9..691d65bca79d503a43f696d92a0a32226cddaad5 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1201,7 +1201,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/unapplied/server/0535-More-Lidded-Block-API.patch b/patches/server/0534-More-Lidded-Block-API.patch similarity index 100% rename from patches/unapplied/server/0535-More-Lidded-Block-API.patch rename to patches/server/0534-More-Lidded-Block-API.patch diff --git a/patches/unapplied/server/0536-Limit-item-frame-cursors-on-maps.patch b/patches/server/0535-Limit-item-frame-cursors-on-maps.patch similarity index 100% rename from patches/unapplied/server/0536-Limit-item-frame-cursors-on-maps.patch rename to patches/server/0535-Limit-item-frame-cursors-on-maps.patch diff --git a/patches/unapplied/server/0537-Add-PlayerKickEvent-causes.patch b/patches/server/0536-Add-PlayerKickEvent-causes.patch similarity index 90% rename from patches/unapplied/server/0537-Add-PlayerKickEvent-causes.patch rename to patches/server/0536-Add-PlayerKickEvent-causes.patch index 72d8307b93..25c4735557 100644 --- a/patches/unapplied/server/0537-Add-PlayerKickEvent-causes.patch +++ b/patches/server/0536-Add-PlayerKickEvent-causes.patch @@ -43,7 +43,7 @@ index dbcf183483766f39334d7f7e8336033906625f3f..300929a406905f5ff1ede664d5b99fb0 } diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index c0cf470807ddeaecd63946cc9e3bdbe18fdb7092..8f7b68cda090e038b5b6a7928e872debca4e011d 100644 +index 0ab92fb362729108beca6bc0230fb6fb06ca6280..edd2e83df282b0e24d4c7e3a34776a5b039c2c6b 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -2325,7 +2325,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop this.getMaximumFlyingTicks(this.player)) { ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked for floating too long!", this.player.getName().getString()); @@ -241,7 +241,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f return; } } else { -@@ -378,7 +378,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -380,7 +380,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (this.clientVehicleIsFloating && this.lastVehicle.getControllingPassenger() == this.player) { if (++this.aboveGroundVehicleTickCount > this.getMaximumFlyingTicks(this.lastVehicle)) { ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked for floating a vehicle too long!", this.player.getName().getString()); @@ -250,7 +250,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f return; } } else { -@@ -398,7 +398,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -400,7 +400,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.dropSpamThrottler.tick(); if (this.player.getLastActionTime() > 0L && this.server.getPlayerIdleTimeout() > 0 && Util.getMillis() - this.player.getLastActionTime() > (long) this.server.getPlayerIdleTimeout() * 1000L * 60L) { this.player.resetLastActionTime(); // CraftBukkit - SPIGOT-854 @@ -259,16 +259,16 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f } } -@@ -486,7 +486,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -488,7 +488,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl public void handleMoveVehicle(ServerboundMoveVehiclePacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); - if (ServerGamePacketListenerImpl.containsInvalidValues(packet.getX(), packet.getY(), packet.getZ(), packet.getYRot(), packet.getXRot())) { + if (ServerGamePacketListenerImpl.containsInvalidValues(packet.position().x(), packet.position().y(), packet.position().z(), packet.yRot(), packet.xRot())) { - this.disconnect((Component) Component.translatable("multiplayer.disconnect.invalid_vehicle_movement")); + this.disconnect((Component) Component.translatable("multiplayer.disconnect.invalid_vehicle_movement"), org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_VEHICLE_MOVEMENT); // Paper - kick event cause - } else if (!this.updateAwaitingTeleport()) { + } else if (!this.updateAwaitingTeleport() && this.player.hasClientLoaded()) { Entity entity = this.player.getRootVehicle(); -@@ -692,7 +692,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -687,7 +687,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); if (packet.getId() == this.awaitingTeleport) { if (this.awaitingPositionFromClient == null) { @@ -277,7 +277,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f return; } -@@ -756,7 +756,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -754,7 +754,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); // Paper - AsyncTabCompleteEvent; run this async // CraftBukkit start if (!this.tabSpamThrottler.isIncrementAndUnderThreshold() && !this.server.getPlayerList().isOp(this.player.getGameProfile()) && !this.server.isSingleplayerOwner(this.player.getGameProfile())) { // Paper - configurable tab spam limits @@ -286,16 +286,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f return; } // CraftBukkit end -@@ -921,7 +921,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - // Paper start - validate pick item position - if (!(packet.getSlot() >= 0 && packet.getSlot() < this.player.getInventory().items.size())) { - ServerGamePacketListenerImpl.LOGGER.warn("{} tried to set an invalid carried item", this.player.getName().getString()); -- this.disconnect(Component.literal("Invalid hotbar selection (Hacking?)")); -+ this.disconnect(Component.literal("Invalid hotbar selection (Hacking?)"), org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION); // Paper - kick event cause - return; - } - this.player.getInventory().pickSlot(packet.getSlot()); // Paper - Diff above if changed -@@ -1124,14 +1124,14 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1178,14 +1178,14 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (byteTotal > byteAllowed) { ServerGamePacketListenerImpl.LOGGER.warn("{} tried to send a book too large. Book size: {} - Allowed: {} - Pages: {}", this.player.getScoreboardName(), byteTotal, byteAllowed, pageList.size()); @@ -312,7 +303,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f return; } this.lastBookTick = MinecraftServer.currentTick; -@@ -1240,7 +1240,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1294,7 +1294,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl public void handleMovePlayer(ServerboundMovePlayerPacket packet) { PacketUtils.ensureRunningOnSameThread(packet, this, this.player.serverLevel()); if (ServerGamePacketListenerImpl.containsInvalidValues(packet.getX(0.0D), packet.getY(0.0D), packet.getZ(0.0D), packet.getYRot(0.0F), packet.getXRot(0.0F))) { @@ -321,16 +312,16 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f } else { ServerLevel worldserver = this.player.serverLevel(); -@@ -1679,7 +1679,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - this.dropCount++; - if (this.dropCount >= 20) { - ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " dropped their items too quickly!"); -- this.disconnect(Component.literal("You dropped your items too quickly (Hacking?)")); -+ this.disconnect(Component.literal("You dropped your items too quickly (Hacking?)"), org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION); // Paper - kick event cause - return; +@@ -1734,7 +1734,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl + this.dropCount++; + if (this.dropCount >= 20) { + ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " dropped their items too quickly!"); +- this.disconnect(Component.literal("You dropped your items too quickly (Hacking?)")); ++ this.disconnect(Component.literal("You dropped your items too quickly (Hacking?)"), org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION); // Paper - kick event cause + return; + } } - } -@@ -1976,7 +1976,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2036,7 +2036,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.player.resetLastActionTime(); } else { ServerGamePacketListenerImpl.LOGGER.warn("{} tried to set an invalid carried item", this.player.getName().getString()); @@ -339,7 +330,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f } } -@@ -2174,7 +2174,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2234,7 +2234,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl private void tryHandleChat(String s, Runnable runnable, boolean sync) { // CraftBukkit if (ServerGamePacketListenerImpl.isChatMessageIllegal(s)) { @@ -348,7 +339,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f } else if (this.player.isRemoved() || this.player.getChatVisibility() == ChatVisiblity.HIDDEN) { // CraftBukkit - dead men tell no tales this.send(new ClientboundSystemChatPacket(Component.translatable("chat.disabled.options").withStyle(ChatFormatting.RED), false)); } else { -@@ -2197,7 +2197,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2257,7 +2257,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (optional.isEmpty()) { ServerGamePacketListenerImpl.LOGGER.warn("Failed to validate message acknowledgements from {}", this.player.getName().getString()); @@ -357,7 +348,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f } return optional; -@@ -2378,7 +2378,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2438,7 +2438,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // this.chatSpamThrottler.increment(); if (!this.chatSpamThrottler.isIncrementAndUnderThreshold() && !this.server.getPlayerList().isOp(this.player.getGameProfile()) && !this.server.isSingleplayerOwner(this.player.getGameProfile())) { // CraftBukkit end @@ -366,7 +357,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f } } -@@ -2390,7 +2390,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2450,7 +2450,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl synchronized (this.lastSeenMessages) { if (!this.lastSeenMessages.applyOffset(packet.offset())) { ServerGamePacketListenerImpl.LOGGER.warn("Failed to validate message acknowledgements from {}", this.player.getName().getString()); @@ -375,7 +366,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f } } -@@ -2538,7 +2538,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2603,7 +2603,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } if (i > 4096) { @@ -384,25 +375,25 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f } } -@@ -2596,7 +2596,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - // Spigot Start - if ( entity == this.player && !this.player.isSpectator() ) - { -- this.disconnect( Component.literal( "Cannot interact with self!" ) ); -+ this.disconnect( Component.literal( "Cannot interact with self!" ), org.bukkit.event.player.PlayerKickEvent.Cause.SELF_INTERACTION ); // Paper - kick event cause - return; - } - // Spigot End -@@ -2712,7 +2712,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2662,7 +2662,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl + // Spigot Start + if ( entity == this.player && !this.player.isSpectator() ) + { +- this.disconnect( Component.literal( "Cannot interact with self!" ) ); ++ this.disconnect( Component.literal( "Cannot interact with self!" ), org.bukkit.event.player.PlayerKickEvent.Cause.SELF_INTERACTION ); // Paper - kick event cause + return; + } + // Spigot End +@@ -2778,7 +2778,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl + } } - } -- ServerGamePacketListenerImpl.this.disconnect((Component) Component.translatable("multiplayer.disconnect.invalid_entity_attacked")); -+ ServerGamePacketListenerImpl.this.disconnect((Component) Component.translatable("multiplayer.disconnect.invalid_entity_attacked"), org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_ENTITY_ATTACKED); // Paper - add cause - ServerGamePacketListenerImpl.LOGGER.warn("Player {} tried to attack an invalid entity", ServerGamePacketListenerImpl.this.player.getName().getString()); - } - }); -@@ -3111,7 +3111,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +- ServerGamePacketListenerImpl.this.disconnect((Component) Component.translatable("multiplayer.disconnect.invalid_entity_attacked")); ++ ServerGamePacketListenerImpl.this.disconnect((Component) Component.translatable("multiplayer.disconnect.invalid_entity_attacked"), org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_ENTITY_ATTACKED); // Paper - add cause + ServerGamePacketListenerImpl.LOGGER.warn("Player {} tried to attack an invalid entity", ServerGamePacketListenerImpl.this.player.getName().getString()); + } + }); +@@ -3178,7 +3178,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl // Paper start - auto recipe limit if (!org.bukkit.Bukkit.isPrimaryThread()) { if (!this.recipeSpamPackets.isIncrementAndUnderThreshold()) { @@ -411,7 +402,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f return; } } -@@ -3382,7 +3382,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3440,7 +3440,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl if (!Objects.equals(profilepublickey_a, profilepublickey_a1)) { if (profilepublickey_a != null && profilepublickey_a1.expiresAt().isBefore(profilepublickey_a.expiresAt())) { @@ -420,7 +411,7 @@ index 34258a58ea7b75363eff825e3db27832d3559557..36127f7c9ae50a628e88e7b456889a8f } else { try { SignatureValidator signaturevalidator = this.server.getProfileKeySignatureValidator(); -@@ -3395,7 +3395,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -3453,7 +3453,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.resetPlayerChatState(remotechatsession_a.validate(this.player.getGameProfile(), signaturevalidator)); } catch (ProfilePublicKey.ValidationException profilepublickey_b) { ServerGamePacketListenerImpl.LOGGER.error("Failed to validate profile key: {}", profilepublickey_b.getMessage()); @@ -495,7 +486,7 @@ index 9e2ad78b12cadbf0e2bda1e12fe844120529c347..6a7d7fad990fc44fdda6849d43dad141 } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index 6f8e56117a78b9bd41668580414c2b4ebe2e1ec7..cfa079ba53e6829ed8abbb60d374e20585072cc0 100644 +index 0b151a66d7419653088526bd72119ebd2d6dd18e..ff8d6a0ceb41258541c0049464dc0923ed4872bd 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -280,7 +280,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/unapplied/server/0538-Add-PufferFishStateChangeEvent.patch b/patches/server/0537-Add-PufferFishStateChangeEvent.patch similarity index 100% rename from patches/unapplied/server/0538-Add-PufferFishStateChangeEvent.patch rename to patches/server/0537-Add-PufferFishStateChangeEvent.patch diff --git a/patches/unapplied/server/0539-Fix-PlayerBucketEmptyEvent-result-itemstack.patch b/patches/server/0538-Fix-PlayerBucketEmptyEvent-result-itemstack.patch similarity index 100% rename from patches/unapplied/server/0539-Fix-PlayerBucketEmptyEvent-result-itemstack.patch rename to patches/server/0538-Fix-PlayerBucketEmptyEvent-result-itemstack.patch diff --git a/patches/unapplied/server/0540-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch b/patches/server/0539-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch similarity index 100% rename from patches/unapplied/server/0540-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch rename to patches/server/0539-Synchronize-PalettedContainer-instead-of-ThreadingDe.patch diff --git a/patches/unapplied/server/0541-Add-option-to-fix-items-merging-through-walls.patch b/patches/server/0540-Add-option-to-fix-items-merging-through-walls.patch similarity index 100% rename from patches/unapplied/server/0541-Add-option-to-fix-items-merging-through-walls.patch rename to patches/server/0540-Add-option-to-fix-items-merging-through-walls.patch diff --git a/patches/unapplied/server/0542-Add-BellRevealRaiderEvent.patch b/patches/server/0541-Add-BellRevealRaiderEvent.patch similarity index 100% rename from patches/unapplied/server/0542-Add-BellRevealRaiderEvent.patch rename to patches/server/0541-Add-BellRevealRaiderEvent.patch diff --git a/patches/unapplied/server/0543-Fix-invulnerable-end-crystals.patch b/patches/server/0542-Fix-invulnerable-end-crystals.patch similarity index 100% rename from patches/unapplied/server/0543-Fix-invulnerable-end-crystals.patch rename to patches/server/0542-Fix-invulnerable-end-crystals.patch diff --git a/patches/unapplied/server/0544-Add-ElderGuardianAppearanceEvent.patch b/patches/server/0543-Add-ElderGuardianAppearanceEvent.patch similarity index 100% rename from patches/unapplied/server/0544-Add-ElderGuardianAppearanceEvent.patch rename to patches/server/0543-Add-ElderGuardianAppearanceEvent.patch diff --git a/patches/unapplied/server/0545-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch b/patches/server/0544-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch similarity index 100% rename from patches/unapplied/server/0545-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch rename to patches/server/0544-Optimize-Biome-Mob-Lookups-for-Mob-Spawning.patch diff --git a/patches/unapplied/server/0546-Line-Of-Sight-Changes.patch b/patches/server/0545-Line-Of-Sight-Changes.patch similarity index 92% rename from patches/unapplied/server/0546-Line-Of-Sight-Changes.patch rename to patches/server/0545-Line-Of-Sight-Changes.patch index 7fa7d25951..a2ee93fb8f 100644 --- a/patches/unapplied/server/0546-Line-Of-Sight-Changes.patch +++ b/patches/server/0545-Line-Of-Sight-Changes.patch @@ -5,12 +5,12 @@ Subject: [PATCH] Line Of Sight Changes diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index 123f9a7675c1f194273fff0fdd804cb6ab409201..f240a63f39affc048d1c13eb184f4b07c6c52d3e 100644 +index 509139ab9a3070c8c96d14fdc4d07bc229b41bd6..b7c854614643cc6fcb78ce7ac378f5dbbb8eb305 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -3906,7 +3906,8 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -3913,7 +3913,8 @@ public abstract class LivingEntity extends Entity implements Attackable { Vec3 vec3d = new Vec3(this.getX(), this.getEyeY(), this.getZ()); - Vec3 vec3d1 = new Vec3(entity.getX(), entityY.getAsDouble(), entity.getZ()); + Vec3 vec3d1 = new Vec3(entity.getX(), entityY, entity.getZ()); - return vec3d1.distanceTo(vec3d) > 128.0D ? false : this.level().clip(new ClipContext(vec3d, vec3d1, shapeType, fluidHandling, this)).getType() == HitResult.Type.MISS; + // Paper - diff on change - used in CraftLivingEntity#hasLineOfSight(Location) and CraftWorld#lineOfSightExists @@ -45,7 +45,7 @@ index a070b2a83edaa702b13bc6d3026914126c211576..ca35e93239eea09b3d0dc6ef18f58743 // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 5749e2b5174be23633c8a811baec8c05da12e3e2..b5830f31c3444fcc6fea83a3b71a05bf07ce379d 100644 +index a4be1eea356ba99358d707381df70032ded42140..a4a30f52f45bf91dc88d53f5d6a376ed739d09eb 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -643,6 +643,23 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/unapplied/server/0547-add-per-world-spawn-limits.patch b/patches/server/0546-add-per-world-spawn-limits.patch similarity index 91% rename from patches/unapplied/server/0547-add-per-world-spawn-limits.patch rename to patches/server/0546-add-per-world-spawn-limits.patch index 5018769224..6ed4ae68af 100644 --- a/patches/unapplied/server/0547-add-per-world-spawn-limits.patch +++ b/patches/server/0546-add-per-world-spawn-limits.patch @@ -5,7 +5,7 @@ Subject: [PATCH] add per world spawn limits diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 1311c9aae7859f706b20bf4d43f23959d0ef050b..31305e402a3112d337b458f6b1aaf1bb97ba4fc2 100644 +index 691d65bca79d503a43f696d92a0a32226cddaad5..d72ceb866f8632a8daa7dc19acdc57b6b78fd906 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -219,6 +219,13 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/unapplied/server/0548-Fix-potions-splash-events.patch b/patches/server/0547-Fix-potions-splash-events.patch similarity index 100% rename from patches/unapplied/server/0548-Fix-potions-splash-events.patch rename to patches/server/0547-Fix-potions-splash-events.patch diff --git a/patches/unapplied/server/0549-Add-more-LimitedRegion-API.patch b/patches/server/0548-Add-more-LimitedRegion-API.patch similarity index 100% rename from patches/unapplied/server/0549-Add-more-LimitedRegion-API.patch rename to patches/server/0548-Add-more-LimitedRegion-API.patch diff --git a/patches/unapplied/server/0550-Fix-PlayerDropItemEvent-using-wrong-item.patch b/patches/server/0549-Fix-PlayerDropItemEvent-using-wrong-item.patch similarity index 93% rename from patches/unapplied/server/0550-Fix-PlayerDropItemEvent-using-wrong-item.patch rename to patches/server/0549-Fix-PlayerDropItemEvent-using-wrong-item.patch index 62881137b2..6fbcb401ee 100644 --- a/patches/unapplied/server/0550-Fix-PlayerDropItemEvent-using-wrong-item.patch +++ b/patches/server/0549-Fix-PlayerDropItemEvent-using-wrong-item.patch @@ -31,10 +31,10 @@ index c81fd3e1108fb0a02f9240263404af2b968c8494..0d9de4c61c7b26a6ff37c12fde629161 } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index bbbf48a43c48ba0db7ee74a8b9a1f1beeb211f68..286876246559eb38d6aa591c79afceb63d561aeb 100644 +index 2125f9dc87dbf31a66004dc859788f584e099e73..b1224b0ef12a746477047073f5bb94405871ce85 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -2744,7 +2744,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -2724,7 +2724,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { if (flag1) { if (!itemstack1.isEmpty()) { @@ -43,7 +43,7 @@ index bbbf48a43c48ba0db7ee74a8b9a1f1beeb211f68..286876246559eb38d6aa591c79afceb6 } this.awardStat(Stats.DROP); -@@ -2760,6 +2760,11 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -2740,6 +2740,11 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { return null; } else { double d0 = this.getEyeY() - 0.30000001192092896D; diff --git a/patches/unapplied/server/0551-Missing-Entity-API.patch b/patches/server/0550-Missing-Entity-API.patch similarity index 98% rename from patches/unapplied/server/0551-Missing-Entity-API.patch rename to patches/server/0550-Missing-Entity-API.patch index 5640dce8db..3f4ceb1648 100644 --- a/patches/unapplied/server/0551-Missing-Entity-API.patch +++ b/patches/server/0550-Missing-Entity-API.patch @@ -128,10 +128,10 @@ index 30095df7b64cfda4931dbfa22549ff5abefd53e0..c8ae49f58c254119c0e64a4e1501ebc5 this.leader = null; } diff --git a/src/main/java/net/minecraft/world/entity/animal/Bee.java b/src/main/java/net/minecraft/world/entity/animal/Bee.java -index adff3bec90786b87323653cf4f94a38c7b9ef7ff..048a357546c8f5ad5dbb86e2e1ada2730a52d061 100644 +index a48a29b5b1963db679b053f3530f64d2b9560290..a5eab5cdb761e3e9d37ea66287f26a2c3345182d 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Bee.java +++ b/src/main/java/net/minecraft/world/entity/animal/Bee.java -@@ -561,11 +561,13 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { +@@ -565,11 +565,13 @@ public class Bee extends Animal implements NeutralMob, FlyingAnimal { this.setFlag(4, hasStung); } @@ -265,7 +265,7 @@ index 04842dd7b9beabcecbd492d0b98faaebeea1a5d9..d5808d0c190877554a4a8191f68e8b4a @Override diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java -index 10c79cbc25383c0b65fb22a7347513134b7dee1d..b145023308e6a2823d83db97ff2d79c38b709ef9 100644 +index af721305a3b31f4aa9a36dfbc1cbe0cd278fa6ad..8415f7e1f8c391961dc5b0669da1ab4f8ae4950d 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java @@ -86,6 +86,11 @@ public class WitherBoss extends Monster implements RangedAttackMob { @@ -280,7 +280,7 @@ index 10c79cbc25383c0b65fb22a7347513134b7dee1d..b145023308e6a2823d83db97ff2d79c3 public WitherBoss(EntityType type, Level world) { super(type, world); -@@ -592,7 +597,7 @@ public class WitherBoss extends Monster implements RangedAttackMob { +@@ -591,7 +596,7 @@ public class WitherBoss extends Monster implements RangedAttackMob { @Override public boolean canUsePortal(boolean allowVehicles) { @@ -290,10 +290,10 @@ index 10c79cbc25383c0b65fb22a7347513134b7dee1d..b145023308e6a2823d83db97ff2d79c3 @Override diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -index 512de8e79a842d4389e8528983b94af4843ffd11..0e8349aa6cb23860a4dd884e730ac8f22d422205 100644 +index 0ddbebbe6eea00c379f2a250f7a44ba9313c1de1..4b798695af365dc97cbbbd09f370b8fc425f9ed6 100644 --- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java +++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -@@ -429,6 +429,16 @@ public class EnderMan extends Monster implements NeutralMob { +@@ -428,6 +428,16 @@ public class EnderMan extends Monster implements NeutralMob { this.entityData.set(EnderMan.DATA_STARED_AT, true); } @@ -328,7 +328,7 @@ index 71259b92a01a4feca270a250b1964f25f6da2d33..a8c8c03e972aa6352843cf4c3e4aebfb protected boolean shouldDespawnInPeaceful() { return true; diff --git a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java -index 69af895863a2d0fa25a128518bda99d1754f9ac0..533cb2eff3d56e7e8a70aba5e1047250e192bf2c 100644 +index 7f4c186a757e51ac788ec664a2c75dc7d7ce0eb3..a5d13b8bf7d0b6423ef428042e1134f5999cc24b 100644 --- a/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java +++ b/src/main/java/net/minecraft/world/entity/monster/ZombieVillager.java @@ -207,6 +207,12 @@ public class ZombieVillager extends Zombie implements VillagerDataHolder { @@ -354,10 +354,10 @@ index 69af895863a2d0fa25a128518bda99d1754f9ac0..533cb2eff3d56e7e8a70aba5e1047250 @Override diff --git a/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java b/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java -index c26ef5e3ed4bb0e0729585167d696226f312c214..248410547de380e3195bbdc8b7b39cff908a0c32 100644 +index 20a9dae93ee17bdef16b67a2db8e5e78b94d2c53..3888f13a49af26b0ece8813b607c20fc380cecd5 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java +++ b/src/main/java/net/minecraft/world/entity/projectile/ThrownTrident.java -@@ -113,6 +113,20 @@ public class ThrownTrident extends AbstractArrow { +@@ -114,6 +114,20 @@ public class ThrownTrident extends AbstractArrow { return (Boolean) this.entityData.get(ThrownTrident.ID_FOIL); } @@ -829,7 +829,7 @@ index 2cec61a1bb050c1ef81c5fc3d0afafe9ff29d459..97fa4e1e70203194bd939618b2fad926 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index b5830f31c3444fcc6fea83a3b71a05bf07ce379d..00db6ba96bda7ceaae8bc69a6b3a42e7a3929485 100644 +index a4a30f52f45bf91dc88d53f5d6a376ed739d09eb..6020c0c164595db4e2001edf0c1fbe99ed87682d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -128,6 +128,13 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/unapplied/server/0552-Fix-return-value-of-Block-applyBoneMeal-always-being.patch b/patches/server/0551-Fix-return-value-of-Block-applyBoneMeal-always-being.patch similarity index 100% rename from patches/unapplied/server/0552-Fix-return-value-of-Block-applyBoneMeal-always-being.patch rename to patches/server/0551-Fix-return-value-of-Block-applyBoneMeal-always-being.patch diff --git a/patches/unapplied/server/0553-Use-getChunkIfLoadedImmediately-in-places.patch b/patches/server/0552-Use-getChunkIfLoadedImmediately-in-places.patch similarity index 88% rename from patches/unapplied/server/0553-Use-getChunkIfLoadedImmediately-in-places.patch rename to patches/server/0552-Use-getChunkIfLoadedImmediately-in-places.patch index 2e754bbb7b..3d73d4e80f 100644 --- a/patches/unapplied/server/0553-Use-getChunkIfLoadedImmediately-in-places.patch +++ b/patches/server/0552-Use-getChunkIfLoadedImmediately-in-places.patch @@ -8,10 +8,10 @@ ticket level 33 (yes getChunkIfLoaded will actually perform a chunk load in that case). diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 8e2edab16113128a755349d03d83dd46e8b806cb..57b82b90ab55922e57ccf79c57296d1d2e34d6a2 100644 +index c05ccab70bd81d536f93352f30aab9b07b90876a..93656336af194994f59072fa89bfc338d89d76af 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -232,7 +232,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -233,7 +233,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe public boolean hasEntityMoveEvent; // Paper - Add EntityMoveEvent public LevelChunk getChunkIfLoaded(int x, int z) { @@ -21,10 +21,10 @@ index 8e2edab16113128a755349d03d83dd46e8b806cb..57b82b90ab55922e57ccf79c57296d1d @Override diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 71e9c1504d4b85ffb695401974748d56fefb66e6..9536e127ff4d45ca59b74fe0f3dbde9a18c04f42 100644 +index 2f82f77ba6530dcdb98037aa627ef3cead758b2e..68cee32833a3d683852e67e3727d62b84fa60cc4 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -179,6 +179,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -180,6 +180,13 @@ public abstract class Level implements LevelAccessor, AutoCloseable { public CraftServer getCraftServer() { return (CraftServer) Bukkit.getServer(); } diff --git a/patches/unapplied/server/0554-Fix-commands-from-signs-not-firing-command-events.patch b/patches/server/0553-Fix-commands-from-signs-not-firing-command-events.patch similarity index 98% rename from patches/unapplied/server/0554-Fix-commands-from-signs-not-firing-command-events.patch rename to patches/server/0553-Fix-commands-from-signs-not-firing-command-events.patch index aa87a425fd..c851f91672 100644 --- a/patches/unapplied/server/0554-Fix-commands-from-signs-not-firing-command-events.patch +++ b/patches/server/0553-Fix-commands-from-signs-not-firing-command-events.patch @@ -58,7 +58,7 @@ index 0000000000000000000000000000000000000000..01a2bc1feec808790bb93618ce46adb9 + } +} diff --git a/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java -index 3339130f3a02e6e395bcd8e3047b35f6f4eca9a9..a34c2fc6ac1418a89d789b8945ca3dad57f64151 100644 +index 9861388bdca8d32b7e9a49a251088c98283d8234..86550d200922ee313019a21fe593c594c967f28b 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/SignBlockEntity.java @@ -274,7 +274,17 @@ public class SignBlockEntity extends BlockEntity { diff --git a/patches/unapplied/server/0555-Add-PlayerArmSwingEvent.patch b/patches/server/0554-Add-PlayerArmSwingEvent.patch similarity index 88% rename from patches/unapplied/server/0555-Add-PlayerArmSwingEvent.patch rename to patches/server/0554-Add-PlayerArmSwingEvent.patch index 5b14fa047d..e08349e079 100644 --- a/patches/unapplied/server/0555-Add-PlayerArmSwingEvent.patch +++ b/patches/server/0554-Add-PlayerArmSwingEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerArmSwingEvent diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 36127f7c9ae50a628e88e7b456889a8f259b06da..e48c6f37ba0ebe698e28042e9331ab2ec0c39e7c 100644 +index fffefbed068a339f0db607d6734be611b273bbcf..0a5abb1a580310cc26ce3d64e6f878bde3bbfd0a 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -2428,7 +2428,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -2488,7 +2488,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } // Paper end - Call interact event // Arm swing animation diff --git a/patches/unapplied/server/0556-Fix-kick-event-leave-message-not-being-sent.patch b/patches/server/0555-Fix-kick-event-leave-message-not-being-sent.patch similarity index 95% rename from patches/unapplied/server/0556-Fix-kick-event-leave-message-not-being-sent.patch rename to patches/server/0555-Fix-kick-event-leave-message-not-being-sent.patch index 01fed42d62..ff8a83c615 100644 --- a/patches/unapplied/server/0556-Fix-kick-event-leave-message-not-being-sent.patch +++ b/patches/server/0555-Fix-kick-event-leave-message-not-being-sent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix kick event leave message not being sent diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 286876246559eb38d6aa591c79afceb63d561aeb..98979f82a14c057bd0640b598d5832c620333d1e 100644 +index b1224b0ef12a746477047073f5bb94405871ce85..6c3ec21bb61e15becb35c01112770471c2364c5f 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -318,7 +318,6 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -316,7 +316,6 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { public boolean joining = true; public boolean sentListPacket = false; public boolean supressTrackerForLogin = false; // Paper - Fire PlayerJoinEvent when Player is actually ready @@ -55,10 +55,10 @@ index 59d20fd62e850a38380d877cef95ed69cb46ecbd..fc242acade3ff06c9213428cde103cf0 MinecraftServer minecraftserver = this.server; Connection networkmanager = this.connection; diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index e48c6f37ba0ebe698e28042e9331ab2ec0c39e7c..0229b3e6c27b142ff726de8e2e15104a6acbc1f0 100644 +index 0a5abb1a580310cc26ce3d64e6f878bde3bbfd0a..1fb600d3e0f14940d911881ebbe24a6b57d3a81c 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1915,6 +1915,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1975,6 +1975,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl @Override public void onDisconnect(DisconnectionDetails info) { @@ -71,7 +71,7 @@ index e48c6f37ba0ebe698e28042e9331ab2ec0c39e7c..0229b3e6c27b142ff726de8e2e15104a // CraftBukkit start - Rarely it would send a disconnect line twice if (this.processedDisconnect) { return; -@@ -1923,11 +1929,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1983,11 +1989,17 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } // CraftBukkit end ServerGamePacketListenerImpl.LOGGER.info("{} lost connection: {}", this.player.getName().getString(), info.reason().getString()); @@ -91,7 +91,7 @@ index e48c6f37ba0ebe698e28042e9331ab2ec0c39e7c..0229b3e6c27b142ff726de8e2e15104a this.chatMessageChain.close(); // CraftBukkit start - Replace vanilla quit message handling with our own. /* -@@ -1937,7 +1949,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1997,7 +2009,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.player.disconnect(); // Paper start - Adventure diff --git a/patches/unapplied/server/0557-Don-t-apply-cramming-damage-to-players.patch b/patches/server/0556-Don-t-apply-cramming-damage-to-players.patch similarity index 64% rename from patches/unapplied/server/0557-Don-t-apply-cramming-damage-to-players.patch rename to patches/server/0556-Don-t-apply-cramming-damage-to-players.patch index 55a1fe08a5..14f5ce16cf 100644 --- a/patches/unapplied/server/0557-Don-t-apply-cramming-damage-to-players.patch +++ b/patches/server/0556-Don-t-apply-cramming-damage-to-players.patch @@ -11,15 +11,15 @@ It does not make a lot of sense to damage players if they get crammed, For those who really want it a config option is provided. diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 98979f82a14c057bd0640b598d5832c620333d1e..b3fb9d8942b0c56d343656c45ec96d22c00b5def 100644 +index 6c3ec21bb61e15becb35c01112770471c2364c5f..4c18d13fdc2221342adb390a6b68be871036c87c 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1814,7 +1814,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -1805,7 +1805,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { @Override public boolean isInvulnerableTo(ServerLevel world, DamageSource source) { -- return super.isInvulnerableTo(world, source) || this.isChangingDimension() && !source.is(DamageTypes.ENDER_PEARL); -+ return super.isInvulnerableTo(world, source) || (this.isChangingDimension() && !source.is(DamageTypes.ENDER_PEARL)) || (!this.level().paperConfig().collisions.allowPlayerCrammingDamage && source.is(DamageTypes.CRAMMING)); // Paper - disable player cramming; +- return super.isInvulnerableTo(world, source) || this.isChangingDimension() && !source.is(DamageTypes.ENDER_PEARL) || !this.hasClientLoaded(); ++ return (super.isInvulnerableTo(world, source) || this.isChangingDimension() && !source.is(DamageTypes.ENDER_PEARL) || !this.hasClientLoaded()) || (!this.level().paperConfig().collisions.allowPlayerCrammingDamage && source.is(DamageTypes.CRAMMING)); // Paper - disable player cramming } @Override diff --git a/patches/unapplied/server/0558-Rate-options-and-timings-for-sensors-and-behaviors.patch b/patches/server/0557-Rate-options-and-timings-for-sensors-and-behaviors.patch similarity index 100% rename from patches/unapplied/server/0558-Rate-options-and-timings-for-sensors-and-behaviors.patch rename to patches/server/0557-Rate-options-and-timings-for-sensors-and-behaviors.patch diff --git a/patches/unapplied/server/0559-Add-missing-forceDrop-toggles.patch b/patches/server/0558-Add-missing-forceDrop-toggles.patch similarity index 96% rename from patches/unapplied/server/0559-Add-missing-forceDrop-toggles.patch rename to patches/server/0558-Add-missing-forceDrop-toggles.patch index 70612df277..aa609aadba 100644 --- a/patches/unapplied/server/0559-Add-missing-forceDrop-toggles.patch +++ b/patches/server/0558-Add-missing-forceDrop-toggles.patch @@ -69,10 +69,10 @@ index 9d416f775fa19ad1978c7c9c9e0d5bc16728879d..be029746905aeba218684b8832826490 @Override diff --git a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java -index ec733e71e41a4c89ed9f35ad1d9d4fa912160d27..15a49e3541c8b45db5e472a64fa0cb94c5a72f67 100644 +index 737c1d5c8ec81d55799ed13560e5e2acc7d8f4e5..5e64a6b94a510ed618a2542ad03e406a181b63d4 100644 --- a/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java +++ b/src/main/java/net/minecraft/world/entity/monster/piglin/Piglin.java -@@ -323,9 +323,11 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento +@@ -326,9 +326,11 @@ public class Piglin extends AbstractPiglin implements CrossbowAttackMob, Invento @Override protected void finishConversion(ServerLevel world) { PiglinAi.cancelAdmiring(world, this); @@ -109,7 +109,7 @@ index 42b1bd58c6e2c3bd1170171eabfefe315202f340..55868c82bf8bd61ce3494aa9f363c20c } diff --git a/src/main/java/net/minecraft/world/entity/raid/Raider.java b/src/main/java/net/minecraft/world/entity/raid/Raider.java -index 6ac2351b3476aa04872196836ce00c622adab315..45375ccdcf730732dd915304dea2f523807eedd6 100644 +index b6f1d989df3811f423d1cdff98b05ecc4a9268fe..6a7d9b59ff4aa2962a88ae8688c06bc67d70dfda 100644 --- a/src/main/java/net/minecraft/world/entity/raid/Raider.java +++ b/src/main/java/net/minecraft/world/entity/raid/Raider.java @@ -233,7 +233,9 @@ public abstract class Raider extends PatrollingMonster { diff --git a/patches/unapplied/server/0560-Stinger-API.patch b/patches/server/0559-Stinger-API.patch similarity index 95% rename from patches/unapplied/server/0560-Stinger-API.patch rename to patches/server/0559-Stinger-API.patch index 6b8d804d91..9e851372d0 100644 --- a/patches/unapplied/server/0560-Stinger-API.patch +++ b/patches/server/0559-Stinger-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Stinger API diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 00db6ba96bda7ceaae8bc69a6b3a42e7a3929485..9870222cc1c46bcc37f9d3d44881606f2b9d038e 100644 +index 6020c0c164595db4e2001edf0c1fbe99ed87682d..5d6e4f2aeca9be4dd4504bc93b006e89ef875931 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -384,6 +384,39 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/unapplied/server/0561-Add-System.out-err-catcher.patch b/patches/server/0560-Add-System.out-err-catcher.patch similarity index 100% rename from patches/unapplied/server/0561-Add-System.out-err-catcher.patch rename to patches/server/0560-Add-System.out-err-catcher.patch diff --git a/patches/unapplied/server/0562-Prevent-AFK-kick-while-watching-end-credits.patch b/patches/server/0561-Prevent-AFK-kick-while-watching-end-credits.patch similarity index 90% rename from patches/unapplied/server/0562-Prevent-AFK-kick-while-watching-end-credits.patch rename to patches/server/0561-Prevent-AFK-kick-while-watching-end-credits.patch index dc3eed68eb..75bfbb054a 100644 --- a/patches/unapplied/server/0562-Prevent-AFK-kick-while-watching-end-credits.patch +++ b/patches/server/0561-Prevent-AFK-kick-while-watching-end-credits.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Prevent AFK kick while watching end credits diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 0229b3e6c27b142ff726de8e2e15104a6acbc1f0..70b891bd018029eda8cda4fb9f919e77524dbc5e 100644 +index 1fb600d3e0f14940d911881ebbe24a6b57d3a81c..2df548b68e56a309af4b89f8f1174dde3b046e7d 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -396,7 +396,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -398,7 +398,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl this.tabSpamThrottler.tick(); // Paper - configurable tab spam limits this.recipeSpamPackets.tick(); // Paper - auto recipe limit this.dropSpamThrottler.tick(); diff --git a/patches/unapplied/server/0563-Allow-skipping-writing-of-comments-to-server.propert.patch b/patches/server/0562-Allow-skipping-writing-of-comments-to-server.propert.patch similarity index 100% rename from patches/unapplied/server/0563-Allow-skipping-writing-of-comments-to-server.propert.patch rename to patches/server/0562-Allow-skipping-writing-of-comments-to-server.propert.patch diff --git a/patches/unapplied/server/0564-Add-PlayerSetSpawnEvent.patch b/patches/server/0563-Add-PlayerSetSpawnEvent.patch similarity index 97% rename from patches/unapplied/server/0564-Add-PlayerSetSpawnEvent.patch rename to patches/server/0563-Add-PlayerSetSpawnEvent.patch index c3b8586965..c4df15cc88 100644 --- a/patches/unapplied/server/0564-Add-PlayerSetSpawnEvent.patch +++ b/patches/server/0563-Add-PlayerSetSpawnEvent.patch @@ -49,10 +49,10 @@ index a2d0699e8427b2262a2396495111125eccafbb66..15db9368227dbc29d07d74e85bd126b3 } } diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index b3fb9d8942b0c56d343656c45ec96d22c00b5def..0cd75ffc8952baacb391ea8ee67fd1e8d0a42264 100644 +index 4c18d13fdc2221342adb390a6b68be871036c87c..f2cc608d2cf040be2912b604f0d6cab21e33ded0 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1690,7 +1690,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -1681,7 +1681,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { } else if (this.bedBlocked(blockposition, enumdirection)) { return Either.left(net.minecraft.world.entity.player.Player.BedSleepingProblem.OBSTRUCTED); } else { @@ -61,7 +61,7 @@ index b3fb9d8942b0c56d343656c45ec96d22c00b5def..0cd75ffc8952baacb391ea8ee67fd1e8 if (this.level().isDay()) { return Either.left(net.minecraft.world.entity.player.Player.BedSleepingProblem.NOT_POSSIBLE_NOW); } else { -@@ -2637,44 +2637,50 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -2617,44 +2617,50 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { this.setRespawnPosition(player.getRespawnDimension(), player.getRespawnPosition(), player.getRespawnAngle(), player.isRespawnForced(), false); } @@ -145,7 +145,7 @@ index b3fb9d8942b0c56d343656c45ec96d22c00b5def..0cd75ffc8952baacb391ea8ee67fd1e8 } else { this.respawnPosition = null; this.respawnDimension = Level.OVERWORLD; -@@ -2682,6 +2688,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -2662,6 +2668,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { this.respawnForced = false; } @@ -187,7 +187,7 @@ index db26b5a0464bd6087eeacaf6dd61eba37365df92..9117c035d5a6ff114b028fad3380ceb1 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java -index cfa079ba53e6829ed8abbb60d374e20585072cc0..4e72aa7fce4da62751342f557e877dfddb8bd36c 100644 +index ff8d6a0ceb41258541c0049464dc0923ed4872bd..f363f885b3dc1852b09914f034740794e3025d3d 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java @@ -1420,9 +1420,9 @@ public class CraftPlayer extends CraftHumanEntity implements Player { diff --git a/patches/unapplied/server/0565-Make-hoppers-respect-inventory-max-stack-size.patch b/patches/server/0564-Make-hoppers-respect-inventory-max-stack-size.patch similarity index 100% rename from patches/unapplied/server/0565-Make-hoppers-respect-inventory-max-stack-size.patch rename to patches/server/0564-Make-hoppers-respect-inventory-max-stack-size.patch diff --git a/patches/unapplied/server/0566-Optimize-entity-tracker-passenger-checks.patch b/patches/server/0565-Optimize-entity-tracker-passenger-checks.patch similarity index 90% rename from patches/unapplied/server/0566-Optimize-entity-tracker-passenger-checks.patch rename to patches/server/0565-Optimize-entity-tracker-passenger-checks.patch index 0b928beb61..e64be30cfc 100644 --- a/patches/unapplied/server/0566-Optimize-entity-tracker-passenger-checks.patch +++ b/patches/server/0565-Optimize-entity-tracker-passenger-checks.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Optimize entity tracker passenger checks diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java -index 52fcf6df392aaa795335ee9bb7ae406009e2fda1..cfb58901476b1f9bbffd205e82c92d39d587afab 100644 +index 50f1e690d499940ce6c2174dbc609af21fd7b0cb..15968ea0b86a35fec8c0301bbdccc4ecd491197b 100644 --- a/src/main/java/net/minecraft/server/level/ServerEntity.java +++ b/src/main/java/net/minecraft/server/level/ServerEntity.java @@ -75,7 +75,7 @@ public class ServerEntity { diff --git a/patches/unapplied/server/0567-Config-option-for-Piglins-guarding-chests.patch b/patches/server/0566-Config-option-for-Piglins-guarding-chests.patch similarity index 100% rename from patches/unapplied/server/0567-Config-option-for-Piglins-guarding-chests.patch rename to patches/server/0566-Config-option-for-Piglins-guarding-chests.patch diff --git a/patches/unapplied/server/0568-Add-EntityDamageItemEvent.patch b/patches/server/0567-Add-EntityDamageItemEvent.patch similarity index 94% rename from patches/unapplied/server/0568-Add-EntityDamageItemEvent.patch rename to patches/server/0567-Add-EntityDamageItemEvent.patch index e6822b715e..bfe6c8751a 100644 --- a/patches/unapplied/server/0568-Add-EntityDamageItemEvent.patch +++ b/patches/server/0567-Add-EntityDamageItemEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add EntityDamageItemEvent diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index f00b756fe5dad616323e3b11e35e27353f347042..8c9ae9ac38def29ae4cd8944395e566e434d46d0 100644 +index 225206a055e2f6bf4dbb18434cb3401d02746387..e320264c2283c2c09910ea70606413c73f443b1f 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -692,11 +692,11 @@ public final class ItemStack implements DataComponentHolder { +@@ -697,11 +697,11 @@ public final class ItemStack implements DataComponentHolder { return this.isDamageableItem() && this.getDamageValue() >= this.getMaxDamage() - 1; } @@ -23,7 +23,7 @@ index f00b756fe5dad616323e3b11e35e27353f347042..8c9ae9ac38def29ae4cd8944395e566e event.getPlayer().getServer().getPluginManager().callEvent(event); if (j != event.getDamage() || event.isCancelled()) { -@@ -707,6 +707,14 @@ public final class ItemStack implements DataComponentHolder { +@@ -712,6 +712,14 @@ public final class ItemStack implements DataComponentHolder { } j = event.getDamage(); @@ -38,7 +38,7 @@ index f00b756fe5dad616323e3b11e35e27353f347042..8c9ae9ac38def29ae4cd8944395e566e } // CraftBukkit end -@@ -716,21 +724,21 @@ public final class ItemStack implements DataComponentHolder { +@@ -721,21 +729,21 @@ public final class ItemStack implements DataComponentHolder { } @@ -67,7 +67,7 @@ index f00b756fe5dad616323e3b11e35e27353f347042..8c9ae9ac38def29ae4cd8944395e566e } // CraftBukkit end -@@ -768,7 +776,7 @@ public final class ItemStack implements DataComponentHolder { +@@ -773,7 +781,7 @@ public final class ItemStack implements DataComponentHolder { entityplayer = null; } diff --git a/patches/unapplied/server/0569-Optimize-indirect-passenger-iteration.patch b/patches/server/0568-Optimize-indirect-passenger-iteration.patch similarity index 91% rename from patches/unapplied/server/0569-Optimize-indirect-passenger-iteration.patch rename to patches/server/0568-Optimize-indirect-passenger-iteration.patch index 36c3804273..91517284fb 100644 --- a/patches/unapplied/server/0569-Optimize-indirect-passenger-iteration.patch +++ b/patches/server/0568-Optimize-indirect-passenger-iteration.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Optimize indirect passenger iteration diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index bac2165553262bc3b26cddd607d83ca15807e9d2..eede4aa2b0ed19b285b9cdfeb177cb5c2e1a13fb 100644 +index a18e716a8c1c6f1fe23dcd3f4da033da95417e22..ddb3d68f064d2dd82b42d0013c65f3685ef1065d 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -4088,20 +4088,34 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4118,20 +4118,34 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } private Stream getIndirectPassengersStream() { @@ -43,7 +43,7 @@ index bac2165553262bc3b26cddd607d83ca15807e9d2..eede4aa2b0ed19b285b9cdfeb177cb5c return () -> { return this.getIndirectPassengersStream().iterator(); }; -@@ -4114,6 +4128,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -4144,6 +4158,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public boolean hasExactlyOnePlayerPassenger() { diff --git a/patches/unapplied/server/0570-Configurable-item-frame-map-cursor-update-interval.patch b/patches/server/0569-Configurable-item-frame-map-cursor-update-interval.patch similarity index 93% rename from patches/unapplied/server/0570-Configurable-item-frame-map-cursor-update-interval.patch rename to patches/server/0569-Configurable-item-frame-map-cursor-update-interval.patch index 98f717ebc1..03aaddc9be 100644 --- a/patches/unapplied/server/0570-Configurable-item-frame-map-cursor-update-interval.patch +++ b/patches/server/0569-Configurable-item-frame-map-cursor-update-interval.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Configurable item frame map cursor update interval diff --git a/src/main/java/net/minecraft/server/level/ServerEntity.java b/src/main/java/net/minecraft/server/level/ServerEntity.java -index cfb58901476b1f9bbffd205e82c92d39d587afab..bc0f1aa61e68d2a8638d89c10bc5c71922d057f9 100644 +index 15968ea0b86a35fec8c0301bbdccc4ecd491197b..78d3aa089d990190cdf5cd7ac14410909235f133 100644 --- a/src/main/java/net/minecraft/server/level/ServerEntity.java +++ b/src/main/java/net/minecraft/server/level/ServerEntity.java @@ -120,7 +120,7 @@ public class ServerEntity { diff --git a/patches/unapplied/server/0571-Change-EnderEye-target-without-changing-other-things.patch b/patches/server/0570-Change-EnderEye-target-without-changing-other-things.patch similarity index 100% rename from patches/unapplied/server/0571-Change-EnderEye-target-without-changing-other-things.patch rename to patches/server/0570-Change-EnderEye-target-without-changing-other-things.patch diff --git a/patches/unapplied/server/0572-Add-BlockBreakBlockEvent.patch b/patches/server/0571-Add-BlockBreakBlockEvent.patch similarity index 98% rename from patches/unapplied/server/0572-Add-BlockBreakBlockEvent.patch rename to patches/server/0571-Add-BlockBreakBlockEvent.patch index fbd3627b5c..36b29ddf20 100644 --- a/patches/unapplied/server/0572-Add-BlockBreakBlockEvent.patch +++ b/patches/server/0571-Add-BlockBreakBlockEvent.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add BlockBreakBlockEvent diff --git a/src/main/java/net/minecraft/world/level/block/Block.java b/src/main/java/net/minecraft/world/level/block/Block.java -index f1711f774f844024ca7b678385daaace6cda9f46..9d8c4ecd89b05a0e5d4ebb5e686eba5d899765f2 100644 +index 533df8ff84ec4224637dfb0837104a6db1ea9901..3c7e373eb1601670d923e6ffa46817ca53e321db 100644 --- a/src/main/java/net/minecraft/world/level/block/Block.java +++ b/src/main/java/net/minecraft/world/level/block/Block.java @@ -295,6 +295,24 @@ public class Block extends BlockBehaviour implements ItemLike { diff --git a/patches/unapplied/server/0573-Option-to-prevent-data-components-copy-in-smithing-r.patch b/patches/server/0572-Option-to-prevent-data-components-copy-in-smithing-r.patch similarity index 100% rename from patches/unapplied/server/0573-Option-to-prevent-data-components-copy-in-smithing-r.patch rename to patches/server/0572-Option-to-prevent-data-components-copy-in-smithing-r.patch diff --git a/patches/unapplied/server/0574-More-CommandBlock-API.patch b/patches/server/0573-More-CommandBlock-API.patch similarity index 100% rename from patches/unapplied/server/0574-More-CommandBlock-API.patch rename to patches/server/0573-More-CommandBlock-API.patch diff --git a/patches/unapplied/server/0575-Add-missing-team-sidebar-display-slots.patch b/patches/server/0574-Add-missing-team-sidebar-display-slots.patch similarity index 100% rename from patches/unapplied/server/0575-Add-missing-team-sidebar-display-slots.patch rename to patches/server/0574-Add-missing-team-sidebar-display-slots.patch diff --git a/patches/unapplied/server/0576-Add-back-EntityPortalExitEvent.patch b/patches/server/0575-Add-back-EntityPortalExitEvent.patch similarity index 93% rename from patches/unapplied/server/0576-Add-back-EntityPortalExitEvent.patch rename to patches/server/0575-Add-back-EntityPortalExitEvent.patch index 282d51195e..d9d52b0184 100644 --- a/patches/unapplied/server/0576-Add-back-EntityPortalExitEvent.patch +++ b/patches/server/0575-Add-back-EntityPortalExitEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add back EntityPortalExitEvent diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index eede4aa2b0ed19b285b9cdfeb177cb5c2e1a13fb..736569ea22a8b257fca6e4b9326f73ca8fbc803e 100644 +index ddb3d68f064d2dd82b42d0013c65f3685ef1065d..f9e52b8794d62cc79c420008a1a95707efa14321 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3492,6 +3492,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3522,6 +3522,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (!this.isRemoved()) { // CraftBukkit start PositionMoveRotation absolutePosition = PositionMoveRotation.calculateAbsolute(PositionMoveRotation.of(this), PositionMoveRotation.of(teleportTarget), teleportTarget.relatives()); @@ -16,7 +16,7 @@ index eede4aa2b0ed19b285b9cdfeb177cb5c2e1a13fb..736569ea22a8b257fca6e4b9326f73ca Location to = CraftLocation.toBukkit(absolutePosition.position(), teleportTarget.newLevel().getWorld(), absolutePosition.yRot(), absolutePosition.xRot()); // Paper start - gateway-specific teleport event final EntityTeleportEvent teleEvent; -@@ -3508,7 +3509,29 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3538,7 +3539,29 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess if (!to.equals(teleEvent.getTo())) { to = teleEvent.getTo(); teleportTarget = new TeleportTransition(((CraftWorld) to.getWorld()).getHandle(), CraftLocation.toVec3D(to), Vec3.ZERO, to.getYaw(), to.getPitch(), teleportTarget.missingRespawnBlock(), teleportTarget.asPassenger(), Set.of(), teleportTarget.postTeleportTransition(), teleportTarget.cause()); diff --git a/patches/unapplied/server/0577-Add-methods-to-find-targets-for-lightning-strikes.patch b/patches/server/0576-Add-methods-to-find-targets-for-lightning-strikes.patch similarity index 90% rename from patches/unapplied/server/0577-Add-methods-to-find-targets-for-lightning-strikes.patch rename to patches/server/0576-Add-methods-to-find-targets-for-lightning-strikes.patch index 2e844ea2bd..a21e15c6fc 100644 --- a/patches/unapplied/server/0577-Add-methods-to-find-targets-for-lightning-strikes.patch +++ b/patches/server/0576-Add-methods-to-find-targets-for-lightning-strikes.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Add methods to find targets for lightning strikes public net.minecraft.server.level.ServerLevel findLightningRod(Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 57b82b90ab55922e57ccf79c57296d1d2e34d6a2..50d4bd6223eb92c640a61ee61af862e794fbb519 100644 +index 93656336af194994f59072fa89bfc338d89d76af..e6ff03143b3639f375323393814b1256b98687ad 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -740,6 +740,11 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -741,6 +741,11 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe } protected BlockPos findLightningTargetAround(BlockPos pos) { @@ -22,7 +22,7 @@ index 57b82b90ab55922e57ccf79c57296d1d2e34d6a2..50d4bd6223eb92c640a61ee61af862e7 BlockPos blockposition1 = this.getHeightmapPos(Heightmap.Types.MOTION_BLOCKING, pos); Optional optional = this.findLightningRod(blockposition1); -@@ -754,6 +759,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -755,6 +760,7 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe if (!list.isEmpty()) { return ((LivingEntity) list.get(this.random.nextInt(list.size()))).blockPosition(); } else { @@ -31,7 +31,7 @@ index 57b82b90ab55922e57ccf79c57296d1d2e34d6a2..50d4bd6223eb92c640a61ee61af862e7 blockposition1 = blockposition1.above(2); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 31305e402a3112d337b458f6b1aaf1bb97ba4fc2..be27fe25d1d1057da4734a8d9c2a92690a7eec3c 100644 +index d72ceb866f8632a8daa7dc19acdc57b6b78fd906..d650822155f4628ea9d61ecbd4208520746aa59f 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -676,6 +676,23 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/unapplied/server/0578-Get-entity-default-attributes.patch b/patches/server/0577-Get-entity-default-attributes.patch similarity index 98% rename from patches/unapplied/server/0578-Get-entity-default-attributes.patch rename to patches/server/0577-Get-entity-default-attributes.patch index 9c95ca3611..1f2a14bb52 100644 --- a/patches/unapplied/server/0578-Get-entity-default-attributes.patch +++ b/patches/server/0577-Get-entity-default-attributes.patch @@ -81,7 +81,7 @@ index 0000000000000000000000000000000000000000..ec9ebd2d539333293c51b7edfa18f18b + } +} diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 6855210dc58f455b5af05d9c039da55e8dfc93f1..1dd9a5cc45d5073adb150abdcbe2025e6ed2c315 100644 +index e613ea0eba9a1d162b8f7dfe32c9c31d82f17dd2..6f780b76ebadb6155195b93f3e6d382141eb0bcc 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -560,6 +560,18 @@ public final class CraftMagicNumbers implements UnsafeValues { diff --git a/patches/unapplied/server/0579-Left-handed-API.patch b/patches/server/0578-Left-handed-API.patch similarity index 100% rename from patches/unapplied/server/0579-Left-handed-API.patch rename to patches/server/0578-Left-handed-API.patch diff --git a/patches/unapplied/server/0580-Add-more-advancement-API.patch b/patches/server/0579-Add-more-advancement-API.patch similarity index 100% rename from patches/unapplied/server/0580-Add-more-advancement-API.patch rename to patches/server/0579-Add-more-advancement-API.patch diff --git a/patches/unapplied/server/0581-Add-ItemFactory-getSpawnEgg-API.patch b/patches/server/0580-Add-ItemFactory-getSpawnEgg-API.patch similarity index 95% rename from patches/unapplied/server/0581-Add-ItemFactory-getSpawnEgg-API.patch rename to patches/server/0580-Add-ItemFactory-getSpawnEgg-API.patch index ec4a572edf..b15779d35b 100644 --- a/patches/unapplied/server/0581-Add-ItemFactory-getSpawnEgg-API.patch +++ b/patches/server/0580-Add-ItemFactory-getSpawnEgg-API.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add ItemFactory#getSpawnEgg API diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java -index cab7a3d21699605cb7fc480830d7529f70e69e88..ad86ee4372e55c82968fd4fc6a65debab0092028 100644 +index 68798c90f2a116d82f6f25e920c54c929df6fca9..a04840b77e2d84e754c9cfa79bc593608bc22c90 100644 --- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java +++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftItemFactory.java @@ -9,6 +9,7 @@ import net.minecraft.core.HolderSet; @@ -16,7 +16,7 @@ index cab7a3d21699605cb7fc480830d7529f70e69e88..ad86ee4372e55c82968fd4fc6a65deba import net.minecraft.server.MinecraftServer; import net.minecraft.tags.EnchantmentTags; import net.minecraft.util.RandomSource; -@@ -289,4 +290,19 @@ public final class CraftItemFactory implements ItemFactory { +@@ -291,4 +292,19 @@ public final class CraftItemFactory implements ItemFactory { new net.md_5.bungee.api.chat.TextComponent(customName)); } // Paper end - bungee hover events diff --git a/patches/unapplied/server/0582-Add-critical-damage-API.patch b/patches/server/0581-Add-critical-damage-API.patch similarity index 94% rename from patches/unapplied/server/0582-Add-critical-damage-API.patch rename to patches/server/0581-Add-critical-damage-API.patch index 78d51e8e03..a4fa089b63 100644 --- a/patches/unapplied/server/0582-Add-critical-damage-API.patch +++ b/patches/server/0581-Add-critical-damage-API.patch @@ -28,10 +28,10 @@ index c1d121d83591ca1b5bf9d9406c9622b4f24eafef..aee26dd78953ff43306aaa64161f5b9e + // Paper end - add critical damage API } 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 57850f16a681af4fc302895c7608247675b44ab4..68a6b1508ce4544fe8b18746d440944d41a2fe5b 100644 +index 13f21822d0eb1d167b9b71addb46c4f508301c8d..4e33c6c612939e6970d5984825115768ebb6a5ea 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -1258,6 +1258,7 @@ public abstract class Player extends LivingEntity { +@@ -1261,6 +1261,7 @@ public abstract class Player extends LivingEntity { flag2 = flag2 && !this.level().paperConfig().entities.behavior.disablePlayerCrits; // Paper - Toggleable player crits if (flag2) { @@ -39,7 +39,7 @@ index 57850f16a681af4fc302895c7608247675b44ab4..68a6b1508ce4544fe8b18746d440944d f *= 1.5F; } -@@ -1317,7 +1318,7 @@ public abstract class Player extends LivingEntity { +@@ -1320,7 +1321,7 @@ public abstract class Player extends LivingEntity { float f7 = this.getEnchantedDamage(entityliving2, f6, damagesource) * f2; // CraftBukkit start - Only apply knockback if the damage hits @@ -49,10 +49,10 @@ index 57850f16a681af4fc302895c7608247675b44ab4..68a6b1508ce4544fe8b18746d440944d } // CraftBukkit end 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 220c687a9543b84d994c4f238757737c9337227a..07f36edf9362227521daabfdceaa7e136d854f8d 100644 +index 52765e1b9f5a026e7108ff5a7d97681cdb2870e9..aab7d546317d93876ccd0e02c0631ccc7c8f9bf5 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java +++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -@@ -450,6 +450,7 @@ public abstract class AbstractArrow extends Projectile { +@@ -465,6 +465,7 @@ public abstract class AbstractArrow extends Projectile { entityliving.setLastHurtMob(entity); } diff --git a/patches/unapplied/server/0583-Fix-issues-with-mob-conversion.patch b/patches/server/0582-Fix-issues-with-mob-conversion.patch similarity index 100% rename from patches/unapplied/server/0583-Fix-issues-with-mob-conversion.patch rename to patches/server/0582-Fix-issues-with-mob-conversion.patch diff --git a/patches/unapplied/server/0584-Add-hasCollision-methods-to-various-places.patch b/patches/server/0583-Add-hasCollision-methods-to-various-places.patch similarity index 100% rename from patches/unapplied/server/0584-Add-hasCollision-methods-to-various-places.patch rename to patches/server/0583-Add-hasCollision-methods-to-various-places.patch diff --git a/patches/unapplied/server/0585-Goat-ram-API.patch b/patches/server/0584-Goat-ram-API.patch similarity index 100% rename from patches/unapplied/server/0585-Goat-ram-API.patch rename to patches/server/0584-Goat-ram-API.patch diff --git a/patches/unapplied/server/0586-Add-API-for-resetting-a-single-score.patch b/patches/server/0585-Add-API-for-resetting-a-single-score.patch similarity index 100% rename from patches/unapplied/server/0586-Add-API-for-resetting-a-single-score.patch rename to patches/server/0585-Add-API-for-resetting-a-single-score.patch diff --git a/patches/unapplied/server/0587-Add-Raw-Byte-Entity-Serialization.patch b/patches/server/0586-Add-Raw-Byte-Entity-Serialization.patch similarity index 95% rename from patches/unapplied/server/0587-Add-Raw-Byte-Entity-Serialization.patch rename to patches/server/0586-Add-Raw-Byte-Entity-Serialization.patch index 6735257894..e2701e2fc7 100644 --- a/patches/unapplied/server/0587-Add-Raw-Byte-Entity-Serialization.patch +++ b/patches/server/0586-Add-Raw-Byte-Entity-Serialization.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Add Raw Byte Entity Serialization public net.minecraft.world.entity.Entity setLevel(Lnet/minecraft/world/level/Level;)V diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 736569ea22a8b257fca6e4b9326f73ca8fbc803e..38147960aed55bb60b427d73739d8ec0b5b8b863 100644 +index f9e52b8794d62cc79c420008a1a95707efa14321..ee2625301ebb1dd601618ae43915891f3b57b7c3 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2261,6 +2261,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2284,6 +2284,15 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } } @@ -50,7 +50,7 @@ index 888a75423ac90ca85308eeb6d67bac5348bf31e0..b13c947d2cfe085017b30cb0f8340dd6 @Override public boolean isInvisible() { // Paper - moved up from LivingEntity diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java -index 1dd9a5cc45d5073adb150abdcbe2025e6ed2c315..2a3dc48aa50b41ede0e1a0e280314624961967f2 100644 +index 6f780b76ebadb6155195b93f3e6d382141eb0bcc..d7698f8ae59195458148397406a104224676b76e 100644 --- a/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java +++ b/src/main/java/org/bukkit/craftbukkit/util/CraftMagicNumbers.java @@ -510,7 +510,33 @@ public final class CraftMagicNumbers implements UnsafeValues { diff --git a/patches/unapplied/server/0588-Vanilla-command-permission-fixes.patch b/patches/server/0587-Vanilla-command-permission-fixes.patch similarity index 100% rename from patches/unapplied/server/0588-Vanilla-command-permission-fixes.patch rename to patches/server/0587-Vanilla-command-permission-fixes.patch diff --git a/patches/unapplied/server/0589-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch b/patches/server/0588-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch similarity index 88% rename from patches/unapplied/server/0589-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch rename to patches/server/0588-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch index e2742c73ce..f403613911 100644 --- a/patches/unapplied/server/0589-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch +++ b/patches/server/0588-Do-not-run-close-logic-for-inventories-on-chunk-unlo.patch @@ -9,10 +9,10 @@ chunk through it. This should also be OK from a leak prevention/ state desync POV because the TE is getting unloaded anyways. diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index 50d4bd6223eb92c640a61ee61af862e794fbb519..a870349f1de975e46fe831ff32394d6dd80d388b 100644 +index e6ff03143b3639f375323393814b1256b98687ad..2ac09e8eece6ff772c94bb1efd01cc1c45194435 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -1244,9 +1244,13 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -1245,9 +1245,13 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe // Spigot Start for (net.minecraft.world.level.block.entity.BlockEntity tileentity : chunk.getBlockEntities().values()) { if (tileentity instanceof net.minecraft.world.Container) { @@ -28,10 +28,10 @@ index 50d4bd6223eb92c640a61ee61af862e794fbb519..a870349f1de975e46fe831ff32394d6d } // Spigot End diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 0cd75ffc8952baacb391ea8ee67fd1e8d0a42264..430a7269852c8f03542382aafad989977be96197 100644 +index f2cc608d2cf040be2912b604f0d6cab21e33ded0..215be207e29254312bb85f259a684a7de6876aa9 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1983,6 +1983,18 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -1966,6 +1966,18 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { this.connection.send(new ClientboundContainerClosePacket(this.containerMenu.containerId)); this.doCloseContainer(); } @@ -51,10 +51,10 @@ index 0cd75ffc8952baacb391ea8ee67fd1e8d0a42264..430a7269852c8f03542382aafad98997 @Override public void doCloseContainer() { 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 68a6b1508ce4544fe8b18746d440944d41a2fe5b..b8edbd23d547d7189ec64c5d3a8cd1d51859ce23 100644 +index 4e33c6c612939e6970d5984825115768ebb6a5ea..81e3072ac80623db47ddc0b9c52e0e56dab9e10e 100644 --- a/src/main/java/net/minecraft/world/entity/player/Player.java +++ b/src/main/java/net/minecraft/world/entity/player/Player.java -@@ -544,6 +544,11 @@ public abstract class Player extends LivingEntity { +@@ -547,6 +547,11 @@ public abstract class Player extends LivingEntity { this.containerMenu = this.inventoryMenu; } // Paper end - Inventory close reason diff --git a/patches/unapplied/server/0590-Fix-GameProfileCache-concurrency.patch b/patches/server/0589-Fix-GameProfileCache-concurrency.patch similarity index 100% rename from patches/unapplied/server/0590-Fix-GameProfileCache-concurrency.patch rename to patches/server/0589-Fix-GameProfileCache-concurrency.patch diff --git a/patches/unapplied/server/0591-Improve-and-expand-AsyncCatcher.patch b/patches/server/0590-Improve-and-expand-AsyncCatcher.patch similarity index 96% rename from patches/unapplied/server/0591-Improve-and-expand-AsyncCatcher.patch rename to patches/server/0590-Improve-and-expand-AsyncCatcher.patch index 751923d583..ae6607cb0d 100644 --- a/patches/unapplied/server/0591-Improve-and-expand-AsyncCatcher.patch +++ b/patches/server/0590-Improve-and-expand-AsyncCatcher.patch @@ -17,10 +17,10 @@ Async catch modifications to critical entity state Co-authored-by: Jake Potrebic diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 70b891bd018029eda8cda4fb9f919e77524dbc5e..a4abcbc69ccd023a936d02d359ba4c08198ed31e 100644 +index 2df548b68e56a309af4b89f8f1174dde3b046e7d..dcc87047769094241a0f0b682dc31cc4767ab5e9 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -1597,6 +1597,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -1651,6 +1651,7 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl } public void internalTeleport(PositionMoveRotation positionmoverotation, Set set) { @@ -29,7 +29,7 @@ index 70b891bd018029eda8cda4fb9f919e77524dbc5e..a4abcbc69ccd023a936d02d359ba4c08 if (player.isRemoved()) { LOGGER.info("Attempt to teleport removed player {} restricted", player.getScoreboardName()); diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index f240a63f39affc048d1c13eb184f4b07c6c52d3e..a06a696fcec124d307eb84c1ee4f20ec928bfaec 100644 +index b7c854614643cc6fcb78ce7ac378f5dbbb8eb305..fb3cec13dd9e426904ce28a8755e6cc57296a42e 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java @@ -1143,7 +1143,7 @@ public abstract class LivingEntity extends Entity implements Attackable { @@ -166,7 +166,7 @@ index 4eb0b0969325f39a7ae65492cccd482515a50142..5aa74c00a61282830d82359eae2b114e PersistentEntitySectionManager.LOGGER.warn("Entity {} wasn't found in section {} (destroying due to {})", new Object[]{this.entity, SectionPos.of(this.currentSectionKey), reason}); } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index be27fe25d1d1057da4734a8d9c2a92690a7eec3c..302812de273fe21d3ce7aedc325d9a739b69ef20 100644 +index d650822155f4628ea9d61ecbd4208520746aa59f..0ab6a9496e76aca6815bb8deebb8facd80a6b912 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1755,6 +1755,7 @@ public class CraftWorld extends CraftRegionAccessor implements World { @@ -202,7 +202,7 @@ index be27fe25d1d1057da4734a8d9c2a92690a7eec3c..302812de273fe21d3ce7aedc325d9a73 ClientboundSoundEntityPacket packet = new ClientboundSoundEntityPacket(Holder.direct(SoundEvent.createVariableRangeEvent(ResourceLocation.parse(sound))), net.minecraft.sounds.SoundSource.valueOf(category.name()), craftEntity.getHandle(), volume, pitch, seed); diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index 9870222cc1c46bcc37f9d3d44881606f2b9d038e..e148239d4930e5cbb000beed4de386f992f28d88 100644 +index 5d6e4f2aeca9be4dd4504bc93b006e89ef875931..10a95c1a40597867ffd2974037bfed86dd6deda4 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -534,6 +534,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/unapplied/server/0592-Add-paper-mobcaps-and-paper-playermobcaps.patch b/patches/server/0591-Add-paper-mobcaps-and-paper-playermobcaps.patch similarity index 99% rename from patches/unapplied/server/0592-Add-paper-mobcaps-and-paper-playermobcaps.patch rename to patches/server/0591-Add-paper-mobcaps-and-paper-playermobcaps.patch index 61d853b7df..d04dadb215 100644 --- a/patches/unapplied/server/0592-Add-paper-mobcaps-and-paper-playermobcaps.patch +++ b/patches/server/0591-Add-paper-mobcaps-and-paper-playermobcaps.patch @@ -294,7 +294,7 @@ index 45d887f4143444321f563cdd7d084b2b9ccf911e..33d9f3778996eedc83064332a2fbbdc7 } diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 302812de273fe21d3ce7aedc325d9a739b69ef20..4166d69347912b03c9aa566a9523590c5e4f6630 100644 +index 0ab6a9496e76aca6815bb8deebb8facd80a6b912..744e3631cd2d5c157c9b6023ca813e57c6f860d6 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1713,9 +1713,14 @@ public class CraftWorld extends CraftRegionAccessor implements World { diff --git a/patches/unapplied/server/0593-Sanitize-ResourceLocation-error-logging.patch b/patches/server/0592-Sanitize-ResourceLocation-error-logging.patch similarity index 100% rename from patches/unapplied/server/0593-Sanitize-ResourceLocation-error-logging.patch rename to patches/server/0592-Sanitize-ResourceLocation-error-logging.patch diff --git a/patches/unapplied/server/0594-Manually-inline-methods-in-BlockPosition.patch b/patches/server/0593-Manually-inline-methods-in-BlockPosition.patch similarity index 92% rename from patches/unapplied/server/0594-Manually-inline-methods-in-BlockPosition.patch rename to patches/server/0593-Manually-inline-methods-in-BlockPosition.patch index 89987ab3d2..67bbeaf54d 100644 --- a/patches/unapplied/server/0594-Manually-inline-methods-in-BlockPosition.patch +++ b/patches/server/0593-Manually-inline-methods-in-BlockPosition.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Manually inline methods in BlockPosition diff --git a/src/main/java/net/minecraft/core/BlockPos.java b/src/main/java/net/minecraft/core/BlockPos.java -index 8e00fd1a1fb0d73e800395f4b9fffdbdb6c6b5cb..a1d54d978d34d75475f92dfb806113586e7e449c 100644 +index 57340f0f46d5429585d99712dd39347d30d9951b..bf3eb9259f97d6d5af01244f103dc6b19c185d50 100644 --- a/src/main/java/net/minecraft/core/BlockPos.java +++ b/src/main/java/net/minecraft/core/BlockPos.java -@@ -576,9 +576,9 @@ public class BlockPos extends Vec3i { +@@ -588,9 +588,9 @@ public class BlockPos extends Vec3i { } public BlockPos.MutableBlockPos set(int x, int y, int z) { @@ -21,7 +21,7 @@ index 8e00fd1a1fb0d73e800395f4b9fffdbdb6c6b5cb..a1d54d978d34d75475f92dfb80611358 return this; } -@@ -643,19 +643,19 @@ public class BlockPos extends Vec3i { +@@ -655,19 +655,19 @@ public class BlockPos extends Vec3i { @Override public BlockPos.MutableBlockPos setX(int i) { diff --git a/patches/unapplied/server/0595-Name-craft-scheduler-threads-according-to-the-plugin.patch b/patches/server/0594-Name-craft-scheduler-threads-according-to-the-plugin.patch similarity index 100% rename from patches/unapplied/server/0595-Name-craft-scheduler-threads-according-to-the-plugin.patch rename to patches/server/0594-Name-craft-scheduler-threads-according-to-the-plugin.patch diff --git a/patches/unapplied/server/0596-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch b/patches/server/0595-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch similarity index 90% rename from patches/unapplied/server/0596-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch rename to patches/server/0595-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch index 9efbcafadb..73d62bea98 100644 --- a/patches/unapplied/server/0596-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch +++ b/patches/server/0595-Make-sure-inlined-getChunkAt-has-inlined-logic-for-l.patch @@ -10,10 +10,10 @@ chunks did get inlined, but the standard CPS.getChunkAt method was not inlined. diff --git a/src/main/java/net/minecraft/world/level/Level.java b/src/main/java/net/minecraft/world/level/Level.java -index 9536e127ff4d45ca59b74fe0f3dbde9a18c04f42..9afc0eaaca5ab7b6445d90ce53e31a6ae76f8848 100644 +index 68cee32833a3d683852e67e3727d62b84fa60cc4..a1731f09e724794be90dbf47e1d463a10cdb3052 100644 --- a/src/main/java/net/minecraft/world/level/Level.java +++ b/src/main/java/net/minecraft/world/level/Level.java -@@ -350,7 +350,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { +@@ -351,7 +351,14 @@ public abstract class Level implements LevelAccessor, AutoCloseable { @Override public final LevelChunk getChunk(int chunkX, int chunkZ) { // Paper - final to help inline diff --git a/patches/unapplied/server/0597-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch b/patches/server/0596-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch similarity index 100% rename from patches/unapplied/server/0597-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch rename to patches/server/0596-Don-t-read-neighbour-chunk-data-off-disk-when-conver.patch diff --git a/patches/unapplied/server/0598-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch b/patches/server/0597-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch similarity index 94% rename from patches/unapplied/server/0598-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch rename to patches/server/0597-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch index e01f02928a..1626fb7b50 100644 --- a/patches/unapplied/server/0598-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch +++ b/patches/server/0597-Don-t-lookup-fluid-state-when-raytracing-skip-air-bl.patch @@ -11,7 +11,7 @@ easy win. The remaining problems with this function are mostly with the block getting itself. diff --git a/src/main/java/net/minecraft/world/level/BlockGetter.java b/src/main/java/net/minecraft/world/level/BlockGetter.java -index f39ccc0d2a4eea4e1e0b15608780c7c4a749e672..7e1a332168357b9af14dbe3299549c2c93903fa6 100644 +index 6bf3019ff06501e82de5976417fd98a10ae6334a..e69473307b30d2b805fc1723ae8f6f2be76310ef 100644 --- a/src/main/java/net/minecraft/world/level/BlockGetter.java +++ b/src/main/java/net/minecraft/world/level/BlockGetter.java @@ -80,7 +80,8 @@ public interface BlockGetter extends LevelHeightAccessor { diff --git a/patches/unapplied/server/0599-Oprimise-map-impl-for-tracked-players.patch b/patches/server/0598-Oprimise-map-impl-for-tracked-players.patch similarity index 100% rename from patches/unapplied/server/0599-Oprimise-map-impl-for-tracked-players.patch rename to patches/server/0598-Oprimise-map-impl-for-tracked-players.patch diff --git a/patches/unapplied/server/0600-Add-missing-InventoryType.patch b/patches/server/0599-Add-missing-InventoryType.patch similarity index 100% rename from patches/unapplied/server/0600-Add-missing-InventoryType.patch rename to patches/server/0599-Add-missing-InventoryType.patch diff --git a/patches/unapplied/server/0601-Optimise-BlockSoil-nearby-water-lookup.patch b/patches/server/0600-Optimise-BlockSoil-nearby-water-lookup.patch similarity index 100% rename from patches/unapplied/server/0601-Optimise-BlockSoil-nearby-water-lookup.patch rename to patches/server/0600-Optimise-BlockSoil-nearby-water-lookup.patch diff --git a/patches/unapplied/server/0602-Fix-merchant-inventory-not-closing-on-entity-removal.patch b/patches/server/0601-Fix-merchant-inventory-not-closing-on-entity-removal.patch similarity index 90% rename from patches/unapplied/server/0602-Fix-merchant-inventory-not-closing-on-entity-removal.patch rename to patches/server/0601-Fix-merchant-inventory-not-closing-on-entity-removal.patch index 73f23716d8..70a334e012 100644 --- a/patches/unapplied/server/0602-Fix-merchant-inventory-not-closing-on-entity-removal.patch +++ b/patches/server/0601-Fix-merchant-inventory-not-closing-on-entity-removal.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Fix merchant inventory not closing on entity removal diff --git a/src/main/java/net/minecraft/server/level/ServerLevel.java b/src/main/java/net/minecraft/server/level/ServerLevel.java -index a870349f1de975e46fe831ff32394d6dd80d388b..427a649e403c87aab0158e99e3aca105159a535c 100644 +index 2ac09e8eece6ff772c94bb1efd01cc1c45194435..3205ef2b0027a2fa7f9ba5ed3437f71f1c6e02b5 100644 --- a/src/main/java/net/minecraft/server/level/ServerLevel.java +++ b/src/main/java/net/minecraft/server/level/ServerLevel.java -@@ -2303,6 +2303,11 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe +@@ -2309,6 +2309,11 @@ public class ServerLevel extends Level implements ServerEntityGetter, WorldGenLe // Spigot end // Spigot Start if (entity.getBukkitEntity() instanceof org.bukkit.inventory.InventoryHolder && (!(entity instanceof ServerPlayer) || entity.getRemovalReason() != Entity.RemovalReason.KILLED)) { // SPIGOT-6876: closeInventory clears death message diff --git a/patches/unapplied/server/0603-Check-requirement-before-suggesting-root-nodes.patch b/patches/server/0602-Check-requirement-before-suggesting-root-nodes.patch similarity index 100% rename from patches/unapplied/server/0603-Check-requirement-before-suggesting-root-nodes.patch rename to patches/server/0602-Check-requirement-before-suggesting-root-nodes.patch diff --git a/patches/unapplied/server/0604-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch b/patches/server/0603-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch similarity index 86% rename from patches/unapplied/server/0604-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch rename to patches/server/0603-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch index db870d4240..0330fe314a 100644 --- a/patches/unapplied/server/0604-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch +++ b/patches/server/0603-Don-t-respond-to-ServerboundCommandSuggestionPacket-.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Don't respond to ServerboundCommandSuggestionPacket when diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index a4abcbc69ccd023a936d02d359ba4c08198ed31e..7f1e0c6801a1d8b0857fba9826fc56e30bd41497 100644 +index dcc87047769094241a0f0b682dc31cc4767ab5e9..d76df6ed588b1109cdebf239884d4c9ce5de47a6 100644 --- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java +++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -760,6 +760,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl +@@ -758,6 +758,11 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl return; } // CraftBukkit end diff --git a/patches/unapplied/server/0605-Add-packet-limiter-config.patch b/patches/server/0604-Add-packet-limiter-config.patch similarity index 98% rename from patches/unapplied/server/0605-Add-packet-limiter-config.patch rename to patches/server/0604-Add-packet-limiter-config.patch index a6bd6521f4..e49a44446e 100644 --- a/patches/unapplied/server/0605-Add-packet-limiter-config.patch +++ b/patches/server/0604-Add-packet-limiter-config.patch @@ -24,7 +24,7 @@ and an action can be defined: DROP or KICK If interval or rate are less-than 0, the limit is ignored diff --git a/src/main/java/net/minecraft/network/Connection.java b/src/main/java/net/minecraft/network/Connection.java -index 2b86415e4ea197c5c44c23072c9a1cda595544a8..4d9f1fc884050993287adfa4578a87da710623fb 100644 +index f5fe87103ce53ba07b43c6c10fc9dafcc5ea4958..72e69f60fb687f102c963b61042b19162a5ec0b2 100644 --- a/src/main/java/net/minecraft/network/Connection.java +++ b/src/main/java/net/minecraft/network/Connection.java @@ -137,6 +137,22 @@ public class Connection extends SimpleChannelInboundHandler> { diff --git a/patches/unapplied/server/0606-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch b/patches/server/0605-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch similarity index 100% rename from patches/unapplied/server/0606-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch rename to patches/server/0605-Fix-setPatternColor-on-tropical-fish-bucket-meta.patch diff --git a/patches/unapplied/server/0607-Ensure-valid-vehicle-status.patch b/patches/server/0606-Ensure-valid-vehicle-status.patch similarity index 85% rename from patches/unapplied/server/0607-Ensure-valid-vehicle-status.patch rename to patches/server/0606-Ensure-valid-vehicle-status.patch index 7440d5c859..88fa596782 100644 --- a/patches/unapplied/server/0607-Ensure-valid-vehicle-status.patch +++ b/patches/server/0606-Ensure-valid-vehicle-status.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Ensure valid vehicle status diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 430a7269852c8f03542382aafad989977be96197..20592a302333f1927ca088e8002cd76a8b10ca17 100644 +index 215be207e29254312bb85f259a684a7de6876aa9..e2a8e0291a5c0c00d7d6135a0d34fb8bab7b4cd5 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -698,7 +698,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -696,7 +696,7 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { } } diff --git a/patches/unapplied/server/0608-Prevent-softlocked-end-exit-portal-generation.patch b/patches/server/0607-Prevent-softlocked-end-exit-portal-generation.patch similarity index 100% rename from patches/unapplied/server/0608-Prevent-softlocked-end-exit-portal-generation.patch rename to patches/server/0607-Prevent-softlocked-end-exit-portal-generation.patch diff --git a/patches/unapplied/server/0609-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch b/patches/server/0608-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch similarity index 91% rename from patches/unapplied/server/0609-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch rename to patches/server/0608-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch index 4fac0c1ab3..a145d67c1a 100644 --- a/patches/unapplied/server/0609-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch +++ b/patches/server/0608-Fix-CocaoDecorator-causing-a-crash-when-trying-to-ge.patch @@ -6,7 +6,7 @@ Subject: [PATCH] Fix CocaoDecorator causing a crash when trying to generate diff --git a/src/main/java/net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator.java b/src/main/java/net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator.java -index 1b59f530840a2a490e295f73db90ab266b27712f..f924f09aaf5d8fd643f86d826ab053dbe861369e 100644 +index 3acae3afbfc7c15442ddde7aaf250dac5be2bde5..a6c6d0fe89af4265d0034b8d03f4fdb8d5c1a04f 100644 --- a/src/main/java/net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator.java +++ b/src/main/java/net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator.java @@ -26,6 +26,7 @@ public class CocoaDecorator extends TreeDecorator { diff --git a/patches/unapplied/server/0610-Don-t-log-debug-logging-being-disabled.patch b/patches/server/0609-Don-t-log-debug-logging-being-disabled.patch similarity index 100% rename from patches/unapplied/server/0610-Don-t-log-debug-logging-being-disabled.patch rename to patches/server/0609-Don-t-log-debug-logging-being-disabled.patch diff --git a/patches/unapplied/server/0611-fix-various-menus-with-empty-level-accesses.patch b/patches/server/0610-fix-various-menus-with-empty-level-accesses.patch similarity index 100% rename from patches/unapplied/server/0611-fix-various-menus-with-empty-level-accesses.patch rename to patches/server/0610-fix-various-menus-with-empty-level-accesses.patch diff --git a/patches/unapplied/server/0612-Preserve-overstacked-loot.patch b/patches/server/0611-Preserve-overstacked-loot.patch similarity index 100% rename from patches/unapplied/server/0612-Preserve-overstacked-loot.patch rename to patches/server/0611-Preserve-overstacked-loot.patch diff --git a/patches/unapplied/server/0613-Update-head-rotation-in-missing-places.patch b/patches/server/0612-Update-head-rotation-in-missing-places.patch similarity index 84% rename from patches/unapplied/server/0613-Update-head-rotation-in-missing-places.patch rename to patches/server/0612-Update-head-rotation-in-missing-places.patch index 65816d8278..d9477bbb64 100644 --- a/patches/unapplied/server/0613-Update-head-rotation-in-missing-places.patch +++ b/patches/server/0612-Update-head-rotation-in-missing-places.patch @@ -8,10 +8,10 @@ This is because bukkit uses a separate head rotation field for yaw. This issue only applies to players. diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 38147960aed55bb60b427d73739d8ec0b5b8b863..f8c3d239e4a87abd5e893726dcc5ccc07bda637e 100644 +index ee2625301ebb1dd601618ae43915891f3b57b7c3..9d95be758a905209eb1de9ee9d3b0f5af5b14074 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -1915,6 +1915,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1938,6 +1938,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.setXRot(Mth.clamp(pitch, -90.0F, 90.0F) % 360.0F); this.yRotO = this.getYRot(); this.xRotO = this.getXRot(); @@ -19,7 +19,7 @@ index 38147960aed55bb60b427d73739d8ec0b5b8b863..f8c3d239e4a87abd5e893726dcc5ccc0 } public void absMoveTo(double x, double y, double z) { -@@ -1957,6 +1958,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -1980,6 +1981,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess this.setXRot(pitch); this.setOldPosAndRot(); this.reapplyPosition(); diff --git a/patches/unapplied/server/0614-prevent-unintended-light-block-manipulation.patch b/patches/server/0613-prevent-unintended-light-block-manipulation.patch similarity index 94% rename from patches/unapplied/server/0614-prevent-unintended-light-block-manipulation.patch rename to patches/server/0613-prevent-unintended-light-block-manipulation.patch index b8ca205064..e9851e3744 100644 --- a/patches/unapplied/server/0614-prevent-unintended-light-block-manipulation.patch +++ b/patches/server/0613-prevent-unintended-light-block-manipulation.patch @@ -5,7 +5,7 @@ Subject: [PATCH] prevent unintended light block manipulation diff --git a/src/main/java/net/minecraft/world/level/block/LightBlock.java b/src/main/java/net/minecraft/world/level/block/LightBlock.java -index 6c3ca57a29d3c5ad1add1cf2f707b930dfc422ea..fec6bf38f080039436ba80d5528857ba4787bf4e 100644 +index 2be8855b2cd50e599d80e1ff5dc13d66451dff9d..9f6bb23b6021a99d4bb09d57659943cfdb4b673f 100644 --- a/src/main/java/net/minecraft/world/level/block/LightBlock.java +++ b/src/main/java/net/minecraft/world/level/block/LightBlock.java @@ -50,6 +50,14 @@ public class LightBlock extends Block implements SimpleWaterloggedBlock { diff --git a/patches/unapplied/server/0615-Fix-CraftCriteria-defaults-map.patch b/patches/server/0614-Fix-CraftCriteria-defaults-map.patch similarity index 100% rename from patches/unapplied/server/0615-Fix-CraftCriteria-defaults-map.patch rename to patches/server/0614-Fix-CraftCriteria-defaults-map.patch diff --git a/patches/unapplied/server/0616-Fix-upstreams-block-state-factories.patch b/patches/server/0615-Fix-upstreams-block-state-factories.patch similarity index 99% rename from patches/unapplied/server/0616-Fix-upstreams-block-state-factories.patch rename to patches/server/0615-Fix-upstreams-block-state-factories.patch index 93376fc4b1..d5198201c5 100644 --- a/patches/unapplied/server/0616-Fix-upstreams-block-state-factories.patch +++ b/patches/server/0615-Fix-upstreams-block-state-factories.patch @@ -13,10 +13,10 @@ the material type of the block at that location. public net.minecraft.world.level.block.entity.BlockEntityType validBlocks diff --git a/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java b/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java -index 50413d317ce0282752c57535637f87d529f4c09f..09b85c4caa4ebaae1e8c2910b090c40a039a1be7 100644 +index 8e091ac441acf88a5c8597c6d2923efa5662092e..b1ed43287d522e08a967ba751a851776351916e7 100644 --- a/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java +++ b/src/main/java/net/minecraft/world/level/block/entity/BlockEntity.java -@@ -383,7 +383,7 @@ public abstract class BlockEntity { +@@ -370,7 +370,7 @@ public abstract class BlockEntity { // Paper end if (this.level == null) return null; org.bukkit.block.Block block = this.level.getWorld().getBlockAt(this.worldPosition.getX(), this.worldPosition.getY(), this.worldPosition.getZ()); diff --git a/patches/unapplied/server/0617-Configurable-feature-seeds.patch b/patches/server/0616-Configurable-feature-seeds.patch similarity index 91% rename from patches/unapplied/server/0617-Configurable-feature-seeds.patch rename to patches/server/0616-Configurable-feature-seeds.patch index b374cbddbf..9a0502f3a7 100644 --- a/patches/unapplied/server/0617-Configurable-feature-seeds.patch +++ b/patches/server/0616-Configurable-feature-seeds.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Configurable feature seeds Co-authored-by: Thonk <30448663+ExcessiveAmountsOfZombies@users.noreply.github.com> diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -index e3c5a49611d584fbd19a44da5aa78ff6d7c43881..fc8e3edd9734fa7b69f0fc6b4eefd8a704e451cf 100644 +index 416b1afcbab093f45900a4d55708609ba5a7de7a..fde17b4e2607fc443a33aea3a631aae6ccb71e2c 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -@@ -436,7 +436,14 @@ public abstract class ChunkGenerator { +@@ -437,7 +437,14 @@ public abstract class ChunkGenerator { return (String) optional.orElseGet(placedfeature::toString); }; diff --git a/patches/unapplied/server/0618-Add-root-admin-user-detection.patch b/patches/server/0617-Add-root-admin-user-detection.patch similarity index 100% rename from patches/unapplied/server/0618-Add-root-admin-user-detection.patch rename to patches/server/0617-Add-root-admin-user-detection.patch diff --git a/patches/unapplied/server/0619-don-t-attempt-to-teleport-dead-entities.patch b/patches/server/0618-don-t-attempt-to-teleport-dead-entities.patch similarity index 84% rename from patches/unapplied/server/0619-don-t-attempt-to-teleport-dead-entities.patch rename to patches/server/0618-don-t-attempt-to-teleport-dead-entities.patch index a7655c738c..6dc9c02ca4 100644 --- a/patches/unapplied/server/0619-don-t-attempt-to-teleport-dead-entities.patch +++ b/patches/server/0618-don-t-attempt-to-teleport-dead-entities.patch @@ -5,10 +5,10 @@ Subject: [PATCH] don't attempt to teleport dead entities diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f8c3d239e4a87abd5e893726dcc5ccc07bda637e..f7bd4f1e101330a8ac29cc8059a2f4263c382bfc 100644 +index 9d95be758a905209eb1de9ee9d3b0f5af5b14074..6e0b22b81d25db7a8f98bbf0fc6b4b69f4a678fd 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -714,7 +714,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -718,7 +718,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess // CraftBukkit start public void postTick() { // No clean way to break out of ticking once the entity has been copied to a new world, so instead we move the portalling later in the tick cycle diff --git a/patches/unapplied/server/0620-Prevent-excessive-velocity-through-repeated-crits.patch b/patches/server/0619-Prevent-excessive-velocity-through-repeated-crits.patch similarity index 92% rename from patches/unapplied/server/0620-Prevent-excessive-velocity-through-repeated-crits.patch rename to patches/server/0619-Prevent-excessive-velocity-through-repeated-crits.patch index 7d38deddec..f0f62f6f2a 100644 --- a/patches/unapplied/server/0620-Prevent-excessive-velocity-through-repeated-crits.patch +++ b/patches/server/0619-Prevent-excessive-velocity-through-repeated-crits.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Prevent excessive velocity through repeated crits diff --git a/src/main/java/net/minecraft/world/entity/LivingEntity.java b/src/main/java/net/minecraft/world/entity/LivingEntity.java -index a06a696fcec124d307eb84c1ee4f20ec928bfaec..f714569ebc0e6c43d4d879b2d7bb407b0eed77f6 100644 +index fb3cec13dd9e426904ce28a8755e6cc57296a42e..dfa1e3548f9b48c20f28712ecb06310fe9c856f5 100644 --- a/src/main/java/net/minecraft/world/entity/LivingEntity.java +++ b/src/main/java/net/minecraft/world/entity/LivingEntity.java -@@ -2864,17 +2864,29 @@ public abstract class LivingEntity extends Entity implements Attackable { +@@ -2875,17 +2875,29 @@ public abstract class LivingEntity extends Entity implements Attackable { return this.hasEffect(MobEffects.JUMP) ? 0.1F * ((float) this.getEffect(MobEffects.JUMP).getAmplifier() + 1.0F) : 0.0F; } diff --git a/patches/unapplied/server/0621-Remove-client-side-code-using-deprecated-for-removal.patch b/patches/server/0620-Remove-client-side-code-using-deprecated-for-removal.patch similarity index 90% rename from patches/unapplied/server/0621-Remove-client-side-code-using-deprecated-for-removal.patch rename to patches/server/0620-Remove-client-side-code-using-deprecated-for-removal.patch index c369ec73f9..4a04ac055a 100644 --- a/patches/unapplied/server/0621-Remove-client-side-code-using-deprecated-for-removal.patch +++ b/patches/server/0620-Remove-client-side-code-using-deprecated-for-removal.patch @@ -7,10 +7,10 @@ Subject: [PATCH] Remove client-side code using deprecated for removal Fixes warnings on build diff --git a/src/main/java/net/minecraft/Util.java b/src/main/java/net/minecraft/Util.java -index dbf79a018260a006bf5d16608b35bcbea9adb963..e4048d8f43befe5134222207cdb88f640a875deb 100644 +index e78f40f7f10a2ed0675b3cb9a2c5730dbc0141db..cc5e2710d3edeaf60284ed95c33999c701d0678a 100644 --- a/src/main/java/net/minecraft/Util.java +++ b/src/main/java/net/minecraft/Util.java -@@ -1082,16 +1082,7 @@ public class Util { +@@ -1087,16 +1087,7 @@ public class Util { } public void openUri(URI uri) { diff --git a/patches/unapplied/server/0622-Fix-Spigot-growth-modifiers.patch b/patches/server/0621-Fix-Spigot-growth-modifiers.patch similarity index 97% rename from patches/unapplied/server/0622-Fix-Spigot-growth-modifiers.patch rename to patches/server/0621-Fix-Spigot-growth-modifiers.patch index 6a24adf1c8..4e7f192262 100644 --- a/patches/unapplied/server/0622-Fix-Spigot-growth-modifiers.patch +++ b/patches/server/0621-Fix-Spigot-growth-modifiers.patch @@ -13,7 +13,7 @@ Co-authored-by: Noah van der Aa Co-authored-by: Lulu13022002 <41980282+Lulu13022002@users.noreply.github.com> diff --git a/src/main/java/net/minecraft/world/level/block/CaveVinesBlock.java b/src/main/java/net/minecraft/world/level/block/CaveVinesBlock.java -index 437be546cf03b6af0856adabfeaf67bc33ff75d6..c4473c2a778116d48bc3e4796afd901f455070e6 100644 +index b4618129397fa5dbec3a6438fc20c57d91d1d1dd..81e572783157926383dd9baa58d30f5419c1616f 100644 --- a/src/main/java/net/minecraft/world/level/block/CaveVinesBlock.java +++ b/src/main/java/net/minecraft/world/level/block/CaveVinesBlock.java @@ -50,9 +50,18 @@ public class CaveVinesBlock extends GrowingPlantHeadBlock implements CaveVines { @@ -37,7 +37,7 @@ index 437be546cf03b6af0856adabfeaf67bc33ff75d6..c4473c2a778116d48bc3e4796afd901f @Override diff --git a/src/main/java/net/minecraft/world/level/block/CropBlock.java b/src/main/java/net/minecraft/world/level/block/CropBlock.java -index 79ebc37a779bf6cba66a34a7604f819e95fd86a2..1ada5ed825501666addacf527a513ab7bd4a3a58 100644 +index 6fe896079c0ae622976c2055f8d13cda5ed3ea3d..1967ff3fcb94988be85985c4754904f0077de066 100644 --- a/src/main/java/net/minecraft/world/level/block/CropBlock.java +++ b/src/main/java/net/minecraft/world/level/block/CropBlock.java @@ -91,6 +91,10 @@ public class CropBlock extends BushBlock implements BonemealableBlock { diff --git a/patches/unapplied/server/0623-Prevent-ContainerOpenersCounter-openCount-from-going.patch b/patches/server/0622-Prevent-ContainerOpenersCounter-openCount-from-going.patch similarity index 100% rename from patches/unapplied/server/0623-Prevent-ContainerOpenersCounter-openCount-from-going.patch rename to patches/server/0622-Prevent-ContainerOpenersCounter-openCount-from-going.patch diff --git a/patches/unapplied/server/0624-Add-PlayerItemFrameChangeEvent.patch b/patches/server/0623-Add-PlayerItemFrameChangeEvent.patch similarity index 100% rename from patches/unapplied/server/0624-Add-PlayerItemFrameChangeEvent.patch rename to patches/server/0623-Add-PlayerItemFrameChangeEvent.patch diff --git a/patches/unapplied/server/0625-Optimize-HashMapPalette.patch b/patches/server/0624-Optimize-HashMapPalette.patch similarity index 100% rename from patches/unapplied/server/0625-Optimize-HashMapPalette.patch rename to patches/server/0624-Optimize-HashMapPalette.patch diff --git a/patches/unapplied/server/0626-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch b/patches/server/0625-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch similarity index 100% rename from patches/unapplied/server/0626-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch rename to patches/server/0625-Fix-ChunkSnapshot-isSectionEmpty-int-and-optimize-Pa.patch diff --git a/patches/unapplied/server/0627-Add-more-Campfire-API.patch b/patches/server/0626-Add-more-Campfire-API.patch similarity index 100% rename from patches/unapplied/server/0627-Add-more-Campfire-API.patch rename to patches/server/0626-Add-more-Campfire-API.patch diff --git a/patches/unapplied/server/0628-Forward-CraftEntity-in-teleport-command.patch b/patches/server/0627-Forward-CraftEntity-in-teleport-command.patch similarity index 88% rename from patches/unapplied/server/0628-Forward-CraftEntity-in-teleport-command.patch rename to patches/server/0627-Forward-CraftEntity-in-teleport-command.patch index 4a6aa85265..ea5a8eee4a 100644 --- a/patches/unapplied/server/0628-Forward-CraftEntity-in-teleport-command.patch +++ b/patches/server/0627-Forward-CraftEntity-in-teleport-command.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Forward CraftEntity in teleport command diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index f7bd4f1e101330a8ac29cc8059a2f4263c382bfc..568e968af99cc97de5c32b432f8c1be9790b0bcd 100644 +index 6e0b22b81d25db7a8f98bbf0fc6b4b69f4a678fd..17c8a369e5a09276a3918dfb2bb004441e35a8e0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -3481,6 +3481,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3511,6 +3511,13 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public void restoreFrom(Entity original) { @@ -22,7 +22,7 @@ index f7bd4f1e101330a8ac29cc8059a2f4263c382bfc..568e968af99cc97de5c32b432f8c1be9 CompoundTag nbttagcompound = original.saveWithoutId(new CompoundTag()); nbttagcompound.remove("Dimension"); -@@ -3618,8 +3625,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -3648,8 +3655,8 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess entity.restoreFrom(this); this.removeAfterChangingDimensions(); // CraftBukkit start - Forward the CraftEntity to the new entity diff --git a/patches/unapplied/server/0629-Improve-scoreboard-entries.patch b/patches/server/0628-Improve-scoreboard-entries.patch similarity index 100% rename from patches/unapplied/server/0629-Improve-scoreboard-entries.patch rename to patches/server/0628-Improve-scoreboard-entries.patch diff --git a/patches/unapplied/server/0630-Entity-powdered-snow-API.patch b/patches/server/0629-Entity-powdered-snow-API.patch similarity index 100% rename from patches/unapplied/server/0630-Entity-powdered-snow-API.patch rename to patches/server/0629-Entity-powdered-snow-API.patch diff --git a/patches/unapplied/server/0631-Add-API-for-item-entity-health.patch b/patches/server/0630-Add-API-for-item-entity-health.patch similarity index 100% rename from patches/unapplied/server/0631-Add-API-for-item-entity-health.patch rename to patches/server/0630-Add-API-for-item-entity-health.patch diff --git a/patches/unapplied/server/0632-Configurable-max-block-light-for-monster-spawning.patch b/patches/server/0631-Configurable-max-block-light-for-monster-spawning.patch similarity index 100% rename from patches/unapplied/server/0632-Configurable-max-block-light-for-monster-spawning.patch rename to patches/server/0631-Configurable-max-block-light-for-monster-spawning.patch diff --git a/patches/unapplied/server/0633-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch b/patches/server/0632-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch similarity index 100% rename from patches/unapplied/server/0633-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch rename to patches/server/0632-Fix-sticky-pistons-and-BlockPistonRetractEvent.patch diff --git a/patches/unapplied/server/0634-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch b/patches/server/0633-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch similarity index 100% rename from patches/unapplied/server/0634-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch rename to patches/server/0633-Expose-isFuel-and-canSmelt-methods-to-FurnaceInvento.patch diff --git a/patches/unapplied/server/0635-Bucketable-API.patch b/patches/server/0634-Bucketable-API.patch similarity index 100% rename from patches/unapplied/server/0635-Bucketable-API.patch rename to patches/server/0634-Bucketable-API.patch diff --git a/patches/unapplied/server/0636-Validate-usernames.patch b/patches/server/0635-Validate-usernames.patch similarity index 100% rename from patches/unapplied/server/0636-Validate-usernames.patch rename to patches/server/0635-Validate-usernames.patch diff --git a/patches/unapplied/server/0637-Make-water-animal-spawn-height-configurable.patch b/patches/server/0636-Make-water-animal-spawn-height-configurable.patch similarity index 100% rename from patches/unapplied/server/0637-Make-water-animal-spawn-height-configurable.patch rename to patches/server/0636-Make-water-animal-spawn-height-configurable.patch diff --git a/patches/unapplied/server/0638-Expose-vanilla-BiomeProvider-from-WorldInfo.patch b/patches/server/0637-Expose-vanilla-BiomeProvider-from-WorldInfo.patch similarity index 96% rename from patches/unapplied/server/0638-Expose-vanilla-BiomeProvider-from-WorldInfo.patch rename to patches/server/0637-Expose-vanilla-BiomeProvider-from-WorldInfo.patch index 9d5e0b16db..af63e382de 100644 --- a/patches/unapplied/server/0638-Expose-vanilla-BiomeProvider-from-WorldInfo.patch +++ b/patches/server/0637-Expose-vanilla-BiomeProvider-from-WorldInfo.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Expose vanilla BiomeProvider from WorldInfo diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 8f7b68cda090e038b5b6a7928e872debca4e011d..a63621fa5e15cf74a6c2e5a3d4e7c2d390ff4845 100644 +index edd2e83df282b0e24d4c7e3a34776a5b039c2c6b..c133a646baf88e0489d358e302d67f21f76b47c3 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -625,7 +625,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -index fc8e3edd9734fa7b69f0fc6b4eefd8a704e451cf..31c5f54c90d6e35875f762747f8618e58e2eed91 100644 +index fde17b4e2607fc443a33aea3a631aae6ccb71e2c..c64389acf0764c8d048bea2d99a21a0da832150d 100644 --- a/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java +++ b/src/main/java/net/minecraft/world/level/chunk/ChunkGenerator.java -@@ -573,7 +573,7 @@ public abstract class ChunkGenerator { +@@ -574,7 +574,7 @@ public abstract class ChunkGenerator { } } - if (structureplacement.isStructureChunk(placementCalculator, chunkcoordintpair.x, chunkcoordintpair.z)) { + if (structureplacement.isStructureChunk(placementCalculator, chunkcoordintpair.x, chunkcoordintpair.z, structureplacement instanceof net.minecraft.world.level.chunk.ChunkGeneratorStructureState.KeyedRandomSpreadStructurePlacement keyed ? keyed.key : null)) { // Paper - Add missing structure set seed configs if (list.size() == 1) { - this.tryGenerateStructure((StructureSet.StructureSelectionEntry) list.get(0), structureAccessor, registryManager, randomstate, structureTemplateManager, placementCalculator.getLevelSeed(), chunk, chunkcoordintpair, sectionposition); + this.tryGenerateStructure((StructureSet.StructureSelectionEntry) list.get(0), structureAccessor, registryManager, randomstate, structureTemplateManager, placementCalculator.getLevelSeed(), chunk, chunkcoordintpair, sectionposition, dimension); } else { diff --git a/src/main/java/net/minecraft/world/level/chunk/ChunkGeneratorStructureState.java b/src/main/java/net/minecraft/world/level/chunk/ChunkGeneratorStructureState.java index ed779a03e2ce7684428600dac4f2e92ab002f29f..a20520a6bd28bae1cee82258ac49d9753faba2bd 100644 diff --git a/patches/unapplied/server/0652-Fix-cancelled-powdered-snow-bucket-placement.patch b/patches/server/0651-Fix-cancelled-powdered-snow-bucket-placement.patch similarity index 89% rename from patches/unapplied/server/0652-Fix-cancelled-powdered-snow-bucket-placement.patch rename to patches/server/0651-Fix-cancelled-powdered-snow-bucket-placement.patch index d1a867e605..f07f56f707 100644 --- a/patches/unapplied/server/0652-Fix-cancelled-powdered-snow-bucket-placement.patch +++ b/patches/server/0651-Fix-cancelled-powdered-snow-bucket-placement.patch @@ -8,10 +8,10 @@ snow bucket didn't revert grass that became snowy because of the placement. diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index 8c9ae9ac38def29ae4cd8944395e566e434d46d0..a100c7a53b4b1dac0a01ee65418d44297bcdb93f 100644 +index e320264c2283c2c09910ea70606413c73f443b1f..18f84d54ec72debec652adb22067e11aa058b238 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -425,7 +425,7 @@ public final class ItemStack implements DataComponentHolder { +@@ -430,7 +430,7 @@ public final class ItemStack implements DataComponentHolder { int oldCount = this.getCount(); ServerLevel world = (ServerLevel) context.getLevel(); @@ -20,7 +20,7 @@ index 8c9ae9ac38def29ae4cd8944395e566e434d46d0..a100c7a53b4b1dac0a01ee65418d4429 world.captureBlockStates = true; // special case bonemeal if (item == Items.BONE_MEAL) { -@@ -488,7 +488,7 @@ public final class ItemStack implements DataComponentHolder { +@@ -493,7 +493,7 @@ public final class ItemStack implements DataComponentHolder { world.capturedBlockStates.clear(); if (blocks.size() > 1) { placeEvent = org.bukkit.craftbukkit.event.CraftEventFactory.callBlockMultiPlaceEvent(world, entityhuman, enumhand, blocks, blockposition.getX(), blockposition.getY(), blockposition.getZ()); diff --git a/patches/unapplied/server/0653-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch b/patches/server/0652-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch similarity index 100% rename from patches/unapplied/server/0653-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch rename to patches/server/0652-Add-missing-Validate-calls-to-CraftServer-getSpawnLi.patch diff --git a/patches/unapplied/server/0654-Add-GameEvent-tags.patch b/patches/server/0653-Add-GameEvent-tags.patch similarity index 100% rename from patches/unapplied/server/0654-Add-GameEvent-tags.patch rename to patches/server/0653-Add-GameEvent-tags.patch diff --git a/patches/unapplied/server/0655-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch b/patches/server/0654-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch similarity index 94% rename from patches/unapplied/server/0655-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch rename to patches/server/0654-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch index 5a8009431c..5929e0f042 100644 --- a/patches/unapplied/server/0655-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch +++ b/patches/server/0654-Execute-chunk-tasks-fairly-for-worlds-while-waiting-.patch @@ -9,7 +9,7 @@ This might result in chunks loading far slower in the nether, for example. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index a63621fa5e15cf74a6c2e5a3d4e7c2d390ff4845..1ca4d6c166f60afd4e34bccc48c00578cfcbe962 100644 +index c133a646baf88e0489d358e302d67f21f76b47c3..17700ebf508f3ac7a4d1cdd8d52355afaf5d006f 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -1404,6 +1404,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop extends diff --git a/patches/unapplied/server/0657-Configurable-sculk-sensor-listener-range.patch b/patches/server/0656-Configurable-sculk-sensor-listener-range.patch similarity index 100% rename from patches/unapplied/server/0657-Configurable-sculk-sensor-listener-range.patch rename to patches/server/0656-Configurable-sculk-sensor-listener-range.patch diff --git a/patches/unapplied/server/0658-Add-missing-block-data-API.patch b/patches/server/0657-Add-missing-block-data-API.patch similarity index 94% rename from patches/unapplied/server/0658-Add-missing-block-data-API.patch rename to patches/server/0657-Add-missing-block-data-API.patch index ace8c632a6..7c18d0cb0d 100644 --- a/patches/unapplied/server/0658-Add-missing-block-data-API.patch +++ b/patches/server/0657-Add-missing-block-data-API.patch @@ -42,27 +42,6 @@ index 2230160d5e04e979467a56346600436c1e5dd70c..08436bfeba2f35fb11b16c4f71f76e13 // org.bukkit.craftbukkit.block.data.CraftLightable -diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCherryLeaves.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCherryLeaves.java -index af29ff861eb2c504ef31cc3236adf1e7f6b46049..bc32c5d4c7568ed4392e4bdb5872066846aa62b6 100644 ---- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCherryLeaves.java -+++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftCherryLeaves.java -@@ -51,4 +51,16 @@ public final class CraftCherryLeaves extends org.bukkit.craftbukkit.block.data.C - public void setWaterlogged(boolean waterlogged) { - this.set(CraftCherryLeaves.WATERLOGGED, waterlogged); - } -+ -+ // Paper start -+ @Override -+ public int getMaximumDistance() { -+ return getMax(DISTANCE); -+ } -+ -+ @Override -+ public int getMinimumDistance() { -+ return getMin(DISTANCE); -+ } -+ // Paper end - } diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftComposter.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftComposter.java index 7ce2e8b733bcd496dcfccb1ddfcb7c5c1b64052e..5ae27fc8f9d18bae949d335ea53e7e70917f0e80 100644 --- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftComposter.java @@ -192,6 +171,27 @@ index 7a1f2fd2f7f8f1b46352fe2c4d0cdf23a88020fd..8b621aaeadcf2cc6e2ccdbab92f4ae2b + public int getMaximumDistance() { + return getMax(CraftMangroveLeaves.DISTANCE); + } ++ // Paper end + } +diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftParticleLeaves.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftParticleLeaves.java +index db4849a35d34da4ab42bbe7569c4944ed95d8f2b..e37e84c333a42006b6c32cf5cd71c0bbfa725141 100644 +--- a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftParticleLeaves.java ++++ b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftParticleLeaves.java +@@ -51,4 +51,16 @@ public final class CraftParticleLeaves extends org.bukkit.craftbukkit.block.data + public void setWaterlogged(boolean waterlogged) { + this.set(CraftParticleLeaves.WATERLOGGED, waterlogged); + } ++ ++ // Paper start ++ @Override ++ public int getMaximumDistance() { ++ return getMax(DISTANCE); ++ } ++ ++ @Override ++ public int getMinimumDistance() { ++ return getMin(DISTANCE); ++ } + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/block/impl/CraftPinkPetals.java b/src/main/java/org/bukkit/craftbukkit/block/impl/CraftPinkPetals.java diff --git a/patches/unapplied/server/0659-Option-to-have-default-CustomSpawners-in-custom-worl.patch b/patches/server/0658-Option-to-have-default-CustomSpawners-in-custom-worl.patch similarity index 96% rename from patches/unapplied/server/0659-Option-to-have-default-CustomSpawners-in-custom-worl.patch rename to patches/server/0658-Option-to-have-default-CustomSpawners-in-custom-worl.patch index eef80766b2..69da29074a 100644 --- a/patches/unapplied/server/0659-Option-to-have-default-CustomSpawners-in-custom-worl.patch +++ b/patches/server/0658-Option-to-have-default-CustomSpawners-in-custom-worl.patch @@ -10,7 +10,7 @@ just looking at the LevelStem key, look at the DimensionType key which is one level below that. Defaults to off to keep vanilla behavior. diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java -index 1ca4d6c166f60afd4e34bccc48c00578cfcbe962..211f25d0c5366f89d88fe3089773db27fa183edd 100644 +index 17700ebf508f3ac7a4d1cdd8d52355afaf5d006f..64dce8d94cf261113d6f8b99020bf710b9762c2b 100644 --- a/src/main/java/net/minecraft/server/MinecraftServer.java +++ b/src/main/java/net/minecraft/server/MinecraftServer.java @@ -645,7 +645,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop(Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/level/block/state/BlockState;)V diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index cdee49fbbf22fcbf4618b503e15b21a917144f85..33735897ec3800754ba690ca215d3d11d746f728 100644 +index 66778ebd82563823f692c7151f40a373e8d7427a..827cf8b2e241e49dac961b103f32546a04f8a2f9 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java @@ -1386,7 +1386,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { @@ -43,10 +43,10 @@ index cdee49fbbf22fcbf4618b503e15b21a917144f85..33735897ec3800754ba690ca215d3d11 } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java -index f8ce309c6ec8c294378d2cd9bc542e43338f8376..0bafd3b1a55154c8e9eb37c96df9f5985640a675 100644 +index 95c2ef53e6c5574e69614d8058eb3ed94ab6b0d6..f3ad9c57ce2fc06b90b7ab7e1f31ef0e1b564c9f 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java -@@ -440,7 +440,7 @@ public final class CraftEntityTypes { +@@ -438,7 +438,7 @@ public final class CraftEntityTypes { register(new EntityTypeData<>(EntityType.TNT, TNTPrimed.class, CraftTNTPrimed::new, spawnData -> new PrimedTnt(spawnData.minecraftWorld(), spawnData.x(), spawnData.y(), spawnData.z(), null))); register(new EntityTypeData<>(EntityType.FALLING_BLOCK, FallingBlock.class, CraftFallingBlock::new, spawnData -> { BlockPos pos = BlockPos.containing(spawnData.x(), spawnData.y(), spawnData.z()); diff --git a/patches/unapplied/server/0664-Expose-furnace-minecart-push-values.patch b/patches/server/0663-Expose-furnace-minecart-push-values.patch similarity index 100% rename from patches/unapplied/server/0664-Expose-furnace-minecart-push-values.patch rename to patches/server/0663-Expose-furnace-minecart-push-values.patch diff --git a/patches/unapplied/server/0665-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch b/patches/server/0664-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch similarity index 92% rename from patches/unapplied/server/0665-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch rename to patches/server/0664-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch index 10e5a4a924..c98e7fd0f3 100644 --- a/patches/unapplied/server/0665-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch +++ b/patches/server/0664-Fix-cancelling-ProjectileHitEvent-for-piercing-arrow.patch @@ -15,10 +15,10 @@ piercing arrows to avoid duplicate damage being applied. protected net.minecraft.world.entity.projectile.Projectile hitCancelled 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 07f36edf9362227521daabfdceaa7e136d854f8d..c173c692e84eb5f2d2ed9873dc3411dbd575fcce 100644 +index aab7d546317d93876ccd0e02c0631ccc7c8f9bf5..0abe2fe6d7cf0a2084b7219c3ab0c5118586a8fe 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java +++ b/src/main/java/net/minecraft/world/entity/projectile/AbstractArrow.java -@@ -344,6 +344,19 @@ public abstract class AbstractArrow extends Projectile { +@@ -345,6 +345,19 @@ public abstract class AbstractArrow extends Projectile { } diff --git a/patches/unapplied/server/0666-More-Projectile-API.patch b/patches/server/0665-More-Projectile-API.patch similarity index 99% rename from patches/unapplied/server/0666-More-Projectile-API.patch rename to patches/server/0665-More-Projectile-API.patch index c03e65b770..e5cadb6487 100644 --- a/patches/unapplied/server/0666-More-Projectile-API.patch +++ b/patches/server/0665-More-Projectile-API.patch @@ -29,7 +29,7 @@ Co-authored-by: MelnCat Co-authored-by: Lulu13022002 <41980282+Lulu13022002@users.noreply.github.com> diff --git a/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java b/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java -index 536196a740f607adda2a5ae7f644981ac26bef98..1f95234c0a1457050574aa0f6c4b2a8c91b1f272 100644 +index 966ba1a9c2e7923a970ce3799a5e2ef6ca36bf84..a2487ca0d7794e58d9ede35d9be5a05a7ea7b03c 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java +++ b/src/main/java/net/minecraft/world/entity/projectile/FishingHook.java @@ -419,13 +419,18 @@ public class FishingHook extends Projectile { @@ -54,7 +54,7 @@ index 536196a740f607adda2a5ae7f644981ac26bef98..1f95234c0a1457050574aa0f6c4b2a8c public boolean calculateOpenWater(BlockPos pos) { FishingHook.OpenWaterType entityfishinghook_waterposition = FishingHook.OpenWaterType.INVALID; diff --git a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java -index 0e4ba92d97998937ccb83ebd60aaad3fb68f7546..01684c903930b14a0df3a146176e2b476a374efb 100644 +index 5cff58ab33657e7fb2642928e42b728e7b0b4689..f3781e37358f970b56e5b8de77ef224151270f1c 100644 --- a/src/main/java/net/minecraft/world/entity/projectile/Projectile.java +++ b/src/main/java/net/minecraft/world/entity/projectile/Projectile.java @@ -288,7 +288,7 @@ public abstract class Projectile extends Entity implements TraceableEntity { @@ -328,10 +328,10 @@ index 199d5836dc787cca54c6b653a4e67573f2f758a2..15d50a284cafc2eb59239ca009268365 } } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java -index 0bafd3b1a55154c8e9eb37c96df9f5985640a675..0b9c4f9b61651660e821735f18b4f3cc7cfd164c 100644 +index f3ad9c57ce2fc06b90b7ab7e1f31ef0e1b564c9f..2a32f2aa3cb7395900cf2d06cc2dcd4ddacd4145 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftEntityTypes.java -@@ -442,7 +442,7 @@ public final class CraftEntityTypes { +@@ -440,7 +440,7 @@ public final class CraftEntityTypes { BlockPos pos = BlockPos.containing(spawnData.x(), spawnData.y(), spawnData.z()); return new FallingBlockEntity(spawnData.minecraftWorld(), spawnData.x(), spawnData.y(), spawnData.z(), spawnData.world().getBlockState(pos)); // Paper - create falling block entities correctly })); @@ -521,7 +521,7 @@ index 6e2f91423371ead9890095cf4b1e2299c4dcba28..9d8f4b7176e60180565e3134a14ecf19 + // Paper end } diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java -index e148239d4930e5cbb000beed4de386f992f28d88..14b4c3835388d957653ba34444968bb718ce7f68 100644 +index 10a95c1a40597867ffd2974037bfed86dd6deda4..2028f9874e96a3b274528858d4149b04a075f256 100644 --- a/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java +++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftLivingEntity.java @@ -579,8 +579,15 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity { diff --git a/patches/unapplied/server/0667-Fix-swamp-hut-cat-generation-deadlock.patch b/patches/server/0666-Fix-swamp-hut-cat-generation-deadlock.patch similarity index 96% rename from patches/unapplied/server/0667-Fix-swamp-hut-cat-generation-deadlock.patch rename to patches/server/0666-Fix-swamp-hut-cat-generation-deadlock.patch index 24bfbc0dc7..ed87313991 100644 --- a/patches/unapplied/server/0667-Fix-swamp-hut-cat-generation-deadlock.patch +++ b/patches/server/0666-Fix-swamp-hut-cat-generation-deadlock.patch @@ -10,10 +10,10 @@ indefinitely. Instead of using the world state, we use the already supplied ServerLevelAccessor which will always have the chunk available. diff --git a/src/main/java/net/minecraft/world/entity/animal/Cat.java b/src/main/java/net/minecraft/world/entity/animal/Cat.java -index f3a991aa878f3b29fdc525ecdde6766efb5e129c..5a86530c65d7d83e4608600a04ffd931bf59dc4a 100644 +index 93d8d45a9a8108e58f3a96d77dd35c7584133835..629b282cf27806ff37d67f83d44c06a9f32a9185 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Cat.java +++ b/src/main/java/net/minecraft/world/entity/animal/Cat.java -@@ -366,7 +366,7 @@ public class Cat extends TamableAnimal implements VariantHolder { @@ -78,10 +78,10 @@ index a2bbb79f2999e719b8c80d33e530391ec3d1d2d2..8cc6022507c97af62fb2b4455198bc35 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java -index b145023308e6a2823d83db97ff2d79c38b709ef9..e6b18d7f8922cb42acb9e40bef2f71a56aea8646 100644 +index 8415f7e1f8c391961dc5b0669da1ab4f8ae4950d..fa8c7a7f71621437bec2ce69c3ad24b495ceed1d 100644 --- a/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java +++ b/src/main/java/net/minecraft/world/entity/boss/wither/WitherBoss.java -@@ -375,7 +375,7 @@ public class WitherBoss extends Monster implements RangedAttackMob { +@@ -374,7 +374,7 @@ public class WitherBoss extends Monster implements RangedAttackMob { if (WitherBoss.canDestroy(iblockdata)) { // CraftBukkit start @@ -91,10 +91,10 @@ index b145023308e6a2823d83db97ff2d79c38b709ef9..e6b18d7f8922cb42acb9e40bef2f71a5 } // CraftBukkit end diff --git a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -index 0e8349aa6cb23860a4dd884e730ac8f22d422205..48dcd2bc12ce1d08cc5195bff5460dc0dd9902d3 100644 +index 4b798695af365dc97cbbbd09f370b8fc425f9ed6..2a394381a4ad46359359ba402b65c62b331480b4 100644 --- a/src/main/java/net/minecraft/world/entity/monster/EnderMan.java +++ b/src/main/java/net/minecraft/world/entity/monster/EnderMan.java -@@ -552,7 +552,7 @@ public class EnderMan extends Monster implements NeutralMob { +@@ -551,7 +551,7 @@ public class EnderMan extends Monster implements NeutralMob { boolean flag = movingobjectpositionblock.getBlockPos().equals(blockposition); if (iblockdata.is(BlockTags.ENDERMAN_HOLDABLE) && flag) { @@ -104,10 +104,10 @@ index 0e8349aa6cb23860a4dd884e730ac8f22d422205..48dcd2bc12ce1d08cc5195bff5460dc0 world.gameEvent((Holder) GameEvent.BLOCK_DESTROY, blockposition, GameEvent.Context.of(this.enderman, iblockdata)); this.enderman.setCarriedBlock(iblockdata.getBlock().defaultBlockState()); 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 c661ae4e5c07494c7de852cc8d01f0f9839c1590..c96fbfe448b3e7b722a8db0e1688276776abd94e 100644 +index 772476d44ee72aed1ba35d10fe51f0ffda34d3f8..cfc28828a5b81563a826ae6045553e7350f67986 100644 --- a/src/main/java/net/minecraft/world/entity/monster/Ravager.java +++ b/src/main/java/net/minecraft/world/entity/monster/Ravager.java -@@ -165,7 +165,7 @@ public class Ravager extends Raider { +@@ -162,7 +162,7 @@ public class Ravager extends Raider { if (block instanceof LeavesBlock) { // CraftBukkit start diff --git a/patches/unapplied/server/0676-fix-player-loottables-running-when-mob-loot-gamerule.patch b/patches/server/0675-fix-player-loottables-running-when-mob-loot-gamerule.patch similarity index 89% rename from patches/unapplied/server/0676-fix-player-loottables-running-when-mob-loot-gamerule.patch rename to patches/server/0675-fix-player-loottables-running-when-mob-loot-gamerule.patch index 7cf6d23322..2bc0c5993d 100644 --- a/patches/unapplied/server/0676-fix-player-loottables-running-when-mob-loot-gamerule.patch +++ b/patches/server/0675-fix-player-loottables-running-when-mob-loot-gamerule.patch @@ -5,10 +5,10 @@ Subject: [PATCH] fix player loottables running when mob loot gamerule is false diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java -index 20592a302333f1927ca088e8002cd76a8b10ca17..705727a13c12a26d669cebe9ec2fb9d100b59e1d 100644 +index e2a8e0291a5c0c00d7d6135a0d34fb8bab7b4cd5..15158bec7e2ca90b45347ba09cf17f25e919f9cf 100644 --- a/src/main/java/net/minecraft/server/level/ServerPlayer.java +++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java -@@ -1218,12 +1218,14 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { +@@ -1215,12 +1215,14 @@ public class ServerPlayer extends net.minecraft.world.entity.player.Player { } } } diff --git a/patches/unapplied/server/0677-Ensure-entity-passenger-world-matches-ridden-entity.patch b/patches/server/0676-Ensure-entity-passenger-world-matches-ridden-entity.patch similarity index 85% rename from patches/unapplied/server/0677-Ensure-entity-passenger-world-matches-ridden-entity.patch rename to patches/server/0676-Ensure-entity-passenger-world-matches-ridden-entity.patch index 9e576da81a..df6388cd5f 100644 --- a/patches/unapplied/server/0677-Ensure-entity-passenger-world-matches-ridden-entity.patch +++ b/patches/server/0676-Ensure-entity-passenger-world-matches-ridden-entity.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Ensure entity passenger world matches ridden entity Bad plugins doing this would cause some obvious problems... diff --git a/src/main/java/net/minecraft/world/entity/Entity.java b/src/main/java/net/minecraft/world/entity/Entity.java -index 775243c5a2c44300c00f4f674f40d6793f5a797d..4f9071362d556f6f7fd5948dab99e2d260ec60fd 100644 +index 4784bfb23a7e0004287f89213d50bcfaaaed9e38..f2572fec8989911803cbcf1110e670b005ae29b0 100644 --- a/src/main/java/net/minecraft/world/entity/Entity.java +++ b/src/main/java/net/minecraft/world/entity/Entity.java -@@ -2803,7 +2803,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess +@@ -2833,7 +2833,7 @@ public abstract class Entity implements SyncedDataHolder, Nameable, EntityAccess } public boolean startRiding(Entity entity, boolean force) { diff --git a/patches/unapplied/server/0678-Cache-resource-keys-and-optimize-reference-Holder-ta.patch b/patches/server/0677-Cache-resource-keys-and-optimize-reference-Holder-ta.patch similarity index 100% rename from patches/unapplied/server/0678-Cache-resource-keys-and-optimize-reference-Holder-ta.patch rename to patches/server/0677-Cache-resource-keys-and-optimize-reference-Holder-ta.patch diff --git a/patches/unapplied/server/0679-Allow-changing-the-EnderDragon-podium.patch b/patches/server/0678-Allow-changing-the-EnderDragon-podium.patch similarity index 98% rename from patches/unapplied/server/0679-Allow-changing-the-EnderDragon-podium.patch rename to patches/server/0678-Allow-changing-the-EnderDragon-podium.patch index 5cbce2b4ec..0676f66fd1 100644 --- a/patches/unapplied/server/0679-Allow-changing-the-EnderDragon-podium.patch +++ b/patches/server/0678-Allow-changing-the-EnderDragon-podium.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Allow changing the EnderDragon podium 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 25d2226c2a5dda411a9e35f7a0e3ab183110c227..38456d3901e495e4c401cff0de7ae38544c1b2a7 100644 +index f5aee15f80e226c8d59e66b1a53f529e2fb524a5..037b261a40a800f6d5e9ecd22e230d030b797958 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 @@ -104,6 +104,10 @@ public class EnderDragon extends Mob implements Enemy { @@ -39,7 +39,7 @@ index 25d2226c2a5dda411a9e35f7a0e3ab183110c227..38456d3901e495e4c401cff0de7ae385 @Override public boolean isFlapping() { float f = Mth.cos(this.flapTime * 6.2831855F); -@@ -988,7 +1005,7 @@ public class EnderDragon extends Mob implements Enemy { +@@ -1002,7 +1019,7 @@ public class EnderDragon extends Mob implements Enemy { vec3d = this.getViewVector(tickDelta); } } else { diff --git a/patches/unapplied/server/0680-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch b/patches/server/0679-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch similarity index 100% rename from patches/unapplied/server/0680-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch rename to patches/server/0679-Fix-NBT-pieces-overriding-a-block-entity-during-worl.patch diff --git a/patches/unapplied/server/0682-Use-username-instead-of-display-name-in-PlayerList-g.patch b/patches/server/0680-Use-username-instead-of-display-name-in-PlayerList-g.patch similarity index 100% rename from patches/unapplied/server/0682-Use-username-instead-of-display-name-in-PlayerList-g.patch rename to patches/server/0680-Use-username-instead-of-display-name-in-PlayerList-g.patch diff --git a/patches/unapplied/server/0683-Expand-PlayerItemDamageEvent.patch b/patches/server/0681-Expand-PlayerItemDamageEvent.patch similarity index 90% rename from patches/unapplied/server/0683-Expand-PlayerItemDamageEvent.patch rename to patches/server/0681-Expand-PlayerItemDamageEvent.patch index 9659c38659..85a05db466 100644 --- a/patches/unapplied/server/0683-Expand-PlayerItemDamageEvent.patch +++ b/patches/server/0681-Expand-PlayerItemDamageEvent.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Expand PlayerItemDamageEvent diff --git a/src/main/java/net/minecraft/world/item/ItemStack.java b/src/main/java/net/minecraft/world/item/ItemStack.java -index a100c7a53b4b1dac0a01ee65418d44297bcdb93f..bcb3a45166e5dd75dd727adf92304b3a75399c8d 100644 +index 18f84d54ec72debec652adb22067e11aa058b238..679112d1622744680b7d3c7d296acafac019d00a 100644 --- a/src/main/java/net/minecraft/world/item/ItemStack.java +++ b/src/main/java/net/minecraft/world/item/ItemStack.java -@@ -693,10 +693,11 @@ public final class ItemStack implements DataComponentHolder { +@@ -698,10 +698,11 @@ public final class ItemStack implements DataComponentHolder { } public void hurtAndBreak(int amount, ServerLevel world, @Nullable LivingEntity player, Consumer breakCallback) { // Paper - Add EntityDamageItemEvent diff --git a/patches/unapplied/server/0684-WorldCreator-keepSpawnLoaded.patch b/patches/server/0682-WorldCreator-keepSpawnLoaded.patch similarity index 100% rename from patches/unapplied/server/0684-WorldCreator-keepSpawnLoaded.patch rename to patches/server/0682-WorldCreator-keepSpawnLoaded.patch diff --git a/patches/unapplied/server/0685-Fix-CME-in-CraftPersistentDataTypeRegistry.patch b/patches/server/0683-Fix-CME-in-CraftPersistentDataTypeRegistry.patch similarity index 100% rename from patches/unapplied/server/0685-Fix-CME-in-CraftPersistentDataTypeRegistry.patch rename to patches/server/0683-Fix-CME-in-CraftPersistentDataTypeRegistry.patch diff --git a/patches/unapplied/server/0686-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch b/patches/server/0684-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch similarity index 97% rename from patches/unapplied/server/0686-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch rename to patches/server/0684-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch index 3ecc56a332..105d2132f3 100644 --- a/patches/unapplied/server/0686-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch +++ b/patches/server/0684-Trigger-bee_nest_destroyed-trigger-in-the-correct-pl.patch @@ -40,7 +40,7 @@ index e000a918230187f6841b03b7b0dd73687f3cc15e..5c3e5c348e6fececccd8097355f423b9 return true; // CraftBukkit end diff --git a/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java b/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java -index 20f705c90a0a96321cfe29c0cf564013dcccd18f..d5ed53c37bba79f84b60d616887cd5176e124f10 100644 +index 4ec03b15bb8a82d92fcb2b7fef70e3c7087a9b68..3e3951cbb196b720256cfc36d6d3b91d48ce3294 100644 --- a/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java +++ b/src/main/java/net/minecraft/world/level/block/BeehiveBlock.java @@ -103,7 +103,7 @@ public class BeehiveBlock extends BaseEntityBlock { diff --git a/patches/unapplied/server/0687-Add-EntityDyeEvent-and-CollarColorable-interface.patch b/patches/server/0685-Add-EntityDyeEvent-and-CollarColorable-interface.patch similarity index 91% rename from patches/unapplied/server/0687-Add-EntityDyeEvent-and-CollarColorable-interface.patch rename to patches/server/0685-Add-EntityDyeEvent-and-CollarColorable-interface.patch index d50c55e4e3..79ada84e8b 100644 --- a/patches/unapplied/server/0687-Add-EntityDyeEvent-and-CollarColorable-interface.patch +++ b/patches/server/0685-Add-EntityDyeEvent-and-CollarColorable-interface.patch @@ -5,10 +5,10 @@ Subject: [PATCH] Add EntityDyeEvent and CollarColorable interface diff --git a/src/main/java/net/minecraft/world/entity/animal/Cat.java b/src/main/java/net/minecraft/world/entity/animal/Cat.java -index 5a86530c65d7d83e4608600a04ffd931bf59dc4a..bffc7c21727a6e5ff13a498aa51f6797e4d6d596 100644 +index 629b282cf27806ff37d67f83d44c06a9f32a9185..9a67dfe214d3eb89d1f4371e716df759651ceb1b 100644 --- a/src/main/java/net/minecraft/world/entity/animal/Cat.java +++ b/src/main/java/net/minecraft/world/entity/animal/Cat.java -@@ -387,6 +387,13 @@ public class Cat extends TamableAnimal implements VariantHolder diff --git a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java -index 72abeb4f37b70094498ed3b18e8f73346ba0ead0..0ecda05a98046938546fe7bc6cf2590c886add41 100644 +index eb1745915190e69bb467fca2dbc46e0727530ba0..692d78bff5f7f01c8545e0e1785953ccc0f00e2d 100644 --- a/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java +++ b/src/main/java/net/minecraft/world/entity/item/FallingBlockEntity.java @@ -71,6 +71,7 @@ public class FallingBlockEntity extends Entity { diff --git a/patches/unapplied/server/0693-Add-support-for-Proxy-Protocol.patch b/patches/server/0691-Add-support-for-Proxy-Protocol.patch similarity index 97% rename from patches/unapplied/server/0693-Add-support-for-Proxy-Protocol.patch rename to patches/server/0691-Add-support-for-Proxy-Protocol.patch index 6387bf34f6..7486b23586 100644 --- a/patches/unapplied/server/0693-Add-support-for-Proxy-Protocol.patch +++ b/patches/server/0691-Add-support-for-Proxy-Protocol.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Add support for Proxy Protocol diff --git a/build.gradle.kts b/build.gradle.kts -index d253682a020cc5cb41c9fdae48adf5c85258be62..9b514a9aa1d386481a1ee5077178564cd569117c 100644 +index 3be55cc6e95c02fb43d6e1cd13d05e4e4857ac6b..eaccf005560af84beb98065ea4ac0adaef71768e 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -41,6 +41,7 @@ dependencies { @@ -14,7 +14,7 @@ index d253682a020cc5cb41c9fdae48adf5c85258be62..9b514a9aa1d386481a1ee5077178564c alsoShade(log4jPlugins.output) + implementation("io.netty:netty-codec-haproxy:4.1.97.Final") // Paper - Add support for proxy protocol // Paper end - implementation("org.apache.logging.log4j:log4j-iostreams:2.22.1") // Paper - remove exclusion + implementation("org.apache.logging.log4j:log4j-iostreams:2.24.1") // Paper - remove exclusion implementation("org.ow2.asm:asm-commons:9.7.1") diff --git a/src/main/java/net/minecraft/server/network/ServerConnectionListener.java b/src/main/java/net/minecraft/server/network/ServerConnectionListener.java index c63c194c44646e6bc1a59426552787011fc2ced5..c62df32af11636ad408b584fcc590590ce4fb0d0 100644 diff --git a/patches/unapplied/server/0694-Fix-OfflinePlayer-getBedSpawnLocation.patch b/patches/server/0692-Fix-OfflinePlayer-getBedSpawnLocation.patch similarity index 100% rename from patches/unapplied/server/0694-Fix-OfflinePlayer-getBedSpawnLocation.patch rename to patches/server/0692-Fix-OfflinePlayer-getBedSpawnLocation.patch diff --git a/patches/unapplied/server/0695-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch b/patches/server/0693-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch similarity index 100% rename from patches/unapplied/server/0695-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch rename to patches/server/0693-Fix-FurnaceInventory-for-smokers-and-blast-furnaces.patch diff --git a/patches/unapplied/server/0474-Add-PlayerStonecutterRecipeSelectEvent.patch b/patches/unapplied/server/0474-Add-PlayerStonecutterRecipeSelectEvent.patch deleted file mode 100644 index 8a5e50313f..0000000000 --- a/patches/unapplied/server/0474-Add-PlayerStonecutterRecipeSelectEvent.patch +++ /dev/null @@ -1,57 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Jake Potrebic -Date: Fri, 27 Nov 2020 17:14:27 -0800 -Subject: [PATCH] Add PlayerStonecutterRecipeSelectEvent - -Co-Authored-By: MiniDigger - -diff --git a/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java b/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java -index 97837d1baf6b929a50e5562ef466050e70c2c8b1..a93870952e2ef674028b8a20aa52a685c743e7ea 100644 ---- a/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java -+++ b/src/main/java/net/minecraft/world/inventory/StonecutterMenu.java -@@ -64,7 +64,7 @@ public class StonecutterMenu extends AbstractContainerMenu { - - public StonecutterMenu(int syncId, Inventory playerInventory, final ContainerLevelAccess context) { - super(MenuType.STONECUTTER, syncId); -- this.selectedRecipeIndex = DataSlot.standalone(); -+ this.selectedRecipeIndex = DataSlot.shared(new int[1], 0); // Paper - Add PlayerStonecutterRecipeSelectEvent - this.recipesForInput = SelectableRecipe.SingleInputSet.empty(); - this.input = ItemStack.EMPTY; - this.slotUpdateListener = () -> { -@@ -150,8 +150,34 @@ public class StonecutterMenu extends AbstractContainerMenu { - @Override - public boolean clickMenuButton(net.minecraft.world.entity.player.Player player, int id) { - if (this.isValidRecipeIndex(id)) { -- this.selectedRecipeIndex.set(id); -- this.setupResultSlot(id); -+ // Paper start - Add PlayerStonecutterRecipeSelectEvent -+ int recipeIndex = id; -+ this.selectedRecipeIndex.set(recipeIndex); -+ this.selectedRecipeIndex.checkAndClearUpdateFlag(); // mark as changed -+ paperEventBlock: if (this.isValidRecipeIndex(id)) { -+ final Optional> recipe = this.recipesForInput.entries().get(id).recipe().recipe(); -+ if (recipe.isEmpty()) break paperEventBlock; // The recipe selected does not have an actual server recipe (presumably its the empty one). Cannot call the event, just break. -+ -+ io.papermc.paper.event.player.PlayerStonecutterRecipeSelectEvent event = new io.papermc.paper.event.player.PlayerStonecutterRecipeSelectEvent((Player) player.getBukkitEntity(), getBukkitView().getTopInventory(), (org.bukkit.inventory.StonecuttingRecipe) recipe.get().toBukkitRecipe()); -+ if (!event.callEvent()) { -+ player.containerMenu.sendAllDataToRemote(); -+ return false; -+ } -+ -+ net.minecraft.resources.ResourceLocation key = org.bukkit.craftbukkit.util.CraftNamespacedKey.toMinecraft(event.getStonecuttingRecipe().getKey()); -+ if (!recipe.get().id().location().equals(key)) { // If the recipe did NOT stay the same -+ for (int newRecipeIndex = 0; newRecipeIndex < this.recipesForInput.entries().size(); newRecipeIndex++) { -+ if (this.recipesForInput.entries().get(newRecipeIndex).recipe().recipe().filter(r -> r.id().location().equals(key)).isPresent()) { -+ recipeIndex = newRecipeIndex; -+ break; -+ } -+ } -+ } -+ } -+ player.containerMenu.sendAllDataToRemote(); -+ this.selectedRecipeIndex.set(recipeIndex); // set new index, so that listeners can read it -+ this.setupResultSlot(recipeIndex); -+ // Paper end - Add PlayerStonecutterRecipeSelectEvent - } - - return true; diff --git a/patches/unapplied/server/0681-Prevent-tile-entity-copies-loading-chunks.patch b/patches/unapplied/server/0681-Prevent-tile-entity-copies-loading-chunks.patch deleted file mode 100644 index d690eb7288..0000000000 --- a/patches/unapplied/server/0681-Prevent-tile-entity-copies-loading-chunks.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 -From: Shane Freeder -Date: Wed, 13 Apr 2022 08:25:42 +0100 -Subject: [PATCH] Prevent tile entity copies loading chunks - - -diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -index 9656e15aa15735e9bd6ac4e2ad7aa8aa66140b9a..bc8f9bd50de3894e6262e13ed55252c98f22ed8a 100644 ---- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java -@@ -3245,7 +3245,12 @@ public class ServerGamePacketListenerImpl extends ServerCommonPacketListenerImpl - BlockPos blockposition = BlockEntity.getPosFromTag(customdata.getUnsafe()); - - if (this.player.level().isLoaded(blockposition)) { -- BlockEntity tileentity = this.player.level().getBlockEntity(blockposition); -+ // Paper start - Prevent tile entity copies loading chunks -+ BlockEntity tileentity = null; -+ if (this.player.distanceToSqr(blockposition.getX(), blockposition.getY(), blockposition.getZ()) < 32 * 32 && this.player.serverLevel().isLoadedAndInBounds(blockposition)) { -+ tileentity = this.player.level().getBlockEntity(blockposition); -+ } -+ // Paper end - Prevent tile entity copies loading chunks - - if (tileentity != null) { - tileentity.saveToItem(itemstack, this.player.level().registryAccess());