aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorProf-Bloodstone <[email protected]>2020-07-23 01:35:44 +0200
committerGitHub <[email protected]>2020-07-22 19:35:44 -0400
commit42433c2626c21a6bf22b958341e2f076dfb20dd0 (patch)
tree900745248d46e71ca8a3704fa4fd519e4a893de8
parente5ede546a2153d2d022f6374673ab6e8d359c7e4 (diff)
downloadPaper-42433c2626c21a6bf22b958341e2f076dfb20dd0.tar.gz
Paper-42433c2626c21a6bf22b958341e2f076dfb20dd0.zip
Updated Upstream (Bukkit/CraftBukkit) (#3980)
Upstream has released updates that appears to apply and compile correctly. This update has not been tested by PaperMC and as with ANY update, please do your own testing Bukkit Changes: 09f10fd9 SPIGOT-5950: Add PrepareSmithingEvent event CraftBukkit Changes: 7c03d257 SPIGOT-6011: End Gateways do not work on Non-Main End Worlds d492e363 SPIGOT-6015: Small Armor Stand doesn't drop items 5db13eea SPIGOT-5950: Add PrepareSmithingEvent event
-rw-r--r--Spigot-API-Patches/0001-POM-changes.patch2
-rw-r--r--Spigot-API-Patches/0002-Add-FastUtil-to-Bukkit.patch2
-rw-r--r--Spigot-API-Patches/0015-Graduate-bungeecord-chat-API-from-spigot-subclasses.patch4
-rw-r--r--Spigot-API-Patches/0022-Use-ASM-for-event-executors.patch2
-rw-r--r--Spigot-API-Patches/0066-Allow-plugins-to-use-SLF4J-for-logging.patch2
-rw-r--r--Spigot-API-Patches/0069-Expose-client-protocol-version-and-virtual-host.patch2
-rw-r--r--Spigot-API-Patches/0088-getPlayerUniqueId-API.patch4
-rw-r--r--Spigot-API-Patches/0091-Add-Ban-Methods-to-Player-Objects.patch2
-rw-r--r--Spigot-API-Patches/0118-Add-an-asterisk-to-legacy-API-plugins.patch2
-rw-r--r--Spigot-API-Patches/0125-Expand-Location-Manipulation-API.patch2
-rw-r--r--Spigot-API-Patches/0136-Allow-Blocks-to-be-accessed-via-a-long-key.patch2
-rw-r--r--Spigot-API-Patches/0138-isChunkGenerated-API.patch2
-rw-r--r--Spigot-API-Patches/0180-Add-Heightmap-API.patch2
-rw-r--r--Spigot-API-Patches/0200-Expose-game-version.patch4
-rw-r--r--Spigot-API-Patches/0216-Add-PrepareResultEvent-PrepareGrindstoneEvent.patch58
-rw-r--r--Spigot-Server-Patches/0004-MC-Utils.patch8
-rw-r--r--Spigot-Server-Patches/0009-Timings-v2.patch16
-rw-r--r--Spigot-Server-Patches/0015-Allow-for-toggling-of-spawn-chunks.patch2
-rw-r--r--Spigot-Server-Patches/0017-Show-Paper-in-client-crashes-server-lists-and-Mojang.patch2
-rw-r--r--Spigot-Server-Patches/0025-Entity-Origin-API.patch2
-rw-r--r--Spigot-Server-Patches/0026-Prevent-tile-entity-and-entity-crashes.patch2
-rw-r--r--Spigot-Server-Patches/0030-Configurable-end-credits.patch2
-rw-r--r--Spigot-Server-Patches/0032-Optimize-explosions.patch2
-rw-r--r--Spigot-Server-Patches/0034-Disable-thunder.patch2
-rw-r--r--Spigot-Server-Patches/0035-Disable-ice-and-snow.patch2
-rw-r--r--Spigot-Server-Patches/0039-Configurable-container-update-tick-rate.patch2
-rw-r--r--Spigot-Server-Patches/0041-Disable-spigot-tick-limiters.patch2
-rw-r--r--Spigot-Server-Patches/0042-Add-PlayerInitialSpawnEvent.patch2
-rw-r--r--Spigot-Server-Patches/0044-Ensure-commands-are-not-ran-async.patch2
-rw-r--r--Spigot-Server-Patches/0050-Change-implementation-of-tile-entity-removal-list.patch2
-rw-r--r--Spigot-Server-Patches/0051-Add-configurable-portal-search-radius.patch2
-rw-r--r--Spigot-Server-Patches/0052-Add-velocity-warnings.patch2
-rw-r--r--Spigot-Server-Patches/0054-Add-exception-reporting-event.patch2
-rw-r--r--Spigot-Server-Patches/0060-Default-loading-permissions.yml-before-plugins.patch2
-rw-r--r--Spigot-Server-Patches/0062-Remove-Metadata-on-reload.patch2
-rw-r--r--Spigot-Server-Patches/0063-Handle-Item-Meta-Inconsistencies.patch4
-rw-r--r--Spigot-Server-Patches/0065-Add-World-Util-Methods.patch4
-rw-r--r--Spigot-Server-Patches/0066-Custom-replacement-for-eaten-items.patch6
-rw-r--r--Spigot-Server-Patches/0067-handle-NaN-health-absorb-values-and-repair-bad-data.patch4
-rw-r--r--Spigot-Server-Patches/0070-Configurable-spawn-chances-for-skeleton-horses.patch2
-rw-r--r--Spigot-Server-Patches/0071-Optimize-isValidLocation-getType-and-getBlockData-fo.patch2
-rw-r--r--Spigot-Server-Patches/0072-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch2
-rw-r--r--Spigot-Server-Patches/0073-Entity-AddTo-RemoveFrom-World-Events.patch2
-rw-r--r--Spigot-Server-Patches/0079-Fix-reducedDebugInfo-not-initialized-on-client.patch2
-rw-r--r--Spigot-Server-Patches/0081-Fix-Cancelling-BlockPlaceEvent-triggering-physics.patch2
-rw-r--r--Spigot-Server-Patches/0085-Remove-unused-World-Tile-Entity-List.patch2
-rw-r--r--Spigot-Server-Patches/0087-Configurable-Player-Collision.patch2
-rw-r--r--Spigot-Server-Patches/0091-Implement-PlayerLocaleChangeEvent.patch2
-rw-r--r--Spigot-Server-Patches/0095-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch2
-rw-r--r--Spigot-Server-Patches/0102-Faster-redstone-torch-rapid-clock-removal.patch2
-rw-r--r--Spigot-Server-Patches/0103-Add-server-name-parameter.patch2
-rw-r--r--Spigot-Server-Patches/0105-Fix-Double-World-Add-issues.patch2
-rw-r--r--Spigot-Server-Patches/0112-Chunk-registration-fixes.patch2
-rw-r--r--Spigot-Server-Patches/0114-Auto-fix-bad-Y-levels-on-player-login.patch2
-rw-r--r--Spigot-Server-Patches/0116-Add-EntityZapEvent.patch4
-rw-r--r--Spigot-Server-Patches/0118-Cache-user-authenticator-threads.patch2
-rw-r--r--Spigot-Server-Patches/0121-Add-source-to-PlayerExpChangeEvent.patch4
-rw-r--r--Spigot-Server-Patches/0123-Add-ProjectileCollideEvent.patch4
-rw-r--r--Spigot-Server-Patches/0125-Optimize-World.isLoaded-BlockPosition-Z.patch2
-rw-r--r--Spigot-Server-Patches/0128-Optimize-ItemStack.isEmpty.patch2
-rw-r--r--Spigot-Server-Patches/0130-Properly-fix-item-duplication-bug.patch2
-rw-r--r--Spigot-Server-Patches/0134-Provide-E-TE-Chunk-count-stat-methods.patch2
-rw-r--r--Spigot-Server-Patches/0135-Enforce-Sync-Player-Saves.patch2
-rw-r--r--Spigot-Server-Patches/0137-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch6
-rw-r--r--Spigot-Server-Patches/0138-Cap-Entity-Collisions.patch4
-rw-r--r--Spigot-Server-Patches/0143-Add-system-property-to-disable-book-size-limits.patch2
-rw-r--r--Spigot-Server-Patches/0146-Use-TerminalConsoleAppender-for-console-improvements.patch6
-rw-r--r--Spigot-Server-Patches/0151-Add-UnknownCommandEvent.patch2
-rw-r--r--Spigot-Server-Patches/0160-ProfileWhitelistVerifyEvent.patch2
-rw-r--r--Spigot-Server-Patches/0164-Fix-MC-117075-TE-Unload-Lag-Spike.patch2
-rw-r--r--Spigot-Server-Patches/0173-Expose-client-protocol-version-and-virtual-host.patch2
-rw-r--r--Spigot-Server-Patches/0175-Send-attack-SoundEffects-only-to-players-who-can-see.patch2
-rw-r--r--Spigot-Server-Patches/0176-Option-for-maximum-exp-value-when-merging-orbs.patch4
-rw-r--r--Spigot-Server-Patches/0177-Add-PlayerArmorChangeEvent.patch4
-rw-r--r--Spigot-Server-Patches/0179-use-CB-BlockState-implementations-for-captured-block.patch2
-rw-r--r--Spigot-Server-Patches/0184-ExperienceOrbMergeEvent.patch4
-rw-r--r--Spigot-Server-Patches/0185-Ability-to-apply-mending-to-XP-API.patch2
-rw-r--r--Spigot-Server-Patches/0188-PlayerNaturallySpawnCreaturesEvent.patch2
-rw-r--r--Spigot-Server-Patches/0192-Add-ArmorStand-Item-Meta.patch2
-rw-r--r--Spigot-Server-Patches/0202-Player.setPlayerProfile-API.patch2
-rw-r--r--Spigot-Server-Patches/0208-Flag-to-disable-the-channel-limit.patch2
-rw-r--r--Spigot-Server-Patches/0214-Block-Enderpearl-Travel-Exploit.patch2
-rw-r--r--Spigot-Server-Patches/0215-Expand-World.spawnParticle-API-and-add-Builder.patch2
-rw-r--r--Spigot-Server-Patches/0219-Allow-spawning-Item-entities-with-World.spawnEntity.patch2
-rw-r--r--Spigot-Server-Patches/0221-ItemStack-getMaxItemUseDuration.patch2
-rw-r--r--Spigot-Server-Patches/0227-Make-shield-blocking-delay-configurable.patch6
-rw-r--r--Spigot-Server-Patches/0228-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch4
-rw-r--r--Spigot-Server-Patches/0231-Implement-EntityKnockbackByEntityEvent.patch6
-rw-r--r--Spigot-Server-Patches/0232-Expand-Explosions-API.patch2
-rw-r--r--Spigot-Server-Patches/0233-LivingEntity-Hand-Raised-Item-Use-API.patch4
-rw-r--r--Spigot-Server-Patches/0236-Implement-World.getEntity-UUID-API.patch2
-rw-r--r--Spigot-Server-Patches/0237-InventoryCloseEvent-Reason-API.patch6
-rw-r--r--Spigot-Server-Patches/0242-Re-add-vanilla-entity-warnings-for-duplicates.patch2
-rw-r--r--Spigot-Server-Patches/0246-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch2
-rw-r--r--Spigot-Server-Patches/0251-Option-to-prevent-armor-stands-from-doing-entity-loo.patch2
-rw-r--r--Spigot-Server-Patches/0252-Vanished-players-don-t-have-rights.patch8
-rw-r--r--Spigot-Server-Patches/0257-Prevent-Saving-Bad-entities-to-chunks.patch2
-rw-r--r--Spigot-Server-Patches/0259-Ignore-Dead-Entities-in-entityList-iteration.patch2
-rw-r--r--Spigot-Server-Patches/0264-Add-hand-to-bucket-events.patch10
-rw-r--r--Spigot-Server-Patches/0266-Fix-client-rendering-skulls-from-same-user.patch2
-rw-r--r--Spigot-Server-Patches/0267-Add-Early-Warning-Feature-to-WatchDog.patch2
-rw-r--r--Spigot-Server-Patches/0269-Use-ConcurrentHashMap-in-JsonList.patch2
-rw-r--r--Spigot-Server-Patches/0272-Allow-disabling-armour-stand-ticking.patch4
-rw-r--r--Spigot-Server-Patches/0283-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch2
-rw-r--r--Spigot-Server-Patches/0284-Add-ray-tracing-methods-to-LivingEntity.patch4
-rw-r--r--Spigot-Server-Patches/0285-Expose-attack-cooldown-methods-for-Player.patch2
-rw-r--r--Spigot-Server-Patches/0286-Improve-death-events.patch38
-rw-r--r--Spigot-Server-Patches/0287-Allow-chests-to-be-placed-with-NBT-data.patch2
-rw-r--r--Spigot-Server-Patches/0290-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch2
-rw-r--r--Spigot-Server-Patches/0301-Add-sun-related-API.patch2
-rw-r--r--Spigot-Server-Patches/0303-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch2
-rw-r--r--Spigot-Server-Patches/0304-Call-player-spectator-target-events-and-improve-impl.patch2
-rw-r--r--Spigot-Server-Patches/0305-Add-Velocity-IP-Forwarding-Support.patch2
-rw-r--r--Spigot-Server-Patches/0310-Reset-players-airTicks-on-respawn.patch2
-rw-r--r--Spigot-Server-Patches/0322-force-entity-dismount-during-teleportation.patch6
-rw-r--r--Spigot-Server-Patches/0326-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch2
-rw-r--r--Spigot-Server-Patches/0328-Workaround-for-vehicle-tracking-issue-on-disconnect.patch2
-rw-r--r--Spigot-Server-Patches/0330-Block-Entity-remove-from-being-called-on-Players.patch2
-rw-r--r--Spigot-Server-Patches/0331-BlockDestroyEvent.patch2
-rw-r--r--Spigot-Server-Patches/0338-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch2
-rw-r--r--Spigot-Server-Patches/0341-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch2
-rw-r--r--Spigot-Server-Patches/0342-Add-LivingEntity-getTargetEntity.patch4
-rw-r--r--Spigot-Server-Patches/0344-Entity-getEntitySpawnReason.patch4
-rw-r--r--Spigot-Server-Patches/0346-Implement-PlayerPostRespawnEvent.patch2
-rw-r--r--Spigot-Server-Patches/0350-PlayerDeathEvent-getItemsToKeep.patch2
-rw-r--r--Spigot-Server-Patches/0351-Optimize-Captured-TileEntity-Lookup.patch2
-rw-r--r--Spigot-Server-Patches/0352-Add-Heightmap-API.patch4
-rw-r--r--Spigot-Server-Patches/0354-Per-Player-View-Distance-API-placeholders.patch2
-rw-r--r--Spigot-Server-Patches/0358-Fix-issues-with-entity-loss-due-to-unloaded-chunks.patch2
-rw-r--r--Spigot-Server-Patches/0359-Duplicate-UUID-Resolve-Option.patch2
-rw-r--r--Spigot-Server-Patches/0360-improve-CraftWorld-isChunkLoaded.patch2
-rw-r--r--Spigot-Server-Patches/0361-Configurable-Keep-Spawn-Loaded-range-per-world.patch2
-rw-r--r--Spigot-Server-Patches/0367-Fix-World-isChunkGenerated-calls.patch2
-rw-r--r--Spigot-Server-Patches/0371-Anti-Xray.patch4
-rw-r--r--Spigot-Server-Patches/0373-Configurable-projectile-relative-velocity.patch2
-rw-r--r--Spigot-Server-Patches/0374-Mark-entities-as-being-ticked-when-notifying-navigat.patch2
-rw-r--r--Spigot-Server-Patches/0378-Use-getChunkIfLoadedImmediately-in-places.patch4
-rw-r--r--Spigot-Server-Patches/0379-Reduce-sync-loads.patch4
-rw-r--r--Spigot-Server-Patches/0382-Fix-MC-158900.patch2
-rw-r--r--Spigot-Server-Patches/0383-implement-optional-per-player-mob-spawns.patch4
-rw-r--r--Spigot-Server-Patches/0384-Prevent-consuming-the-wrong-itemstack.patch8
-rw-r--r--Spigot-Server-Patches/0390-Fix-spawning-of-hanging-entities-that-are-not-ItemFr.patch2
-rw-r--r--Spigot-Server-Patches/0392-Fix-stuck-in-sneak-when-changing-worlds-MC-10657.patch4
-rw-r--r--Spigot-Server-Patches/0394-Fix-AssertionError-when-player-hand-set-to-empty-typ.patch4
-rw-r--r--Spigot-Server-Patches/0399-Optimize-Hoppers.patch6
-rw-r--r--Spigot-Server-Patches/0400-PlayerDeathEvent-shouldDropExperience.patch2
-rw-r--r--Spigot-Server-Patches/0404-Optimise-IEntityAccess-getPlayerByUUID.patch2
-rw-r--r--Spigot-Server-Patches/0406-Lag-compensate-eating.patch12
-rw-r--r--Spigot-Server-Patches/0409-Entity-Activation-Range-2.0.patch2
-rw-r--r--Spigot-Server-Patches/0411-Tracking-Range-Improvements.patch2
-rw-r--r--Spigot-Server-Patches/0414-Optimise-getChunkAt-calls-for-loaded-chunks.patch2
-rw-r--r--Spigot-Server-Patches/0415-Allow-overriding-the-java-version-check.patch2
-rw-r--r--Spigot-Server-Patches/0417-Optimise-random-block-ticking.patch2
-rw-r--r--Spigot-Server-Patches/0418-Entity-Jump-API.patch4
-rw-r--r--Spigot-Server-Patches/0421-add-hand-to-BlockMultiPlaceEvent.patch4
-rw-r--r--Spigot-Server-Patches/0427-Optimise-TickListServer-by-rewriting-it.patch2
-rw-r--r--Spigot-Server-Patches/0428-Pillager-patrol-spawn-settings-and-per-player-option.patch2
-rw-r--r--Spigot-Server-Patches/0429-Ensure-Entity-is-never-double-registered.patch2
-rw-r--r--Spigot-Server-Patches/0430-Fix-unregistering-entities-from-unloading-chunks.patch2
-rw-r--r--Spigot-Server-Patches/0433-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch2
-rw-r--r--Spigot-Server-Patches/0434-Optimize-Collision-to-not-load-chunks.patch2
-rw-r--r--Spigot-Server-Patches/0435-Don-t-tick-dead-players.patch2
-rw-r--r--Spigot-Server-Patches/0437-Optimize-PlayerChunkMap-memory-use-for-visibleChunks.patch4
-rw-r--r--Spigot-Server-Patches/0439-Mid-Tick-Chunk-Tasks-Speed-up-processing-of-chunk-lo.patch2
-rw-r--r--Spigot-Server-Patches/0440-Don-t-move-existing-players-to-world-spawn.patch4
-rw-r--r--Spigot-Server-Patches/0443-Add-Raw-Byte-ItemStack-Serialization.patch2
-rw-r--r--Spigot-Server-Patches/0445-Delay-unsafe-actions-until-after-entity-ticking-is-d.patch2
-rw-r--r--Spigot-Server-Patches/0452-Prevent-opening-inventories-when-frozen.patch2
-rw-r--r--Spigot-Server-Patches/0454-Don-t-run-entity-collision-code-if-not-needed.patch4
-rw-r--r--Spigot-Server-Patches/0455-Optimise-entity-hard-collision-checking.patch2
-rw-r--r--Spigot-Server-Patches/0458-Implement-Player-Client-Options-API.patch2
-rw-r--r--Spigot-Server-Patches/0459-Fix-Chunk-Post-Processing-deadlock-risk.patch2
-rw-r--r--Spigot-Server-Patches/0461-Broadcast-join-message-to-console.patch2
-rw-r--r--Spigot-Server-Patches/0462-Fix-Longstanding-Broken-behavior-of-PlayerJoinEvent.patch6
-rw-r--r--Spigot-Server-Patches/0463-Load-Chunks-for-Login-Asynchronously.patch4
-rw-r--r--Spigot-Server-Patches/0465-Add-PlayerAttackEntityCooldownResetEvent.patch4
-rw-r--r--Spigot-Server-Patches/0466-Allow-multiple-callbacks-to-schedule-for-Callback-Ex.patch2
-rw-r--r--Spigot-Server-Patches/0469-Fix-numerous-item-duplication-issues-and-teleport-is.patch4
-rw-r--r--Spigot-Server-Patches/0473-Expose-game-version.patch2
-rw-r--r--Spigot-Server-Patches/0476-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch2
-rw-r--r--Spigot-Server-Patches/0478-Use-distance-map-to-optimise-entity-tracker.patch2
-rw-r--r--Spigot-Server-Patches/0479-Optimize-isOutsideRange-to-use-distance-maps.patch4
-rw-r--r--Spigot-Server-Patches/0481-No-Tick-view-distance-implementation.patch6
-rw-r--r--Spigot-Server-Patches/0483-Fix-Light-Command.patch2
-rw-r--r--Spigot-Server-Patches/0488-Wait-for-Async-Tasks-during-shutdown.patch2
-rw-r--r--Spigot-Server-Patches/0490-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch2
-rw-r--r--Spigot-Server-Patches/0491-Optimize-NibbleArray-to-use-pooled-buffers.patch2
-rw-r--r--Spigot-Server-Patches/0493-Reduce-allocation-of-Vec3D-by-entity-tracker.patch2
-rw-r--r--Spigot-Server-Patches/0496-Workaround-for-Client-Lag-Spikes-MC-162253.patch2
-rw-r--r--Spigot-Server-Patches/0497-Implement-Chunk-Priority-Urgency-System-for-Chunks.patch2
-rw-r--r--Spigot-Server-Patches/0499-Optimize-sending-packets-to-nearby-locations-sounds-.patch2
-rw-r--r--Spigot-Server-Patches/0500-Improve-Chunk-Status-Transition-Speed.patch2
-rw-r--r--Spigot-Server-Patches/0503-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch2
-rw-r--r--Spigot-Server-Patches/0507-Add-Plugin-Tickets-to-API-Chunk-Methods.patch4
-rw-r--r--Spigot-Server-Patches/0525-Improve-Legacy-Component-serialization-size.patch2
-rw-r--r--Spigot-Server-Patches/0528-Convert-legacy-attributes-in-Item-Meta.patch2
-rw-r--r--Spigot-Server-Patches/0531-Support-components-in-ItemMeta.patch2
-rw-r--r--Spigot-Server-Patches/0535-Spawn-player-in-correct-world-on-login.patch2
-rw-r--r--Spigot-Server-Patches/0536-Add-PrepareResultEvent.patch25
-rw-r--r--Spigot-Server-Patches/0538-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch4
m---------work/Bukkit0
m---------work/CraftBukkit36
202 files changed, 388 insertions, 327 deletions
diff --git a/Spigot-API-Patches/0001-POM-changes.patch b/Spigot-API-Patches/0001-POM-changes.patch
index cd8c458174..61f53a53b3 100644
--- a/Spigot-API-Patches/0001-POM-changes.patch
+++ b/Spigot-API-Patches/0001-POM-changes.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] POM changes
diff --git a/pom.xml b/pom.xml
-index 274fd7d65ed48af7c4c055db0f99d1637f1af88f..14383eb14c5f3893edc7c76db90881d1abd4b675 100644
+index 10d59b211587b22f73e911fb2872df3d181a0f8a..5adaed556ff075e11ad76e70b8d7e6244e2ff405 100644
--- a/pom.xml
+++ b/pom.xml
@@ -2,34 +2,28 @@
diff --git a/Spigot-API-Patches/0002-Add-FastUtil-to-Bukkit.patch b/Spigot-API-Patches/0002-Add-FastUtil-to-Bukkit.patch
index 6fde591064..5a9a4031be 100644
--- a/Spigot-API-Patches/0002-Add-FastUtil-to-Bukkit.patch
+++ b/Spigot-API-Patches/0002-Add-FastUtil-to-Bukkit.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Add FastUtil to Bukkit
Doesn't expose to plugins, just allows Paper-API to use it for optimization
diff --git a/pom.xml b/pom.xml
-index 14383eb14c5f3893edc7c76db90881d1abd4b675..ae9179d4e3ea5608dfb9a5677de7c59c403450cc 100644
+index 5adaed556ff075e11ad76e70b8d7e6244e2ff405..e81043213ca0b56c7306be5571f0f6e542695e95 100644
--- a/pom.xml
+++ b/pom.xml
@@ -49,6 +49,12 @@
diff --git a/Spigot-API-Patches/0015-Graduate-bungeecord-chat-API-from-spigot-subclasses.patch b/Spigot-API-Patches/0015-Graduate-bungeecord-chat-API-from-spigot-subclasses.patch
index c92e655754..444a100971 100644
--- a/Spigot-API-Patches/0015-Graduate-bungeecord-chat-API-from-spigot-subclasses.patch
+++ b/Spigot-API-Patches/0015-Graduate-bungeecord-chat-API-from-spigot-subclasses.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Graduate bungeecord chat API from spigot subclasses
Change Javadoc to be accurate
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
-index b46222ed2822fea563585462e43ee73ba2bb9b37..7b1978a258cbf74983dc2512092653ed4ff64e98 100644
+index 9433934d52e637ca340934350b43d4c827ee9606..071e27179e44e2a3a33b9c4fb900378c5fd9c34f 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -274,6 +274,26 @@ public final class Bukkit {
@@ -37,7 +37,7 @@ index b46222ed2822fea563585462e43ee73ba2bb9b37..7b1978a258cbf74983dc2512092653ed
* Gets the name of the update folder. The update folder is used to safely
* update plugins at the right moment on a plugin load.
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
-index d3c498ad0e7681422ef2117be41c6603ebce0e0a..e3385abec44c603201aa37e3b3180cf88d378b52 100644
+index 620a16eaa74a31711b8598a70c9e9ed0f361ceb8..2387c04e8a4d14f04e7e4d09f7120d48a98703aa 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -225,6 +225,26 @@ public interface Server extends PluginMessageRecipient {
diff --git a/Spigot-API-Patches/0022-Use-ASM-for-event-executors.patch b/Spigot-API-Patches/0022-Use-ASM-for-event-executors.patch
index 5dd097c3b6..24339388a9 100644
--- a/Spigot-API-Patches/0022-Use-ASM-for-event-executors.patch
+++ b/Spigot-API-Patches/0022-Use-ASM-for-event-executors.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Use ASM for event executors.
Uses method handles for private or static methods.
diff --git a/pom.xml b/pom.xml
-index ae9179d4e3ea5608dfb9a5677de7c59c403450cc..a7064cc7810cd3567111a1594bd316663d516dca 100644
+index e81043213ca0b56c7306be5571f0f6e542695e95..08a1a70e2fe582e238fc9c87af69368359646231 100644
--- a/pom.xml
+++ b/pom.xml
@@ -128,6 +128,17 @@
diff --git a/Spigot-API-Patches/0066-Allow-plugins-to-use-SLF4J-for-logging.patch b/Spigot-API-Patches/0066-Allow-plugins-to-use-SLF4J-for-logging.patch
index e56e87d0da..701a4d2815 100644
--- a/Spigot-API-Patches/0066-Allow-plugins-to-use-SLF4J-for-logging.patch
+++ b/Spigot-API-Patches/0066-Allow-plugins-to-use-SLF4J-for-logging.patch
@@ -14,7 +14,7 @@ it without having to shade it in the plugin and going through
several layers of logging abstraction.
diff --git a/pom.xml b/pom.xml
-index a7064cc7810cd3567111a1594bd316663d516dca..dfc7c2f351c895a7378b13f88ca8efcaaf38d478 100644
+index 08a1a70e2fe582e238fc9c87af69368359646231..cb37aea9d7f60b54b95b5cf1798d5a6c5c0e7c14 100644
--- a/pom.xml
+++ b/pom.xml
@@ -109,6 +109,13 @@
diff --git a/Spigot-API-Patches/0069-Expose-client-protocol-version-and-virtual-host.patch b/Spigot-API-Patches/0069-Expose-client-protocol-version-and-virtual-host.patch
index a1ffa9d596..aee2cb7eb8 100644
--- a/Spigot-API-Patches/0069-Expose-client-protocol-version-and-virtual-host.patch
+++ b/Spigot-API-Patches/0069-Expose-client-protocol-version-and-virtual-host.patch
@@ -57,7 +57,7 @@ index 0000000000000000000000000000000000000000..7b2af1bd72dfbcf4e962a982940fc49b
+
+}
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index 4f419c7b07d771019ab2906d609772cc0f080b23..2079395c29854ec7e751d210a05f329f31ebb8ad 100644
+index d3347e073cdc481f90de8076c5ee3986a4ae77aa..54a8965dd4b986657a57c7d150c4314a4acee68e 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -30,7 +30,7 @@ import org.jetbrains.annotations.Nullable;
diff --git a/Spigot-API-Patches/0088-getPlayerUniqueId-API.patch b/Spigot-API-Patches/0088-getPlayerUniqueId-API.patch
index da536f8e89..65d3d31e18 100644
--- a/Spigot-API-Patches/0088-getPlayerUniqueId-API.patch
+++ b/Spigot-API-Patches/0088-getPlayerUniqueId-API.patch
@@ -9,7 +9,7 @@ In Offline Mode, will return an Offline UUID
This is a more performant way to obtain a UUID for a name than loading an OfflinePlayer
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
-index d27405a8cfa590c13f5a3976c74c05655ae1f93d..4b6b1bce3a728d74f8b791efd2d981e907e202bc 100644
+index 039c44654621c434a8cc1fa4a2dc46ede793054a..97ed7d9f6415219db4d6b0054dc3d2afeb1ce6e5 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -489,6 +489,20 @@ public final class Bukkit {
@@ -34,7 +34,7 @@ index d27405a8cfa590c13f5a3976c74c05655ae1f93d..4b6b1bce3a728d74f8b791efd2d981e9
* Gets the plugin manager for interfacing with plugins.
*
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
-index 24922e5699241e29bc615dcffadce21c89f6ff35..a2420771ca49acc08826ca60fcda7495c80cf1d5 100644
+index 5582e377bb2a85b94d0c9c2a90d5b488991af098..da9c85372605ab0d68f21bb38885eb0f4dfebded 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -416,6 +416,18 @@ public interface Server extends PluginMessageRecipient {
diff --git a/Spigot-API-Patches/0091-Add-Ban-Methods-to-Player-Objects.patch b/Spigot-API-Patches/0091-Add-Ban-Methods-to-Player-Objects.patch
index b848fef9ad..4f2dd23f37 100644
--- a/Spigot-API-Patches/0091-Add-Ban-Methods-to-Player-Objects.patch
+++ b/Spigot-API-Patches/0091-Add-Ban-Methods-to-Player-Objects.patch
@@ -74,7 +74,7 @@ index 58313929f81509030216a0e5e3869da63e11108e..6cf05fed701c67a2c797a4e0839c7958
/**
* Checks if this player is whitelisted or not
diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java
-index 505078ce7fa5fce981d26d07e61fc1e12fbed67a..2441b714d343b963c43c9f8827550e683be4a93d 100644
+index b7abe54c824662ff6f7e3928850e4c43d9edfafc..d15d659ad9c721137e8692ac6c5981dd9ddb1e70 100644
--- a/src/main/java/org/bukkit/entity/Player.java
+++ b/src/main/java/org/bukkit/entity/Player.java
@@ -3,6 +3,10 @@ package org.bukkit.entity;
diff --git a/Spigot-API-Patches/0118-Add-an-asterisk-to-legacy-API-plugins.patch b/Spigot-API-Patches/0118-Add-an-asterisk-to-legacy-API-plugins.patch
index 9c95b7231e..40cf01eecc 100644
--- a/Spigot-API-Patches/0118-Add-an-asterisk-to-legacy-API-plugins.patch
+++ b/Spigot-API-Patches/0118-Add-an-asterisk-to-legacy-API-plugins.patch
@@ -23,7 +23,7 @@ index 1b6d737046646c102b0d519ab3f67c3fbd503979..541e28a9bece0beb0c2cf02c39030840
// Paper end
}
diff --git a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
-index 4a75997f93f5c33f19200994562aaff99bdd422f..665211cb1bb27d228a43342ebca0f60e0b7f6c4b 100644
+index ba399ee5ab33b4fd8741bce53509a17b1aabc84d..cbcdca042b54531fdf45e8631c4bbe8c74f68341 100644
--- a/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
+++ b/src/main/java/org/bukkit/command/defaults/PluginsCommand.java
@@ -74,7 +74,13 @@ public class PluginsCommand extends BukkitCommand {
diff --git a/Spigot-API-Patches/0125-Expand-Location-Manipulation-API.patch b/Spigot-API-Patches/0125-Expand-Location-Manipulation-API.patch
index 9bea458013..271041f256 100644
--- a/Spigot-API-Patches/0125-Expand-Location-Manipulation-API.patch
+++ b/Spigot-API-Patches/0125-Expand-Location-Manipulation-API.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Expand Location Manipulation API
Adds set(x, y, z), add(base, x, y, z), subtract(base, x, y, z);
diff --git a/src/main/java/org/bukkit/Location.java b/src/main/java/org/bukkit/Location.java
-index ac3c8eef58872c2de840a4b7ba7d77c2e597aee0..f87ecd0a753b0f730ee33c0dd699b7388e8c6697 100644
+index af2ee43f2c5133668c18710f526a107d94a5d898..369ce9ff6c8bb97a64a8e229115564412e6e7654 100644
--- a/src/main/java/org/bukkit/Location.java
+++ b/src/main/java/org/bukkit/Location.java
@@ -546,6 +546,54 @@ public class Location implements Cloneable, ConfigurationSerializable {
diff --git a/Spigot-API-Patches/0136-Allow-Blocks-to-be-accessed-via-a-long-key.patch b/Spigot-API-Patches/0136-Allow-Blocks-to-be-accessed-via-a-long-key.patch
index 5ed1265989..3a2b88d082 100644
--- a/Spigot-API-Patches/0136-Allow-Blocks-to-be-accessed-via-a-long-key.patch
+++ b/Spigot-API-Patches/0136-Allow-Blocks-to-be-accessed-via-a-long-key.patch
@@ -18,7 +18,7 @@ Y range: [0, 1023]
X, Z range: [-67 108 864, 67 108 863]
diff --git a/src/main/java/org/bukkit/Location.java b/src/main/java/org/bukkit/Location.java
-index f87ecd0a753b0f730ee33c0dd699b7388e8c6697..07e532cde37255ffb2db368453bb69ee0a410931 100644
+index 369ce9ff6c8bb97a64a8e229115564412e6e7654..e700875beb76dadd55b585aca748338def286908 100644
--- a/src/main/java/org/bukkit/Location.java
+++ b/src/main/java/org/bukkit/Location.java
@@ -15,7 +15,6 @@ import org.jetbrains.annotations.Nullable;
diff --git a/Spigot-API-Patches/0138-isChunkGenerated-API.patch b/Spigot-API-Patches/0138-isChunkGenerated-API.patch
index 5733dadbe9..e739c0e673 100644
--- a/Spigot-API-Patches/0138-isChunkGenerated-API.patch
+++ b/Spigot-API-Patches/0138-isChunkGenerated-API.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] isChunkGenerated API
diff --git a/src/main/java/org/bukkit/Location.java b/src/main/java/org/bukkit/Location.java
-index 07e532cde37255ffb2db368453bb69ee0a410931..6e1a1124a6e528c1a94ccb1d09bc5dccf056b0b8 100644
+index e700875beb76dadd55b585aca748338def286908..9c91c49ed7302c12fcb1d8e9bc58712efc199954 100644
--- a/src/main/java/org/bukkit/Location.java
+++ b/src/main/java/org/bukkit/Location.java
@@ -3,6 +3,7 @@ package org.bukkit;
diff --git a/Spigot-API-Patches/0180-Add-Heightmap-API.patch b/Spigot-API-Patches/0180-Add-Heightmap-API.patch
index 65fbbc79ef..da24bda09e 100644
--- a/Spigot-API-Patches/0180-Add-Heightmap-API.patch
+++ b/Spigot-API-Patches/0180-Add-Heightmap-API.patch
@@ -51,7 +51,7 @@ index 0000000000000000000000000000000000000000..709e44ea1b14ab6917501c928e689cc6
+ SOLID_OR_LIQUID_NO_LEAVES;
+}
diff --git a/src/main/java/org/bukkit/Location.java b/src/main/java/org/bukkit/Location.java
-index 77d9cd0a1f54b5eb233eddbcff1bfa76bc182e9a..5904750329a5c7061de6e4fe32335b0d4e6a5e04 100644
+index d5d67b3d84cd88ed0f858497e68535ec0162c700..ec9eb042ee8354d17f8ad4230c4acc5fcb46f894 100644
--- a/src/main/java/org/bukkit/Location.java
+++ b/src/main/java/org/bukkit/Location.java
@@ -638,6 +638,33 @@ public class Location implements Cloneable, ConfigurationSerializable {
diff --git a/Spigot-API-Patches/0200-Expose-game-version.patch b/Spigot-API-Patches/0200-Expose-game-version.patch
index 50ff8c84fa..20e082dcb5 100644
--- a/Spigot-API-Patches/0200-Expose-game-version.patch
+++ b/Spigot-API-Patches/0200-Expose-game-version.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Expose game version
diff --git a/src/main/java/org/bukkit/Bukkit.java b/src/main/java/org/bukkit/Bukkit.java
-index 600334831293793840511992048c43bff1febc24..c0421b5a09c25ad4f23387b8b0e035871a9d367b 100644
+index b7d260fd7d1a869fb0d04e29012d540f49d9b82a..c020912df1625da34a9f29ee2ea74835e9ae1e79 100644
--- a/src/main/java/org/bukkit/Bukkit.java
+++ b/src/main/java/org/bukkit/Bukkit.java
@@ -118,6 +118,18 @@ public final class Bukkit {
@@ -28,7 +28,7 @@ index 600334831293793840511992048c43bff1febc24..c0421b5a09c25ad4f23387b8b0e03587
* Gets a view of all currently logged in players. This {@linkplain
* Collections#unmodifiableCollection(Collection) view} is a reused
diff --git a/src/main/java/org/bukkit/Server.java b/src/main/java/org/bukkit/Server.java
-index f44a582e954625a12b19d4e142865e5d3154edd5..0ad848c42039eeed64cc0b8372d3a9331e61d286 100644
+index 2dfecdd73f911f657ee30c4848c903c522d97bcb..13bf8dcc23986ad4f3761d9b395d278df7caa958 100644
--- a/src/main/java/org/bukkit/Server.java
+++ b/src/main/java/org/bukkit/Server.java
@@ -97,6 +97,16 @@ public interface Server extends PluginMessageRecipient {
diff --git a/Spigot-API-Patches/0216-Add-PrepareResultEvent-PrepareGrindstoneEvent.patch b/Spigot-API-Patches/0216-Add-PrepareResultEvent-PrepareGrindstoneEvent.patch
index 2497598469..5dc61d601d 100644
--- a/Spigot-API-Patches/0216-Add-PrepareResultEvent-PrepareGrindstoneEvent.patch
+++ b/Spigot-API-Patches/0216-Add-PrepareResultEvent-PrepareGrindstoneEvent.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add PrepareResultEvent / PrepareGrindstoneEvent
Adds a new event for all crafting stations that generate a result slot item
-Anvil and Grindstone now extend this event
+Anvil, Grindstone and Smithing now extend this event
Grindstone is a backwards compat from a previous PrepareGrindstoneEvent
@@ -153,3 +153,59 @@ index 77109a07f07aa6985106dc1a9ad5218f6c7f360f..f1f6f4ab4f81a3f21e757fef4a30b00e
}
+ */ // Paper
}
+diff --git a/src/main/java/org/bukkit/event/inventory/PrepareSmithingEvent.java b/src/main/java/org/bukkit/event/inventory/PrepareSmithingEvent.java
+index 99af1540324c4d68c5890ac40b591c5cbdd2e870..0bc0ca4f96c800e9c46c61710f44446691d8b93f 100644
+--- a/src/main/java/org/bukkit/event/inventory/PrepareSmithingEvent.java
++++ b/src/main/java/org/bukkit/event/inventory/PrepareSmithingEvent.java
+@@ -1,5 +1,6 @@
+ package org.bukkit.event.inventory;
+
++import com.destroystokyo.paper.event.inventory.PrepareResultEvent;
+ import org.bukkit.event.HandlerList;
+ import org.bukkit.inventory.InventoryView;
+ import org.bukkit.inventory.ItemStack;
+@@ -10,14 +11,16 @@ import org.jetbrains.annotations.Nullable;
+ /**
+ * Called when an item is put in a slot for upgrade by a Smithing Table.
+ */
+-public class PrepareSmithingEvent extends InventoryEvent {
++// Paper start - extend PrepareResultEvent
++public class PrepareSmithingEvent extends PrepareResultEvent {
+
+- private static final HandlerList handlers = new HandlerList();
+- private ItemStack result;
++ //private static final HandlerList handlers = new HandlerList();
++ //private ItemStack result;
+
+ public PrepareSmithingEvent(@NotNull InventoryView inventory, @Nullable ItemStack result) {
+- super(inventory);
+- this.result = result;
++ super(inventory, result);
++ //this.result = result;
++ // Paper end
+ }
+
+ @NotNull
+@@ -33,13 +36,14 @@ public class PrepareSmithingEvent extends InventoryEvent {
+ */
+ @Nullable
+ public ItemStack getResult() {
+- return result;
++ return super.getResult(); // Paper
+ }
+
+ public void setResult(@Nullable ItemStack result) {
+- this.result = result;
++ super.setResult(result); // Paper
+ }
+
++ /* // Paper - comment out
+ @NotNull
+ @Override
+ public HandlerList getHandlers() {
+@@ -50,4 +54,5 @@ public class PrepareSmithingEvent extends InventoryEvent {
+ public static HandlerList getHandlerList() {
+ return handlers;
+ }
++ */ // Paper
+ }
diff --git a/Spigot-Server-Patches/0004-MC-Utils.patch b/Spigot-Server-Patches/0004-MC-Utils.patch
index 0468e151ae..1576666f42 100644
--- a/Spigot-Server-Patches/0004-MC-Utils.patch
+++ b/Spigot-Server-Patches/0004-MC-Utils.patch
@@ -3138,7 +3138,7 @@ index fb0f281261455c9f127abd8d3b336135ad84fc27..ebdd990829edb8e423f482fa4352fe2d
super(entitytypes, world);
this.f = 5;
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 6a38418d40763705639d361e47201f8b26216052..5bf3c279b86ed0fa416ee7dd9923172d6e6261a5 100644
+index a904dd6b19c4d0d60d824df41069c2d6ff85a70d..34cd93a30cc447b87625c099fec32f5befae934e 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -91,6 +91,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -3257,7 +3257,7 @@ index 284283c5f062107df88e77edaf092cf23302a109..b6d6905260cdd32873010f24ef5a3505
IChunkAccess getChunkAt(int i, int j, ChunkStatus chunkstatus, boolean flag);
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
-index dc5625f54a54db35e5dfa630f1414887c736b704..76091ab3f149decc0d3c848b79edd24e20cf181d 100644
+index 020b6e6e12d0e5840337c61e165deef942a01ed2..63842d5d1a5b8e3ec95cec13392245b43e153cf8 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -49,7 +49,7 @@ public final class ItemStack {
@@ -4361,7 +4361,7 @@ index 3c08ae0cf92ab1f5395662e957ab4d9c03e13deb..86f6f082fe2991ea9065b09c9680b76c
return VoxelShapes.b;
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 63d3d43f74bed94cd03aa3b7254e66302be861d5..bd5a2eee9cb435a5ee75a39cea231151fba00387 100644
+index c2403484daa7d0973b27654a9b48d0945661aa6c..fc7e29abc5a2e4fdf03f61e54c2ab716273df813 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -22,6 +22,7 @@ import org.bukkit.craftbukkit.SpigotTimings; // Spigot
@@ -4446,7 +4446,7 @@ index ddc4570139fd9b82f4b740697e84775f5ff0a75a..d039e715624d33fc3ec9e87d5ad99241
return this.j.m();
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index bd6dfddb3c076cf92588dd508975db0eee5c2962..d643ff0a0ae9d45711c9a40fc12af68157604a33 100644
+index f92d2e8bac5efc281988700c1a9aede36253c15b..f89611f1d8ef318a4141d62ea6a2583bd365d3f1 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -56,7 +56,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0009-Timings-v2.patch b/Spigot-Server-Patches/0009-Timings-v2.patch
index c355b6825b..c91365771e 100644
--- a/Spigot-Server-Patches/0009-Timings-v2.patch
+++ b/Spigot-Server-Patches/0009-Timings-v2.patch
@@ -1042,7 +1042,7 @@ index e3f2e259b2c5e478bde45554995b9c742d9e2008..98eec5efe474011665bd819d0d0b11ab
protected BlockPosition ak() {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index dccb315440f7429fe881bd0d12af8f1ae8e35c3d..96a95413f74592ef0a8e9367fd3ed81fc0a2c2fe 100644
+index e0e918cf425c87e4f808ae1d3bd13380d37940dd..b653788984f442337b61318d73892b461ecaf7b1 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -41,7 +41,7 @@ import org.bukkit.event.entity.EntityTeleportEvent;
@@ -1054,7 +1054,7 @@ index dccb315440f7429fe881bd0d12af8f1ae8e35c3d..96a95413f74592ef0a8e9367fd3ed81f
public abstract class EntityLiving extends Entity {
-@@ -2335,7 +2335,6 @@ public abstract class EntityLiving extends Entity {
+@@ -2333,7 +2333,6 @@ public abstract class EntityLiving extends Entity {
@Override
public void tick() {
@@ -1062,7 +1062,7 @@ index dccb315440f7429fe881bd0d12af8f1ae8e35c3d..96a95413f74592ef0a8e9367fd3ed81f
super.tick();
this.u();
this.x();
-@@ -2384,9 +2383,7 @@ public abstract class EntityLiving extends Entity {
+@@ -2382,9 +2381,7 @@ public abstract class EntityLiving extends Entity {
}
}
@@ -1072,7 +1072,7 @@ index dccb315440f7429fe881bd0d12af8f1ae8e35c3d..96a95413f74592ef0a8e9367fd3ed81f
double d0 = this.locX() - this.lastX;
double d1 = this.locZ() - this.lastZ;
float f = (float) (d0 * d0 + d1 * d1);
-@@ -2466,8 +2463,6 @@ public abstract class EntityLiving extends Entity {
+@@ -2464,8 +2461,6 @@ public abstract class EntityLiving extends Entity {
if (this.isSleeping()) {
this.pitch = 0.0F;
}
@@ -1081,7 +1081,7 @@ index dccb315440f7429fe881bd0d12af8f1ae8e35c3d..96a95413f74592ef0a8e9367fd3ed81f
}
private void q() {
-@@ -2649,7 +2644,6 @@ public abstract class EntityLiving extends Entity {
+@@ -2647,7 +2642,6 @@ public abstract class EntityLiving extends Entity {
this.setMot(d4, d5, d6);
this.world.getMethodProfiler().enter("ai");
@@ -1089,7 +1089,7 @@ index dccb315440f7429fe881bd0d12af8f1ae8e35c3d..96a95413f74592ef0a8e9367fd3ed81f
if (this.isFrozen()) {
this.jumping = false;
this.aY = 0.0F;
-@@ -2659,7 +2653,6 @@ public abstract class EntityLiving extends Entity {
+@@ -2657,7 +2651,6 @@ public abstract class EntityLiving extends Entity {
this.doTick();
this.world.getMethodProfiler().exit();
}
@@ -1097,7 +1097,7 @@ index dccb315440f7429fe881bd0d12af8f1ae8e35c3d..96a95413f74592ef0a8e9367fd3ed81f
this.world.getMethodProfiler().exit();
this.world.getMethodProfiler().enter("jump");
-@@ -2694,9 +2687,7 @@ public abstract class EntityLiving extends Entity {
+@@ -2692,9 +2685,7 @@ public abstract class EntityLiving extends Entity {
this.t();
AxisAlignedBB axisalignedbb = this.getBoundingBox();
@@ -1107,7 +1107,7 @@ index dccb315440f7429fe881bd0d12af8f1ae8e35c3d..96a95413f74592ef0a8e9367fd3ed81f
this.world.getMethodProfiler().exit();
this.world.getMethodProfiler().enter("push");
if (this.bm > 0) {
-@@ -2704,9 +2695,7 @@ public abstract class EntityLiving extends Entity {
+@@ -2702,9 +2693,7 @@ public abstract class EntityLiving extends Entity {
this.a(axisalignedbb, this.getBoundingBox());
}
diff --git a/Spigot-Server-Patches/0015-Allow-for-toggling-of-spawn-chunks.patch b/Spigot-Server-Patches/0015-Allow-for-toggling-of-spawn-chunks.patch
index 7a49b2571d..6283591552 100644
--- a/Spigot-Server-Patches/0015-Allow-for-toggling-of-spawn-chunks.patch
+++ b/Spigot-Server-Patches/0015-Allow-for-toggling-of-spawn-chunks.patch
@@ -20,7 +20,7 @@ index 2845686411615245137cfe1a155088a865a4d3a0..8ee2b9bb1bce698fce50ac1b3fc477fc
+ }
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index a559f423b19a1e6f8efb6327270250844e8c6fb6..b09f3f2bda126adf58d58e45f03f4205b28f29fd 100644
+index 35920c82ef9b79a6d8f806b90f2f8dbd0de061c2..e5e4d25ffc8f640a183b53961ce4678e52a67a91 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -159,6 +159,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0017-Show-Paper-in-client-crashes-server-lists-and-Mojang.patch b/Spigot-Server-Patches/0017-Show-Paper-in-client-crashes-server-lists-and-Mojang.patch
index dd5bad0a5d..27a0dbaafa 100644
--- a/Spigot-Server-Patches/0017-Show-Paper-in-client-crashes-server-lists-and-Mojang.patch
+++ b/Spigot-Server-Patches/0017-Show-Paper-in-client-crashes-server-lists-and-Mojang.patch
@@ -32,7 +32,7 @@ index 0867ad04857c652dcbcdf130bb5353113ea039a0..9eacc1ba58986c21c5d8dc8d8d14c6f3
public CrashReport b(CrashReport crashreport) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index c6c4033b16df4d31e87f4dca8d9293698e03958a..a07014ecb5789b4df4a770407f96c8c6edc6c579 100644
+index 89143ae11ae485d7d3d602d2f535e2fc240201f1..a19e208415a5918414d61304de4bd282725bef56 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -226,7 +226,7 @@ import org.yaml.snakeyaml.error.MarkedYAMLException;
diff --git a/Spigot-Server-Patches/0025-Entity-Origin-API.patch b/Spigot-Server-Patches/0025-Entity-Origin-API.patch
index 6b98a8f693..1e4a5b7dca 100644
--- a/Spigot-Server-Patches/0025-Entity-Origin-API.patch
+++ b/Spigot-Server-Patches/0025-Entity-Origin-API.patch
@@ -101,7 +101,7 @@ index ad8a506bb430b26fe147a657a2f826daf9bf4d45..ad4807e0bdd6409bd798f995da8f43ce
if (i >= 0 && i < this.list.size()) {
NBTBase nbtbase = (NBTBase) this.list.get(i);
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 4b2d67b8f147015c3ecdd19f79b2719ff079c26a..11bf3797bde480107e60fbfa32db61003c513201 100644
+index df63ea6680e9619e09477ed44a021e128314436c..118f2b80193bf59139c46b811be96edda4ae0014 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1087,6 +1087,11 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0026-Prevent-tile-entity-and-entity-crashes.patch b/Spigot-Server-Patches/0026-Prevent-tile-entity-and-entity-crashes.patch
index 16c4a538e5..bd3a84d510 100644
--- a/Spigot-Server-Patches/0026-Prevent-tile-entity-and-entity-crashes.patch
+++ b/Spigot-Server-Patches/0026-Prevent-tile-entity-and-entity-crashes.patch
@@ -23,7 +23,7 @@ index 057d703fe73de9bb9ca6f0e263463d32abae4c13..534295965ee701611b5e12a10f14a69e
}
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index b09f3f2bda126adf58d58e45f03f4205b28f29fd..8a1f8a8bc2e70b6675011f571b9a6cb58dc79877 100644
+index e5e4d25ffc8f640a183b53961ce4678e52a67a91..8e122f3e28dd1ec2e27faa663adcbc900f0e105e 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -720,11 +720,13 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0030-Configurable-end-credits.patch b/Spigot-Server-Patches/0030-Configurable-end-credits.patch
index 4d39e6b1e2..aaae948232 100644
--- a/Spigot-Server-Patches/0030-Configurable-end-credits.patch
+++ b/Spigot-Server-Patches/0030-Configurable-end-credits.patch
@@ -20,7 +20,7 @@ index f7a0a33e49cadf9b2bd43f118c106937760da762..50dec5cb5e924301842300e8fc80cb67
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 5bf3c279b86ed0fa416ee7dd9923172d6e6261a5..7012bd08fb4715eb66e6f47733b82f556c2b8a11 100644
+index 34cd93a30cc447b87625c099fec32f5befae934e..4b932c18390e6a94f5ce0683b87d20c7e6708be7 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -60,7 +60,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0032-Optimize-explosions.patch b/Spigot-Server-Patches/0032-Optimize-explosions.patch
index d1d73ce7aa..f7d9c327d3 100644
--- a/Spigot-Server-Patches/0032-Optimize-explosions.patch
+++ b/Spigot-Server-Patches/0032-Optimize-explosions.patch
@@ -135,7 +135,7 @@ index 7b58499c24d5a4296cc539087ca86d2ec4148b1c..991baec71cfeb79ee2108870645a1958
this.methodProfiler.exitEnter("connection");
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 8a1f8a8bc2e70b6675011f571b9a6cb58dc79877..7fe3cfebb051944f3c619ae04bc966efdbff31da 100644
+index 8e122f3e28dd1ec2e27faa663adcbc900f0e105e..2f161749ff822f4d0f5aaf7e7c9fd1608360de6c 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -84,6 +84,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0034-Disable-thunder.patch b/Spigot-Server-Patches/0034-Disable-thunder.patch
index 6abc50d09a..16c27c9fc6 100644
--- a/Spigot-Server-Patches/0034-Disable-thunder.patch
+++ b/Spigot-Server-Patches/0034-Disable-thunder.patch
@@ -19,7 +19,7 @@ index 25e0717186366af580e512eedfd403b8efc64a75..41436a4ead736dc925ca77d4cabf925f
+ }
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 11bf3797bde480107e60fbfa32db61003c513201..3033745e25fb7f905506a18ac06bdf55a9f863df 100644
+index 118f2b80193bf59139c46b811be96edda4ae0014..bfece8ac9aff33a5ec823f2ce7030c7474a1aee5 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -470,7 +470,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0035-Disable-ice-and-snow.patch b/Spigot-Server-Patches/0035-Disable-ice-and-snow.patch
index 467fd2715b..430fa02a24 100644
--- a/Spigot-Server-Patches/0035-Disable-ice-and-snow.patch
+++ b/Spigot-Server-Patches/0035-Disable-ice-and-snow.patch
@@ -19,7 +19,7 @@ index 41436a4ead736dc925ca77d4cabf925f4e492d68..f53d8b96757cbedc5fbb16195952a7da
+ }
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 3033745e25fb7f905506a18ac06bdf55a9f863df..5330a1f3ea1dd8ba7471b10610f958fa912a7f69 100644
+index bfece8ac9aff33a5ec823f2ce7030c7474a1aee5..89e960ef91f588f16ca3efde5518e731d6bc29cb 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -494,7 +494,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0039-Configurable-container-update-tick-rate.patch b/Spigot-Server-Patches/0039-Configurable-container-update-tick-rate.patch
index 58b234158e..c5bc6146fb 100644
--- a/Spigot-Server-Patches/0039-Configurable-container-update-tick-rate.patch
+++ b/Spigot-Server-Patches/0039-Configurable-container-update-tick-rate.patch
@@ -19,7 +19,7 @@ index 428deed56dae597291670bea8c8a6a67ce4d940f..a4da22ea65d5fdba38f8dc331919088f
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 7012bd08fb4715eb66e6f47733b82f556c2b8a11..b8a45b6c7f519e4948f14ccc39b505420c3a0dd7 100644
+index 4b932c18390e6a94f5ce0683b87d20c7e6708be7..5dce27334541d55c7a7d494cd92370570615dc05 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -76,6 +76,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0041-Disable-spigot-tick-limiters.patch b/Spigot-Server-Patches/0041-Disable-spigot-tick-limiters.patch
index fb75cd06c6..25cc7bacf0 100644
--- a/Spigot-Server-Patches/0041-Disable-spigot-tick-limiters.patch
+++ b/Spigot-Server-Patches/0041-Disable-spigot-tick-limiters.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Disable spigot tick limiters
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 7fe3cfebb051944f3c619ae04bc966efdbff31da..864df4fbcb0f4a09fc12b270955c36d779aeb7d4 100644
+index 2f161749ff822f4d0f5aaf7e7c9fd1608360de6c..a2574722e0893d63a4d4878febd02b0184c60ac7 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -690,9 +690,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0042-Add-PlayerInitialSpawnEvent.patch b/Spigot-Server-Patches/0042-Add-PlayerInitialSpawnEvent.patch
index fb173c8618..1374f3d3a6 100644
--- a/Spigot-Server-Patches/0042-Add-PlayerInitialSpawnEvent.patch
+++ b/Spigot-Server-Patches/0042-Add-PlayerInitialSpawnEvent.patch
@@ -9,7 +9,7 @@ This is a duplicate API from spigot, so use our duplicate subclass and
improve setPosition to use raw
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 213e8512247e9873563ad606a7e3a2a3ca409718..2265fa3c04305e18653b4b37a0d1d36b261521d7 100644
+index 60a8fdbd6e458dfdc3e4449d71464bb5d5c5bd20..107d18b028e042f7de505ea2a58a8dc2b9bf0fb3 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -143,7 +143,7 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0044-Ensure-commands-are-not-ran-async.patch b/Spigot-Server-Patches/0044-Ensure-commands-are-not-ran-async.patch
index 4b8e06ce41..f4857c4250 100644
--- a/Spigot-Server-Patches/0044-Ensure-commands-are-not-ran-async.patch
+++ b/Spigot-Server-Patches/0044-Ensure-commands-are-not-ran-async.patch
@@ -48,7 +48,7 @@ index 88fa8d63c5bb2c76ba09db6bb002f6d6b6a42afc..8ecca907357119ed8eb67381914daba4
} else if (this.player.getChatFlags() == EnumChatVisibility.SYSTEM) {
// Do nothing, this is coming from a plugin
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index 4edc9d892a18f7ea2b22f597ee075b09cf843eaf..e6836b4afa60de8990cbc3e8a3bb39edd753782e 100644
+index 44a7c6377baa210862ce0ccf60ad0f16d8a839b9..e3e938801cd97fbae2802e8962c70e5d2e66f5f0 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -754,6 +754,29 @@ public final class CraftServer implements Server {
diff --git a/Spigot-Server-Patches/0050-Change-implementation-of-tile-entity-removal-list.patch b/Spigot-Server-Patches/0050-Change-implementation-of-tile-entity-removal-list.patch
index 57470af925..2862e90353 100644
--- a/Spigot-Server-Patches/0050-Change-implementation-of-tile-entity-removal-list.patch
+++ b/Spigot-Server-Patches/0050-Change-implementation-of-tile-entity-removal-list.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Change implementation of (tile)entity removal list
use sets for faster removal
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 864df4fbcb0f4a09fc12b270955c36d779aeb7d4..a1e1dc72cd6a556505a6f0d7feee2527947c00dd 100644
+index a2574722e0893d63a4d4878febd02b0184c60ac7..b44240960f4416356b1e9cd1994d676c48ee71d1 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -37,7 +37,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0051-Add-configurable-portal-search-radius.patch b/Spigot-Server-Patches/0051-Add-configurable-portal-search-radius.patch
index 4c5b19325a..94cfa240ef 100644
--- a/Spigot-Server-Patches/0051-Add-configurable-portal-search-radius.patch
+++ b/Spigot-Server-Patches/0051-Add-configurable-portal-search-radius.patch
@@ -34,7 +34,7 @@ index 9e132052e1a9b997300e3f5d88473fc5f9ebdd73..1a8fc714f6e4663fc02c1df6a67aaa37
return null;
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index b8a45b6c7f519e4948f14ccc39b505420c3a0dd7..7eb56761d9073156b30d4c981dcd4b4ba646f0bc 100644
+index 5dce27334541d55c7a7d494cd92370570615dc05..2cdb999dd78611e6f72ef06d9128f21a251cb061 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -815,7 +815,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0052-Add-velocity-warnings.patch b/Spigot-Server-Patches/0052-Add-velocity-warnings.patch
index 4460e8b19e..684421c8a0 100644
--- a/Spigot-Server-Patches/0052-Add-velocity-warnings.patch
+++ b/Spigot-Server-Patches/0052-Add-velocity-warnings.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add velocity warnings
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index 6fdc6caa4d58aea28911442ac29d7420926b30f4..3c95cbc18826912eb53205c6fb1387af90a5804c 100644
+index dbc2fa67426794d7c023c5c984ca165d734652be..b2524582a59939aa0a4569bfbb03eb1cc64c3cab 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -262,6 +262,7 @@ public final class CraftServer implements Server {
diff --git a/Spigot-Server-Patches/0054-Add-exception-reporting-event.patch b/Spigot-Server-Patches/0054-Add-exception-reporting-event.patch
index 0e2d54f0e5..67412b52c3 100644
--- a/Spigot-Server-Patches/0054-Add-exception-reporting-event.patch
+++ b/Spigot-Server-Patches/0054-Add-exception-reporting-event.patch
@@ -201,7 +201,7 @@ index 045c16654e60f2312e9b6f7b0de2c9e921321201..b1081e441023f5d24091321b1267b565
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index a1e1dc72cd6a556505a6f0d7feee2527947c00dd..c01f0e897ab8741c7fd68245458acdb8559e843e 100644
+index b44240960f4416356b1e9cd1994d676c48ee71d1..c2f8b3eecdb9492b800086a81ef5c0c4c34ff8b7 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1,5 +1,10 @@
diff --git a/Spigot-Server-Patches/0060-Default-loading-permissions.yml-before-plugins.patch b/Spigot-Server-Patches/0060-Default-loading-permissions.yml-before-plugins.patch
index 20942b4e3e..f522c4a5d3 100644
--- a/Spigot-Server-Patches/0060-Default-loading-permissions.yml-before-plugins.patch
+++ b/Spigot-Server-Patches/0060-Default-loading-permissions.yml-before-plugins.patch
@@ -30,7 +30,7 @@ index a62f4bbb973b9cb6d1ee53f56a0897d70ae176af..f207abbe757ad403a29a7a012903aaa8
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index 3c95cbc18826912eb53205c6fb1387af90a5804c..aa74c838147d67c9cbfcff1f9b0dc653808fb109 100644
+index b2524582a59939aa0a4569bfbb03eb1cc64c3cab..3c5b3ab38c22dd127caa2218e9bc62baf7cf5760 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -399,6 +399,7 @@ public final class CraftServer implements Server {
diff --git a/Spigot-Server-Patches/0062-Remove-Metadata-on-reload.patch b/Spigot-Server-Patches/0062-Remove-Metadata-on-reload.patch
index 438bdff912..335ce766d5 100644
--- a/Spigot-Server-Patches/0062-Remove-Metadata-on-reload.patch
+++ b/Spigot-Server-Patches/0062-Remove-Metadata-on-reload.patch
@@ -7,7 +7,7 @@ Metadata is not meant to persist reload as things break badly with non primitive
This will remove metadata on reload so it does not crash everything if a plugin uses it.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index 7c4ef70f540de9d5486d1ccef65ef8d82580694e..660f0362303df0fa990fa8f1507435666445c228 100644
+index ed6832b13c4e59afb2e8e74f075c991f9f91de39..b98efc399fd6d8af53c3a2b74bbbdb97d9ea11e8 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -865,8 +865,18 @@ public final class CraftServer implements Server {
diff --git a/Spigot-Server-Patches/0063-Handle-Item-Meta-Inconsistencies.patch b/Spigot-Server-Patches/0063-Handle-Item-Meta-Inconsistencies.patch
index 63db7ba56d..16d65651dd 100644
--- a/Spigot-Server-Patches/0063-Handle-Item-Meta-Inconsistencies.patch
+++ b/Spigot-Server-Patches/0063-Handle-Item-Meta-Inconsistencies.patch
@@ -18,7 +18,7 @@ For consistency, the old API methods now forward to use the
ItemMeta API equivalents, and should deprecate the old API's.
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
-index 76091ab3f149decc0d3c848b79edd24e20cf181d..a360711ea14983e8df34caa5edda80a015e6db23 100644
+index 63842d5d1a5b8e3ec95cec13392245b43e153cf8..648ae6d9e8f3c7f4d5bbd442efda2ca7d2fc0c3b 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -9,6 +9,8 @@ import com.mojang.serialization.Codec;
@@ -194,7 +194,7 @@ index 721a1c6bd4505cb132e7004c45b795d4959389e3..9913d0136841dac35b6649cb1afbe1e9
static Map<Enchantment, Integer> getEnchantments(net.minecraft.server.ItemStack item) {
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
-index be74b465dd94a79fdfc8fdc236b4fc7b59424499..be39fbc1433e03e2f0e562095fea590691d7a062 100644
+index dec0db24ae611736c99158ba4cb11015ad4b8575..55a3d9d3805bd2b14f853faecd47e572094d1c64 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -6,6 +6,7 @@ import com.google.common.collect.ImmutableList;
diff --git a/Spigot-Server-Patches/0065-Add-World-Util-Methods.patch b/Spigot-Server-Patches/0065-Add-World-Util-Methods.patch
index ed8f0c05d1..7db4d5b87c 100644
--- a/Spigot-Server-Patches/0065-Add-World-Util-Methods.patch
+++ b/Spigot-Server-Patches/0065-Add-World-Util-Methods.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Add World Util Methods
Methods that can be used for other patches to help improve logic.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index c01f0e897ab8741c7fd68245458acdb8559e843e..ee1f5c1e1bc9440a743a361bf3aaa991dddbc9cd 100644
+index c2f8b3eecdb9492b800086a81ef5c0c4c34ff8b7..08d9268c6b6883757d6a6f008dda846d34d63dca 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -285,6 +285,22 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@@ -45,7 +45,7 @@ index d039e715624d33fc3ec9e87d5ad992415e7dc6b9..d5c0d394feaf8bb991245dbdcc6252cf
return (double) (blockposition.getX() + 1) > this.e() && (double) blockposition.getX() < this.g() && (double) (blockposition.getZ() + 1) > this.f() && (double) blockposition.getZ() < this.h();
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 223482e468862407d53299219e2f4debecd0cd87..f38c88df648aa715aefb18018779efd8075d781e 100644
+index 89e960ef91f588f16ca3efde5518e731d6bc29cb..45921bbb8241901743b08aa94fb9700293a724c2 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -83,7 +83,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0066-Custom-replacement-for-eaten-items.patch b/Spigot-Server-Patches/0066-Custom-replacement-for-eaten-items.patch
index 541513885b..113d7241af 100644
--- a/Spigot-Server-Patches/0066-Custom-replacement-for-eaten-items.patch
+++ b/Spigot-Server-Patches/0066-Custom-replacement-for-eaten-items.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Custom replacement for eaten items
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index d96f6736826896d2b7f482fba0c5125edf2ce3c0..f1080e7d10d5105e3f4010489393f6150c7c4a75 100644
+index ac608392ec480b927ce5047cc0519ea06a68e040..9c9af548fe32ab1dd3eecdb4fe4aacf255b39e22 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -3069,9 +3069,10 @@ public abstract class EntityLiving extends Entity {
+@@ -3067,9 +3067,10 @@ public abstract class EntityLiving extends Entity {
this.b(this.activeItem, 16);
// CraftBukkit start - fire PlayerItemConsumeEvent
ItemStack itemstack;
@@ -20,7 +20,7 @@ index d96f6736826896d2b7f482fba0c5125edf2ce3c0..f1080e7d10d5105e3f4010489393f615
world.getServer().getPluginManager().callEvent(event);
if (event.isCancelled()) {
-@@ -3086,9 +3087,20 @@ public abstract class EntityLiving extends Entity {
+@@ -3084,9 +3085,20 @@ public abstract class EntityLiving extends Entity {
itemstack = this.activeItem.a(this.world, this);
}
diff --git a/Spigot-Server-Patches/0067-handle-NaN-health-absorb-values-and-repair-bad-data.patch b/Spigot-Server-Patches/0067-handle-NaN-health-absorb-values-and-repair-bad-data.patch
index d93286a406..fc751f3ab6 100644
--- a/Spigot-Server-Patches/0067-handle-NaN-health-absorb-values-and-repair-bad-data.patch
+++ b/Spigot-Server-Patches/0067-handle-NaN-health-absorb-values-and-repair-bad-data.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] handle NaN health/absorb values and repair bad data
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index f1080e7d10d5105e3f4010489393f6150c7c4a75..374e4a3dcb656d6a84e05bb9260d3198a4243c05 100644
+index 9c9af548fe32ab1dd3eecdb4fe4aacf255b39e22..8cb1537114c4aa3d6835e46e9e70de2fa67fac6a 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -602,7 +602,13 @@ public abstract class EntityLiving extends Entity {
@@ -34,7 +34,7 @@ index f1080e7d10d5105e3f4010489393f6150c7c4a75..374e4a3dcb656d6a84e05bb9260d3198
// CraftBukkit start - Handle scaled health
if (this instanceof EntityPlayer) {
org.bukkit.craftbukkit.entity.CraftPlayer player = ((EntityPlayer) this).getBukkitEntity();
-@@ -2911,7 +2921,7 @@ public abstract class EntityLiving extends Entity {
+@@ -2909,7 +2919,7 @@ public abstract class EntityLiving extends Entity {
}
public void setAbsorptionHearts(float f) {
diff --git a/Spigot-Server-Patches/0070-Configurable-spawn-chances-for-skeleton-horses.patch b/Spigot-Server-Patches/0070-Configurable-spawn-chances-for-skeleton-horses.patch
index 3b0d94a158..78c5b58cbf 100644
--- a/Spigot-Server-Patches/0070-Configurable-spawn-chances-for-skeleton-horses.patch
+++ b/Spigot-Server-Patches/0070-Configurable-spawn-chances-for-skeleton-horses.patch
@@ -22,7 +22,7 @@ index d8b9d87bca6eb95c2cea91e4d8466b9792582d52..92d1dffbf436a21943b4a6aa0fabf54f
+ }
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 0572f150fc6f83eaa8a4fb708f1eab5df7357735..18b14851ab2c1cbe838d581b560c1f16726a3a61 100644
+index 45921bbb8241901743b08aa94fb9700293a724c2..746e6266ef62413ac0915818aab23d33912b4bea 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -474,7 +474,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0071-Optimize-isValidLocation-getType-and-getBlockData-fo.patch b/Spigot-Server-Patches/0071-Optimize-isValidLocation-getType-and-getBlockData-fo.patch
index e371673a9f..f9bb7a0d16 100644
--- a/Spigot-Server-Patches/0071-Optimize-isValidLocation-getType-and-getBlockData-fo.patch
+++ b/Spigot-Server-Patches/0071-Optimize-isValidLocation-getType-and-getBlockData-fo.patch
@@ -192,7 +192,7 @@ index c5d7a013e65c2c81b14ceb2476c1c6dfe3239f0d..ee8df274d43be753887fb77e4203e2ee
@Override
public Fluid getFluid(BlockPosition blockposition) {
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index ee1f5c1e1bc9440a743a361bf3aaa991dddbc9cd..1e72dd313e1fe0f701f3d14fffdc9a6a8db78934 100644
+index 08d9268c6b6883757d6a6f008dda846d34d63dca..8308c1dbff44226f93715670ce03504f53f6fdb7 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -181,7 +181,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0072-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch b/Spigot-Server-Patches/0072-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch
index 246a617c5f..348a0aa17c 100644
--- a/Spigot-Server-Patches/0072-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch
+++ b/Spigot-Server-Patches/0072-Only-process-BlockPhysicsEvent-if-a-plugin-has-a-lis.patch
@@ -66,7 +66,7 @@ index 8308c1dbff44226f93715670ce03504f53f6fdb7..b6102d501616bc536a7dc14ec2917e14
this.getServer().getPluginManager().callEvent(event);
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 5e64aca8c318f2fd909cd0e934867e890a152373..b800844c9a2ae76019213ccb64655eeea2885a67 100644
+index 746e6266ef62413ac0915818aab23d33912b4bea..4300a6720ff2083b697bdbddd1599d29a9906464 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -82,6 +82,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0073-Entity-AddTo-RemoveFrom-World-Events.patch b/Spigot-Server-Patches/0073-Entity-AddTo-RemoveFrom-World-Events.patch
index 48c3eff578..6104389bc8 100644
--- a/Spigot-Server-Patches/0073-Entity-AddTo-RemoveFrom-World-Events.patch
+++ b/Spigot-Server-Patches/0073-Entity-AddTo-RemoveFrom-World-Events.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Entity AddTo/RemoveFrom World Events
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 63f9fbc68c9824832db8c99bbd5ebfe347977242..5bfd8ae57e8808a7f282071b7d46f64acde6dd49 100644
+index 4300a6720ff2083b697bdbddd1599d29a9906464..f67a654d0a32967720a7d234f1a467387ea0dbbf 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1055,7 +1055,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0079-Fix-reducedDebugInfo-not-initialized-on-client.patch b/Spigot-Server-Patches/0079-Fix-reducedDebugInfo-not-initialized-on-client.patch
index 3ed46d2950..032c238865 100644
--- a/Spigot-Server-Patches/0079-Fix-reducedDebugInfo-not-initialized-on-client.patch
+++ b/Spigot-Server-Patches/0079-Fix-reducedDebugInfo-not-initialized-on-client.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Fix reducedDebugInfo not initialized on client
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 2265fa3c04305e18653b4b37a0d1d36b261521d7..ca1f4bdf81600d2e72564e5dba1df0d69877bdce 100644
+index 107d18b028e042f7de505ea2a58a8dc2b9bf0fb3..f8224fbc4a677f9c9a5ee65d4f96f849037c0bf9 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -174,6 +174,7 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0081-Fix-Cancelling-BlockPlaceEvent-triggering-physics.patch b/Spigot-Server-Patches/0081-Fix-Cancelling-BlockPlaceEvent-triggering-physics.patch
index 0d3122c07c..e689889729 100644
--- a/Spigot-Server-Patches/0081-Fix-Cancelling-BlockPlaceEvent-triggering-physics.patch
+++ b/Spigot-Server-Patches/0081-Fix-Cancelling-BlockPlaceEvent-triggering-physics.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Fix Cancelling BlockPlaceEvent triggering physics
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 948e477e112cd1e27c74a29c6330b07f9b710ffe..58277457ef879c48f3678efeb2a646e116320754 100644
+index b6102d501616bc536a7dc14ec2917e1461b3ea19..3fc0fcc9e6598ec77fd562c0887335fe018b4051 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -501,6 +501,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0085-Remove-unused-World-Tile-Entity-List.patch b/Spigot-Server-Patches/0085-Remove-unused-World-Tile-Entity-List.patch
index 1ddcfee5a9..4f4eeec44a 100644
--- a/Spigot-Server-Patches/0085-Remove-unused-World-Tile-Entity-List.patch
+++ b/Spigot-Server-Patches/0085-Remove-unused-World-Tile-Entity-List.patch
@@ -67,7 +67,7 @@ index 3fc0fcc9e6598ec77fd562c0887335fe018b4051..e2167413702f8a7369e4719fd6bb28e2
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 5bfd8ae57e8808a7f282071b7d46f64acde6dd49..ea3a39a45bbc828728de27174c139432a175f653 100644
+index f67a654d0a32967720a7d234f1a467387ea0dbbf..1525ea4666d67072f16a04647af238c82bcd3fbb 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1541,7 +1541,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0087-Configurable-Player-Collision.patch b/Spigot-Server-Patches/0087-Configurable-Player-Collision.patch
index 49c7705dca..59355a9a2c 100644
--- a/Spigot-Server-Patches/0087-Configurable-Player-Collision.patch
+++ b/Spigot-Server-Patches/0087-Configurable-Player-Collision.patch
@@ -57,7 +57,7 @@ index d1581c9d9838797eb425020d21bd0fba432e5652..99dc43159f240135957aee35f6129f19
packetdataserializer.a(this.c);
packetdataserializer.a(this.d);
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index ca1f4bdf81600d2e72564e5dba1df0d69877bdce..7fb344d9ef8f5c7a6c6ed5e7256d55860726c6f2 100644
+index f8224fbc4a677f9c9a5ee65d4f96f849037c0bf9..12b1ef7fb02e1c4c265f24a090fea10e59a02f67 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -75,6 +75,7 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0091-Implement-PlayerLocaleChangeEvent.patch b/Spigot-Server-Patches/0091-Implement-PlayerLocaleChangeEvent.patch
index 636bb65500..48dde43add 100644
--- a/Spigot-Server-Patches/0091-Implement-PlayerLocaleChangeEvent.patch
+++ b/Spigot-Server-Patches/0091-Implement-PlayerLocaleChangeEvent.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Implement PlayerLocaleChangeEvent
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 7eb56761d9073156b30d4c981dcd4b4ba646f0bc..ab89e508ee8b8142fb7c0b5101b0b0e157a68f35 100644
+index 2cdb999dd78611e6f72ef06d9128f21a251cb061..6a3d9a06c3e099f5966fe71c5c710daadb4699bb 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1567,20 +1567,28 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0095-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch b/Spigot-Server-Patches/0095-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch
index 395f510e72..74f3c3fd2f 100644
--- a/Spigot-Server-Patches/0095-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch
+++ b/Spigot-Server-Patches/0095-Improve-Maps-in-item-frames-performance-and-bug-fixe.patch
@@ -102,7 +102,7 @@ index e6d97e7ffae3eadac586bad078123cd4aaa69916..225353e072033d1e5aaf5604b8db255d
for ( org.bukkit.map.MapCursor cursor : render.cursors) {
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index ea3a39a45bbc828728de27174c139432a175f653..4667155b33325a6dccf3fd5c5ce42293731282de 100644
+index 1525ea4666d67072f16a04647af238c82bcd3fbb..558093814d19bfc371ea03ea0233c11c04504709 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1011,6 +1011,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0102-Faster-redstone-torch-rapid-clock-removal.patch b/Spigot-Server-Patches/0102-Faster-redstone-torch-rapid-clock-removal.patch
index 4b90659fc3..095f0bfa15 100644
--- a/Spigot-Server-Patches/0102-Faster-redstone-torch-rapid-clock-removal.patch
+++ b/Spigot-Server-Patches/0102-Faster-redstone-torch-rapid-clock-removal.patch
@@ -77,7 +77,7 @@ index d88d435b7777f731bc0bb728ebe4d4cb31c6376e..a63a60348fe45f63deec6fcb27b6be09
public RedstoneUpdateInfo(BlockPosition blockposition, long i) {
this.a = blockposition;
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index bd7214e4679044461f141f3000f1dab648a24051..87a0e66029e10a22ea6e681c7d1e143b9bc5c2c8 100644
+index e2167413702f8a7369e4719fd6bb28e2e4fc86ef..ab64a37d26f79ed081d0c84571106a7c2f9ddfe8 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -90,6 +90,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0103-Add-server-name-parameter.patch b/Spigot-Server-Patches/0103-Add-server-name-parameter.patch
index d25dd67633..faf4ee491c 100644
--- a/Spigot-Server-Patches/0103-Add-server-name-parameter.patch
+++ b/Spigot-Server-Patches/0103-Add-server-name-parameter.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add server-name parameter
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
-index a111987658a6d89fc3fe970b1db37a7f3517b9bd..b1157195cf00a05d3417bccf781fdf58ff9919b6 100644
+index aa5f94f85b5792c9896fcdafe77e37ec49681d58..46ccad51bb60be735cee5f22fef234298882c6e4 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -137,6 +137,14 @@ public class Main {
diff --git a/Spigot-Server-Patches/0105-Fix-Double-World-Add-issues.patch b/Spigot-Server-Patches/0105-Fix-Double-World-Add-issues.patch
index bb88411b66..496b8209c7 100644
--- a/Spigot-Server-Patches/0105-Fix-Double-World-Add-issues.patch
+++ b/Spigot-Server-Patches/0105-Fix-Double-World-Add-issues.patch
@@ -8,7 +8,7 @@ Vanilla will double add Spider Jockeys to the world, so ignore already added.
Also add debug if something else tries to, and abort before world gets bad state
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 4667155b33325a6dccf3fd5c5ce42293731282de..d9250c630a8146ed3c906607b2165594a6000d2d 100644
+index 558093814d19bfc371ea03ea0233c11c04504709..75ecd9449de2681ec767cbadb3460a546f3222df 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -918,6 +918,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0112-Chunk-registration-fixes.patch b/Spigot-Server-Patches/0112-Chunk-registration-fixes.patch
index bee8cc1b97..ea30ea4cd0 100644
--- a/Spigot-Server-Patches/0112-Chunk-registration-fixes.patch
+++ b/Spigot-Server-Patches/0112-Chunk-registration-fixes.patch
@@ -8,7 +8,7 @@ World checks and the Chunk Add logic are inconsistent on how Y > 256, < 0, is tr
Keep them consistent
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index d9250c630a8146ed3c906607b2165594a6000d2d..318345cddb3ecc102d88a6879815af55d05814ee 100644
+index 75ecd9449de2681ec767cbadb3460a546f3222df..1ac19271391d437160e02983fbc4d707205c8893 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -727,7 +727,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0114-Auto-fix-bad-Y-levels-on-player-login.patch b/Spigot-Server-Patches/0114-Auto-fix-bad-Y-levels-on-player-login.patch
index b6b7c7786b..c2185db0d3 100644
--- a/Spigot-Server-Patches/0114-Auto-fix-bad-Y-levels-on-player-login.patch
+++ b/Spigot-Server-Patches/0114-Auto-fix-bad-Y-levels-on-player-login.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Auto fix bad Y levels on player login
Bring down to a saner Y level if super high, as this can cause the server to crash
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index ab89e508ee8b8142fb7c0b5101b0b0e157a68f35..1f98d4bec282c46355e325dcb9fe0cb23394ba9e 100644
+index 6a3d9a06c3e099f5966fe71c5c710daadb4699bb..1e8e95c2f653fd0f3e3d62a80984dcb39e7c1dac 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -203,6 +203,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0116-Add-EntityZapEvent.patch b/Spigot-Server-Patches/0116-Add-EntityZapEvent.patch
index e709a14824..7011596b57 100644
--- a/Spigot-Server-Patches/0116-Add-EntityZapEvent.patch
+++ b/Spigot-Server-Patches/0116-Add-EntityZapEvent.patch
@@ -38,10 +38,10 @@ index f7f76bca254dc7bc5792e449feeaa113a96c93e4..d0b04707e830fbaf3a6bfe92637e4432
entitywitch.prepare(this.world, this.world.getDamageScaler(entitywitch.getChunkCoordinates()), EnumMobSpawn.CONVERSION, (GroupDataEntity) null, (NBTTagCompound) null);
entitywitch.setNoAI(this.isNoAI());
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index f4abad0c0e7e2a57965311ee0a82224154f752aa..47f8c995025f26607baf3b80b8465f6df78a08ff 100644
+index 60a7b9abf65adf8a326b17d07b5864b83137fde2..df807692aad0c61ea101e40a5468ee7f7295e32e 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -1080,6 +1080,14 @@ public class CraftEventFactory {
+@@ -1081,6 +1081,14 @@ public class CraftEventFactory {
return event;
}
diff --git a/Spigot-Server-Patches/0118-Cache-user-authenticator-threads.patch b/Spigot-Server-Patches/0118-Cache-user-authenticator-threads.patch
index 726bbaec7a..a8b6f8b6a5 100644
--- a/Spigot-Server-Patches/0118-Cache-user-authenticator-threads.patch
+++ b/Spigot-Server-Patches/0118-Cache-user-authenticator-threads.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Cache user authenticator threads
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 1f98d4bec282c46355e325dcb9fe0cb23394ba9e..c1c858f9384eb6e952198e531633d0a571c39ac2 100644
+index 1e8e95c2f653fd0f3e3d62a80984dcb39e7c1dac..0d9a944d7fdf82c2b20a1238483b76fbe2b4f743 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -4,7 +4,9 @@ import com.google.common.collect.Lists;
diff --git a/Spigot-Server-Patches/0121-Add-source-to-PlayerExpChangeEvent.patch b/Spigot-Server-Patches/0121-Add-source-to-PlayerExpChangeEvent.patch
index 765101384d..6e7be086c0 100644
--- a/Spigot-Server-Patches/0121-Add-source-to-PlayerExpChangeEvent.patch
+++ b/Spigot-Server-Patches/0121-Add-source-to-PlayerExpChangeEvent.patch
@@ -18,7 +18,7 @@ index 2e25aba27993608ed7ee1cfb7ae8ee60bc74feda..c13a47382d0a7456fa5035a64f42a6ed
this.die();
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 47f8c995025f26607baf3b80b8465f6df78a08ff..9a4d74f6e241dd4e1785ed5bad0eac74b3130fca 100644
+index df807692aad0c61ea101e40a5468ee7f7295e32e..7311a4aecd67a0b8524e2f1ab157cd2347ec0570 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
@@ -120,6 +120,7 @@ import org.bukkit.entity.ThrownPotion;
@@ -29,7 +29,7 @@ index 47f8c995025f26607baf3b80b8465f6df78a08ff..9a4d74f6e241dd4e1785ed5bad0eac74
import org.bukkit.event.Cancellable;
import org.bukkit.event.Event;
import org.bukkit.event.Event.Result;
-@@ -1039,6 +1040,17 @@ public class CraftEventFactory {
+@@ -1040,6 +1041,17 @@ public class CraftEventFactory {
return event;
}
diff --git a/Spigot-Server-Patches/0123-Add-ProjectileCollideEvent.patch b/Spigot-Server-Patches/0123-Add-ProjectileCollideEvent.patch
index 540f7cb9aa..363bc9a05c 100644
--- a/Spigot-Server-Patches/0123-Add-ProjectileCollideEvent.patch
+++ b/Spigot-Server-Patches/0123-Add-ProjectileCollideEvent.patch
@@ -71,10 +71,10 @@ index 5cc122fc0e80bd67160c8b4a7a469edfb6e24808..795685f1eed489b8323c7a8528b2bbd4
Vec3D vec3d = this.getMot();
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 9a4d74f6e241dd4e1785ed5bad0eac74b3130fca..ac5f492fd0d837da150e415bc007c10fe7ee3714 100644
+index 7311a4aecd67a0b8524e2f1ab157cd2347ec0570..ad3467b32a58c9268f7667c1beea7e919e63212c 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -1184,6 +1184,16 @@ public class CraftEventFactory {
+@@ -1185,6 +1185,16 @@ public class CraftEventFactory {
return CraftItemStack.asNMSCopy(bitem);
}
diff --git a/Spigot-Server-Patches/0125-Optimize-World.isLoaded-BlockPosition-Z.patch b/Spigot-Server-Patches/0125-Optimize-World.isLoaded-BlockPosition-Z.patch
index fa5e04ac16..975991ca5a 100644
--- a/Spigot-Server-Patches/0125-Optimize-World.isLoaded-BlockPosition-Z.patch
+++ b/Spigot-Server-Patches/0125-Optimize-World.isLoaded-BlockPosition-Z.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Optimize World.isLoaded(BlockPosition)Z
Reduce method invocations for World.isLoaded(BlockPosition)Z
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 87a0e66029e10a22ea6e681c7d1e143b9bc5c2c8..5f23a7b952a5938ffa489bbf4f3d64caa8d0f4a6 100644
+index ab64a37d26f79ed081d0c84571106a7c2f9ddfe8..a28071a2855c72fd125eb48d67796791a5a40fe0 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -287,6 +287,11 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0128-Optimize-ItemStack.isEmpty.patch b/Spigot-Server-Patches/0128-Optimize-ItemStack.isEmpty.patch
index 6c4eed7d3a..7110c98c61 100644
--- a/Spigot-Server-Patches/0128-Optimize-ItemStack.isEmpty.patch
+++ b/Spigot-Server-Patches/0128-Optimize-ItemStack.isEmpty.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Optimize ItemStack.isEmpty()
Remove hashMap lookup every check, simplify code to remove ternary
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
-index a360711ea14983e8df34caa5edda80a015e6db23..c4d034c6a6ff176bc954c00c328512bdf67455a6 100644
+index 648ae6d9e8f3c7f4d5bbd442efda2ca7d2fc0c3b..a62c2307a1d0f93c830fb3b125f03dc58757b8e6 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -154,7 +154,7 @@ public final class ItemStack {
diff --git a/Spigot-Server-Patches/0130-Properly-fix-item-duplication-bug.patch b/Spigot-Server-Patches/0130-Properly-fix-item-duplication-bug.patch
index ee946ddf2d..2ebb80d9e9 100644
--- a/Spigot-Server-Patches/0130-Properly-fix-item-duplication-bug.patch
+++ b/Spigot-Server-Patches/0130-Properly-fix-item-duplication-bug.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Properly fix item duplication bug
Credit to prplz for figuring out the real issue
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index c1c858f9384eb6e952198e531633d0a571c39ac2..7d6b1893ae6b7a3e937f8f83fc222709c8120814 100644
+index 0d9a944d7fdf82c2b20a1238483b76fbe2b4f743..b94afac539a5d7a1e6ed39ef8f130385f8ea07b6 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1933,7 +1933,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0134-Provide-E-TE-Chunk-count-stat-methods.patch b/Spigot-Server-Patches/0134-Provide-E-TE-Chunk-count-stat-methods.patch
index 1c58ca5da7..4299ae2280 100644
--- a/Spigot-Server-Patches/0134-Provide-E-TE-Chunk-count-stat-methods.patch
+++ b/Spigot-Server-Patches/0134-Provide-E-TE-Chunk-count-stat-methods.patch
@@ -7,7 +7,7 @@ Provides counts without the ineffeciency of using .getEntities().size()
which creates copy of the collections.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index a6d892bab669d13767c43115cdbd99557181322d..ef3a539fd40555b1049131ee201569cabe2d6179 100644
+index cf8bb747cc404045cb35a3bed15884e50af7e20a..afc7263644c0bf45769dbdb6801d025c49e8d323 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -281,6 +281,48 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0135-Enforce-Sync-Player-Saves.patch b/Spigot-Server-Patches/0135-Enforce-Sync-Player-Saves.patch
index d98c82248d..0e35938a56 100644
--- a/Spigot-Server-Patches/0135-Enforce-Sync-Player-Saves.patch
+++ b/Spigot-Server-Patches/0135-Enforce-Sync-Player-Saves.patch
@@ -7,7 +7,7 @@ Saving players async is extremely dangerous. This will force it to main
the same way we handle async chunk loads.
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 7fb344d9ef8f5c7a6c6ed5e7256d55860726c6f2..bfe7848655498287e357593259e188f161292d3e 100644
+index 12b1ef7fb02e1c4c265f24a090fea10e59a02f67..8bc8c20f0cbf909bd11f360d14926ba29637f779 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -961,11 +961,13 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0137-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch b/Spigot-Server-Patches/0137-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch
index 2c38d50ee8..aed5f815b8 100644
--- a/Spigot-Server-Patches/0137-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch
+++ b/Spigot-Server-Patches/0137-ExperienceOrbs-API-for-Reason-Source-Triggering-play.patch
@@ -173,10 +173,10 @@ index c0c0187447976050ea57ae0c4bd62ba7f14c0f6b..95874526516291607a44ae2213d4d6d6
// CraftBukkit end
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 9086712e1206a980a10c7cc36d3ae3a0b8f8bc79..7e4b79fcee2b5e9a2c24e0372cda7d71f38b22e3 100644
+index 9618074cfba21a6ced4354df56ecd035521bbe69..ed25f93bdb62104f6114e1ecc5e62d5e55bc3b05 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -1488,7 +1488,8 @@ public abstract class EntityLiving extends Entity {
+@@ -1486,7 +1486,8 @@ public abstract class EntityLiving extends Entity {
int j = EntityExperienceOrb.getOrbValue(i);
i -= j;
@@ -278,7 +278,7 @@ index ba42ca08ca61832cb07bebcfa0b1e5422d7b30e9..623cd63711c6cb79dce7a46056e193fd
}
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index ef3a539fd40555b1049131ee201569cabe2d6179..81f014977b95056020e9695dd49cbbf45d61b8ea 100644
+index afc7263644c0bf45769dbdb6801d025c49e8d323..214e3d1a626a3a3ff523904d15aec1e351b9957b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -1817,7 +1817,7 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0138-Cap-Entity-Collisions.patch b/Spigot-Server-Patches/0138-Cap-Entity-Collisions.patch
index 1c0ad7590b..ade65b34bb 100644
--- a/Spigot-Server-Patches/0138-Cap-Entity-Collisions.patch
+++ b/Spigot-Server-Patches/0138-Cap-Entity-Collisions.patch
@@ -39,10 +39,10 @@ index bd270ea92404c2055c09324988e1ec28109a8815..912f5be0264b604df175f5825765b03b
// Spigot end
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 7e4b79fcee2b5e9a2c24e0372cda7d71f38b22e3..0799f3b025c25204fddfd818b314ec1452a1ba1a 100644
+index ed25f93bdb62104f6114e1ecc5e62d5e55bc3b05..8e5713b4a0ce5d6039a4718d2380a0bf7928e72d 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -2778,8 +2778,11 @@ public abstract class EntityLiving extends Entity {
+@@ -2776,8 +2776,11 @@ public abstract class EntityLiving extends Entity {
}
}
diff --git a/Spigot-Server-Patches/0143-Add-system-property-to-disable-book-size-limits.patch b/Spigot-Server-Patches/0143-Add-system-property-to-disable-book-size-limits.patch
index fd9be7e12c..96849e6ed9 100644
--- a/Spigot-Server-Patches/0143-Add-system-property-to-disable-book-size-limits.patch
+++ b/Spigot-Server-Patches/0143-Add-system-property-to-disable-book-size-limits.patch
@@ -11,7 +11,7 @@ to make books with as much data as they want. Do not use this without
limiting incoming data from packets in some other way.
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java
-index 38247fe6ca8ef1cad40883eb71d413c507a84f3e..8f59608ed9494e2ec2587c4385b4d6c72e4db53b 100644
+index d06262eb474ebd105b075282a1d70f2dfe84b9c3..26ff2f80c9ea4985d5a51eaaa1da9bd13648f2dd 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaBook.java
@@ -35,6 +35,7 @@ public class CraftMetaBook extends CraftMetaItem implements BookMeta {
diff --git a/Spigot-Server-Patches/0146-Use-TerminalConsoleAppender-for-console-improvements.patch b/Spigot-Server-Patches/0146-Use-TerminalConsoleAppender-for-console-improvements.patch
index cf1139180d..871305c843 100644
--- a/Spigot-Server-Patches/0146-Use-TerminalConsoleAppender-for-console-improvements.patch
+++ b/Spigot-Server-Patches/0146-Use-TerminalConsoleAppender-for-console-improvements.patch
@@ -245,7 +245,7 @@ index 28478370fc182751178f7dd6c20435218174c700..737159212c5139ba07dca2484c6cce89
public KeyPair getKeyPair() {
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 27a79ee13dc65f389136dc1cc1546259d9a89f9c..b680c6c7d8f2349928b9eebfd62f4312ec8d1180 100644
+index ae75b114a1aee1bf267c678c581bbde4e875f963..6f4a9603c30433e938ea73e69c8f7a6072f347da 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -79,8 +79,7 @@ public abstract class PlayerList {
@@ -259,7 +259,7 @@ index 27a79ee13dc65f389136dc1cc1546259d9a89f9c..b680c6c7d8f2349928b9eebfd62f4312
this.k = new GameProfileBanList(PlayerList.b);
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index bd06db4fa4ea5d8db45f4f0bc1222bb1da8a3230..aa7fd35d6fab1cbbf4c4cd0575bb5be788755fc0 100644
+index e1f205ae83ed537bc7f73647c1518e383e046de0..0d4fe1690c375fb84d428f40655e3af2cb4baae5 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -46,7 +46,7 @@ import java.util.function.Consumer;
@@ -286,7 +286,7 @@ index bd06db4fa4ea5d8db45f4f0bc1222bb1da8a3230..aa7fd35d6fab1cbbf4c4cd0575bb5be7
@Override
public PluginCommand getPluginCommand(String name) {
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
-index b1157195cf00a05d3417bccf781fdf58ff9919b6..b77b051137f66106bac396debe0c0542ac86e257 100644
+index 46ccad51bb60be735cee5f22fef234298882c6e4..2c0df8892461be6a139a36964f52c85fb8e28bcb 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -12,7 +12,7 @@ import java.util.logging.Level;
diff --git a/Spigot-Server-Patches/0151-Add-UnknownCommandEvent.patch b/Spigot-Server-Patches/0151-Add-UnknownCommandEvent.patch
index a630962a8b..e130c6ebae 100644
--- a/Spigot-Server-Patches/0151-Add-UnknownCommandEvent.patch
+++ b/Spigot-Server-Patches/0151-Add-UnknownCommandEvent.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add UnknownCommandEvent
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index aa7fd35d6fab1cbbf4c4cd0575bb5be788755fc0..33727f110d8025394536434fa2b474f653a1f16d 100644
+index 0d4fe1690c375fb84d428f40655e3af2cb4baae5..30b0fe2f9168de8549481909e5d32cbd8ce4d09d 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -105,6 +105,7 @@ import net.minecraft.server.WorldNBTStorage;
diff --git a/Spigot-Server-Patches/0160-ProfileWhitelistVerifyEvent.patch b/Spigot-Server-Patches/0160-ProfileWhitelistVerifyEvent.patch
index cff4971987..68338e1861 100644
--- a/Spigot-Server-Patches/0160-ProfileWhitelistVerifyEvent.patch
+++ b/Spigot-Server-Patches/0160-ProfileWhitelistVerifyEvent.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] ProfileWhitelistVerifyEvent
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index b680c6c7d8f2349928b9eebfd62f4312ec8d1180..9d05320b132679ccd511422c2c187b0d5fa89c2c 100644
+index 6f4a9603c30433e938ea73e69c8f7a6072f347da..628a5f109d6c44ba97876c42aefb5570deef6eb3 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -540,9 +540,9 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0164-Fix-MC-117075-TE-Unload-Lag-Spike.patch b/Spigot-Server-Patches/0164-Fix-MC-117075-TE-Unload-Lag-Spike.patch
index ec2290bc44..3cec2a2f85 100644
--- a/Spigot-Server-Patches/0164-Fix-MC-117075-TE-Unload-Lag-Spike.patch
+++ b/Spigot-Server-Patches/0164-Fix-MC-117075-TE-Unload-Lag-Spike.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Fix MC-117075: TE Unload Lag Spike
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 5f23a7b952a5938ffa489bbf4f3d64caa8d0f4a6..15b1d9a82f8ced4d53a7848fa3cfdb835fbc3e5b 100644
+index a28071a2855c72fd125eb48d67796791a5a40fe0..f182fb60f572fe6e1f055cdb3ce28581a46783ad 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -709,7 +709,11 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0173-Expose-client-protocol-version-and-virtual-host.patch b/Spigot-Server-Patches/0173-Expose-client-protocol-version-and-virtual-host.patch
index 82bfcbb451..f1a83c7bf5 100644
--- a/Spigot-Server-Patches/0173-Expose-client-protocol-version-and-virtual-host.patch
+++ b/Spigot-Server-Patches/0173-Expose-client-protocol-version-and-virtual-host.patch
@@ -103,7 +103,7 @@ index 4f008e4723d2cb0bcabb2d5621203d63c40c4923..8545146fb1f093f821e3b966d9337049
return this.a;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index e7c42fb4fd1235a934c16f4cccc1b1a66b3672a0..758981757996a8c9aa5066640e5b6c293bb7fc64 100644
+index b03d7747ca582c212534b061369564daa74f5022..0121f5009b31b6d9cad0e89264fb78833177d83b 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -188,6 +188,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
diff --git a/Spigot-Server-Patches/0175-Send-attack-SoundEffects-only-to-players-who-can-see.patch b/Spigot-Server-Patches/0175-Send-attack-SoundEffects-only-to-players-who-can-see.patch
index 5fc86613f8..fed450f2f2 100644
--- a/Spigot-Server-Patches/0175-Send-attack-SoundEffects-only-to-players-who-can-see.patch
+++ b/Spigot-Server-Patches/0175-Send-attack-SoundEffects-only-to-players-who-can-see.patch
@@ -72,7 +72,7 @@ index 69c0a4c7bfb1c753d544dcd074ad832d3e5ef3a0..eaed020982bd19dab72872849170fa62
entity.extinguish();
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 15b1d9a82f8ced4d53a7848fa3cfdb835fbc3e5b..8b6667eb3b1976b4c7ed22060e55ad5c5b8179ce 100644
+index f182fb60f572fe6e1f055cdb3ce28581a46783ad..16a87029aaa34601bc312db29925af1b0e568247 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -646,6 +646,11 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0176-Option-for-maximum-exp-value-when-merging-orbs.patch b/Spigot-Server-Patches/0176-Option-for-maximum-exp-value-when-merging-orbs.patch
index dc2b8d99a5..b7d3679ebe 100644
--- a/Spigot-Server-Patches/0176-Option-for-maximum-exp-value-when-merging-orbs.patch
+++ b/Spigot-Server-Patches/0176-Option-for-maximum-exp-value-when-merging-orbs.patch
@@ -20,10 +20,10 @@ index e30f48caf2ce4f48f371b2594b765c27bc9e9778..2d8b354d707e8b5b0e7cd644fb93bc8f
+ }
}
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index ac5f492fd0d837da150e415bc007c10fe7ee3714..3e0b51db3d90b0039eee3375ac0fa4f96712b922 100644
+index ad3467b32a58c9268f7667c1beea7e919e63212c..3b0402c1160f66b745be3d1fc47ec5bd8969a793 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -577,16 +577,32 @@ public class CraftEventFactory {
+@@ -578,16 +578,32 @@ public class CraftEventFactory {
EntityExperienceOrb xp = (EntityExperienceOrb) entity;
double radius = world.spigotConfig.expMerge;
if (radius > 0) {
diff --git a/Spigot-Server-Patches/0177-Add-PlayerArmorChangeEvent.patch b/Spigot-Server-Patches/0177-Add-PlayerArmorChangeEvent.patch
index cc14fa55c0..7e2f8c9162 100644
--- a/Spigot-Server-Patches/0177-Add-PlayerArmorChangeEvent.patch
+++ b/Spigot-Server-Patches/0177-Add-PlayerArmorChangeEvent.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add PlayerArmorChangeEvent
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 7ec1a572efd99928e8aae9b75c0eed73430aa337..26832d31cc64d26a9ca61a3bad21424ed366c74c 100644
+index fc4c7dc452450b7a4253c344284a056425109cc8..35ec16b2bb0491e22ca834abc762f03fafdc764a 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1,5 +1,6 @@
@@ -15,7 +15,7 @@ index 7ec1a572efd99928e8aae9b75c0eed73430aa337..26832d31cc64d26a9ca61a3bad21424e
import com.google.common.base.Objects;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap;
-@@ -2523,6 +2524,13 @@ public abstract class EntityLiving extends Entity {
+@@ -2521,6 +2522,13 @@ public abstract class EntityLiving extends Entity {
ItemStack itemstack1 = this.getEquipment(enumitemslot);
if (!ItemStack.matches(itemstack1, itemstack)) {
diff --git a/Spigot-Server-Patches/0179-use-CB-BlockState-implementations-for-captured-block.patch b/Spigot-Server-Patches/0179-use-CB-BlockState-implementations-for-captured-block.patch
index 4a0637be09..f45a9266cc 100644
--- a/Spigot-Server-Patches/0179-use-CB-BlockState-implementations-for-captured-block.patch
+++ b/Spigot-Server-Patches/0179-use-CB-BlockState-implementations-for-captured-block.patch
@@ -18,7 +18,7 @@ the blockstate that will be valid for restoration, as opposed to dropping
information on restoration when the event is cancelled.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 8b6667eb3b1976b4c7ed22060e55ad5c5b8179ce..324967c892ff8878326af4229668fcbde37ef202 100644
+index 16a87029aaa34601bc312db29925af1b0e568247..9c3c0a6ff57a8d1788cf6d7cd91571f4212eb701 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -71,7 +71,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0184-ExperienceOrbMergeEvent.patch b/Spigot-Server-Patches/0184-ExperienceOrbMergeEvent.patch
index 8278777442..4a10151bd7 100644
--- a/Spigot-Server-Patches/0184-ExperienceOrbMergeEvent.patch
+++ b/Spigot-Server-Patches/0184-ExperienceOrbMergeEvent.patch
@@ -8,10 +8,10 @@ Plugins can cancel this if they want to ensure experience orbs do not lose impor
metadata such as spawn reason, or conditionally move data from source to target.
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 3e0b51db3d90b0039eee3375ac0fa4f96712b922..7cadd8d55d0537b31969f421370c830e8925bed2 100644
+index 3b0402c1160f66b745be3d1fc47ec5bd8969a793..f26c68157cc97d28c309787c63a35d41c0094c29 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -587,7 +587,7 @@ public class CraftEventFactory {
+@@ -588,7 +588,7 @@ public class CraftEventFactory {
if (e instanceof EntityExperienceOrb) {
EntityExperienceOrb loopItem = (EntityExperienceOrb) e;
// Paper start
diff --git a/Spigot-Server-Patches/0185-Ability-to-apply-mending-to-XP-API.patch b/Spigot-Server-Patches/0185-Ability-to-apply-mending-to-XP-API.patch
index 4400cce976..8375369aca 100644
--- a/Spigot-Server-Patches/0185-Ability-to-apply-mending-to-XP-API.patch
+++ b/Spigot-Server-Patches/0185-Ability-to-apply-mending-to-XP-API.patch
@@ -43,7 +43,7 @@ index e7fb982913f391bafd608c4626086cd9cab7fad7..7f2d8de12473c5413bbfc10ea0947d6a
return i * 2;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 6b6f7b47747e78f5c0b91bf25ca369e964440b49..d3db77324e06d7cd39f05b664e987cce7a5a06e5 100644
+index 0121f5009b31b6d9cad0e89264fb78833177d83b..c1192c646a41a906fcb09c9b4aef611b451b1e26 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1079,8 +1079,37 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
diff --git a/Spigot-Server-Patches/0188-PlayerNaturallySpawnCreaturesEvent.patch b/Spigot-Server-Patches/0188-PlayerNaturallySpawnCreaturesEvent.patch
index e44d3c86fe..5e752bd19e 100644
--- a/Spigot-Server-Patches/0188-PlayerNaturallySpawnCreaturesEvent.patch
+++ b/Spigot-Server-Patches/0188-PlayerNaturallySpawnCreaturesEvent.patch
@@ -29,7 +29,7 @@ index 7abd3683f9cc21b90dc74739954de2decddf6478..6921def2dc8dd7f2b8ba9d46ab697a9f
Optional<Chunk> optional = ((Either) playerchunk.a().getNow(PlayerChunk.UNLOADED_CHUNK)).left();
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 7d6b1893ae6b7a3e937f8f83fc222709c8120814..d2c61467b8373444609a6aad9688c5b747547d9c 100644
+index b94afac539a5d7a1e6ed39ef8f130385f8ea07b6..ef0f8a66eefefce5f78ff35833bfe45437885e0b 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1,5 +1,6 @@
diff --git a/Spigot-Server-Patches/0192-Add-ArmorStand-Item-Meta.patch b/Spigot-Server-Patches/0192-Add-ArmorStand-Item-Meta.patch
index d5e982e37f..68715c71cc 100644
--- a/Spigot-Server-Patches/0192-Add-ArmorStand-Item-Meta.patch
+++ b/Spigot-Server-Patches/0192-Add-ArmorStand-Item-Meta.patch
@@ -264,7 +264,7 @@ index 1a3549480be056368bd6c9d1a98335b3bb07d1d5..25b310ad3f1bcefd04406b7efd1ffa82
+ // Paper end
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
-index be39fbc1433e03e2f0e562095fea590691d7a062..c0858aeac0c9709a79590a0ca8db32d64efe7523 100644
+index 55a3d9d3805bd2b14f853faecd47e572094d1c64..7d5c3a37c497e326ea0bb4c1725fd2d3dc857790 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -1430,6 +1430,14 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
diff --git a/Spigot-Server-Patches/0202-Player.setPlayerProfile-API.patch b/Spigot-Server-Patches/0202-Player.setPlayerProfile-API.patch
index 98fda59124..29d7c59e32 100644
--- a/Spigot-Server-Patches/0202-Player.setPlayerProfile-API.patch
+++ b/Spigot-Server-Patches/0202-Player.setPlayerProfile-API.patch
@@ -48,7 +48,7 @@ index 80a21dbc05ed3007f2e827f7a320131244c3044b..e0f0a1e91a037f93b239e779aa8fd92b
uniqueId = i.getId();
// Paper end
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index d3db77324e06d7cd39f05b664e987cce7a5a06e5..172b11fc8473ee8cc18c7638cfdaa193df0e2e5e 100644
+index c1192c646a41a906fcb09c9b4aef611b451b1e26..649c773795744956da0c5a0f8971f3a2b98794c1 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1,6 +1,8 @@
diff --git a/Spigot-Server-Patches/0208-Flag-to-disable-the-channel-limit.patch b/Spigot-Server-Patches/0208-Flag-to-disable-the-channel-limit.patch
index 7567694897..9208815b0d 100644
--- a/Spigot-Server-Patches/0208-Flag-to-disable-the-channel-limit.patch
+++ b/Spigot-Server-Patches/0208-Flag-to-disable-the-channel-limit.patch
@@ -9,7 +9,7 @@ e.g. servers which allow and support the usage of mod packs.
provide an optional flag to disable this check, at your own risk.
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 172b11fc8473ee8cc18c7638cfdaa193df0e2e5e..13d03e8fa783ac38ea2dd60529f395a3fd3ed96d 100644
+index 649c773795744956da0c5a0f8971f3a2b98794c1..995d8e582a751e71516858a68bde3a34370f7d87 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -144,6 +144,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
diff --git a/Spigot-Server-Patches/0214-Block-Enderpearl-Travel-Exploit.patch b/Spigot-Server-Patches/0214-Block-Enderpearl-Travel-Exploit.patch
index f988c17ca0..a17b0976b4 100644
--- a/Spigot-Server-Patches/0214-Block-Enderpearl-Travel-Exploit.patch
+++ b/Spigot-Server-Patches/0214-Block-Enderpearl-Travel-Exploit.patch
@@ -27,7 +27,7 @@ index 873f81c74a94f6d76edd45e34ddc476dc525b47c..69009246f12cc3acb0055af746e01097
+ }
}
diff --git a/src/main/java/net/minecraft/server/IProjectile.java b/src/main/java/net/minecraft/server/IProjectile.java
-index 8ce491fc155450a94582f94c78c8c296f8eeb864..cdf80e50de0840002f62f4c1df4fbcc4e13675d7 100644
+index acdc5dcb18ade293923ef37dc8c29e96c0213942..dd4595ed07821f996e5a677dad5882656e19e7a2 100644
--- a/src/main/java/net/minecraft/server/IProjectile.java
+++ b/src/main/java/net/minecraft/server/IProjectile.java
@@ -48,6 +48,7 @@ public abstract class IProjectile extends Entity {
diff --git a/Spigot-Server-Patches/0215-Expand-World.spawnParticle-API-and-add-Builder.patch b/Spigot-Server-Patches/0215-Expand-World.spawnParticle-API-and-add-Builder.patch
index e21bb4dd54..e584c43eda 100644
--- a/Spigot-Server-Patches/0215-Expand-World.spawnParticle-API-and-add-Builder.patch
+++ b/Spigot-Server-Patches/0215-Expand-World.spawnParticle-API-and-add-Builder.patch
@@ -10,7 +10,7 @@ Adds an option to control the force mode of the particle.
This adds a new Builder API which is much friendlier to use.
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 318345cddb3ecc102d88a6879815af55d05814ee..089e7c301d48a2d4302ca3d6bb1235e6207363b7 100644
+index 1ac19271391d437160e02983fbc4d707205c8893..5ccd9457f81dab2b2cb821960c0557c925623b50 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -56,7 +56,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0219-Allow-spawning-Item-entities-with-World.spawnEntity.patch b/Spigot-Server-Patches/0219-Allow-spawning-Item-entities-with-World.spawnEntity.patch
index 0ef27ea3a3..31fbe5481e 100644
--- a/Spigot-Server-Patches/0219-Allow-spawning-Item-entities-with-World.spawnEntity.patch
+++ b/Spigot-Server-Patches/0219-Allow-spawning-Item-entities-with-World.spawnEntity.patch
@@ -8,7 +8,7 @@ This API has more capabilities than .dropItem with the Consumer function
Item can be set inside of the Consumer pre spawn function.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 0a280692e6dc6b0a9e47bfd12f70774d49628398..5b4afa9998c7e156353abe80e3ccc3efb4a2d390 100644
+index 14e495f4889383c789acb880cca726c81c366d26..1b04cb1c80f069bbe288857c5bd94cd7754ba49e 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -1499,6 +1499,10 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0221-ItemStack-getMaxItemUseDuration.patch b/Spigot-Server-Patches/0221-ItemStack-getMaxItemUseDuration.patch
index d96b867b61..0ef860b0f8 100644
--- a/Spigot-Server-Patches/0221-ItemStack-getMaxItemUseDuration.patch
+++ b/Spigot-Server-Patches/0221-ItemStack-getMaxItemUseDuration.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] ItemStack#getMaxItemUseDuration
Allows you to determine how long it takes to use a usable/consumable item
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
-index c4d034c6a6ff176bc954c00c328512bdf67455a6..7b2010ec4955fb5788c60178c6e306ea3098e9ba 100644
+index a62c2307a1d0f93c830fb3b125f03dc58757b8e6..d5350a382a70382a433e29a7c5a8879336c7568b 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -552,6 +552,7 @@ public final class ItemStack {
diff --git a/Spigot-Server-Patches/0227-Make-shield-blocking-delay-configurable.patch b/Spigot-Server-Patches/0227-Make-shield-blocking-delay-configurable.patch
index 43064f93fa..2b5c251881 100644
--- a/Spigot-Server-Patches/0227-Make-shield-blocking-delay-configurable.patch
+++ b/Spigot-Server-Patches/0227-Make-shield-blocking-delay-configurable.patch
@@ -19,10 +19,10 @@ index 69009246f12cc3acb0055af746e01097fa668e1b..35075ffac394153e28039809e0ed48fe
+ }
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 26832d31cc64d26a9ca61a3bad21424ed366c74c..2ffc8eb4615abfaa6a9e99c45ea436cdf6a461c8 100644
+index 35ec16b2bb0491e22ca834abc762f03fafdc764a..2fcae52461794f51d1ec0e3ca4817da026d3ae24 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -3171,7 +3171,7 @@ public abstract class EntityLiving extends Entity {
+@@ -3169,7 +3169,7 @@ public abstract class EntityLiving extends Entity {
if (this.isHandRaised() && !this.activeItem.isEmpty()) {
Item item = this.activeItem.getItem();
@@ -31,7 +31,7 @@ index 26832d31cc64d26a9ca61a3bad21424ed366c74c..2ffc8eb4615abfaa6a9e99c45ea436cd
} else {
return false;
}
-@@ -3423,4 +3423,15 @@ public abstract class EntityLiving extends Entity {
+@@ -3421,4 +3421,15 @@ public abstract class EntityLiving extends Entity {
public void broadcastItemBreak(EnumHand enumhand) {
this.broadcastItemBreak(enumhand == EnumHand.MAIN_HAND ? EnumItemSlot.MAINHAND : EnumItemSlot.OFFHAND);
}
diff --git a/Spigot-Server-Patches/0228-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch b/Spigot-Server-Patches/0228-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch
index 794dd655eb..69070cfaed 100644
--- a/Spigot-Server-Patches/0228-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch
+++ b/Spigot-Server-Patches/0228-EntityShootBowEvent-consumeArrow-and-getArrowItem-AP.patch
@@ -72,10 +72,10 @@ index 1592e94c78611a4b968bfb24daf68570e778fadd..31c80bb0a2e403c34fb9cd4b3ee4e903
event.getProjectile().remove();
return;
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 7cadd8d55d0537b31969f421370c830e8925bed2..5bcf38d3fcfa569c50d66ed67ad22db7e7d36207 100644
+index f26c68157cc97d28c309787c63a35d41c0094c29..8ec23b8eea3a5e27fb87f43aed12273b1c3f641a 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -505,16 +505,16 @@ public class CraftEventFactory {
+@@ -506,16 +506,16 @@ public class CraftEventFactory {
/**
* EntityShootBowEvent
*/
diff --git a/Spigot-Server-Patches/0231-Implement-EntityKnockbackByEntityEvent.patch b/Spigot-Server-Patches/0231-Implement-EntityKnockbackByEntityEvent.patch
index ee17ade14b..657df24ad4 100644
--- a/Spigot-Server-Patches/0231-Implement-EntityKnockbackByEntityEvent.patch
+++ b/Spigot-Server-Patches/0231-Implement-EntityKnockbackByEntityEvent.patch
@@ -41,7 +41,7 @@ index a6aa7a1a8da787604b2d8f3f9ea119d4b6bc188d..bb831658d91ffa7d78cd8597509e61f3
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 2ffc8eb4615abfaa6a9e99c45ea436cdf6a461c8..a62f769ab509edd30717cfca785449acecdf295e 100644
+index 2fcae52461794f51d1ec0e3ca4817da026d3ae24..c549eda057b58b985bef98fabeaa642280cff1c3 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1239,7 +1239,7 @@ public abstract class EntityLiving extends Entity {
@@ -62,7 +62,7 @@ index 2ffc8eb4615abfaa6a9e99c45ea436cdf6a461c8..a62f769ab509edd30717cfca785449ac
}
private boolean f(DamageSource damagesource) {
-@@ -1524,6 +1524,11 @@ public abstract class EntityLiving extends Entity {
+@@ -1522,6 +1522,11 @@ public abstract class EntityLiving extends Entity {
}
public void a(float f, double d0, double d1) {
@@ -74,7 +74,7 @@ index 2ffc8eb4615abfaa6a9e99c45ea436cdf6a461c8..a62f769ab509edd30717cfca785449ac
f = (float) ((double) f * (1.0D - this.b(GenericAttributes.KNOCKBACK_RESISTANCE)));
if (f > 0.0F) {
this.impulse = true;
-@@ -1531,6 +1536,16 @@ public abstract class EntityLiving extends Entity {
+@@ -1529,6 +1534,16 @@ public abstract class EntityLiving extends Entity {
Vec3D vec3d1 = (new Vec3D(d0, 0.0D, d1)).d().a((double) f);
this.setMot(vec3d.x / 2.0D - vec3d1.x, this.onGround ? Math.min(0.4D, vec3d.y / 2.0D + (double) f) : vec3d.y, vec3d.z / 2.0D - vec3d1.z);
diff --git a/Spigot-Server-Patches/0232-Expand-Explosions-API.patch b/Spigot-Server-Patches/0232-Expand-Explosions-API.patch
index a2adaddbef..e8e03b86c0 100644
--- a/Spigot-Server-Patches/0232-Expand-Explosions-API.patch
+++ b/Spigot-Server-Patches/0232-Expand-Explosions-API.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Expand Explosions API
Add Entity as a Source capability, and add more API choices, and on Location.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 5b4afa9998c7e156353abe80e3ccc3efb4a2d390..efb569b5add5dc7456665fccccc2396d7c3af046 100644
+index 1b04cb1c80f069bbe288857c5bd94cd7754ba49e..a8c88c676dacdf3397ce036ae2613ef0bcb7dcc5 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -891,6 +891,11 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0233-LivingEntity-Hand-Raised-Item-Use-API.patch b/Spigot-Server-Patches/0233-LivingEntity-Hand-Raised-Item-Use-API.patch
index a39fa8287f..509fe9cbd9 100644
--- a/Spigot-Server-Patches/0233-LivingEntity-Hand-Raised-Item-Use-API.patch
+++ b/Spigot-Server-Patches/0233-LivingEntity-Hand-Raised-Item-Use-API.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] LivingEntity Hand Raised/Item Use API
How long an entity has raised hands to charge an attack or use an item
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index a62f769ab509edd30717cfca785449acecdf295e..92fcaf425b5ef398fcac6ecf115502a5cf657ebb 100644
+index c549eda057b58b985bef98fabeaa642280cff1c3..b7df37450c1fa4cdefa8267005d052180291d5ba 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -118,7 +118,7 @@ public abstract class EntityLiving extends Entity {
@@ -18,7 +18,7 @@ index a62f769ab509edd30717cfca785449acecdf295e..92fcaf425b5ef398fcac6ecf115502a5
protected int bk;
protected int bl;
private BlockPosition bE;
-@@ -3154,10 +3154,12 @@ public abstract class EntityLiving extends Entity {
+@@ -3152,10 +3152,12 @@ public abstract class EntityLiving extends Entity {
return this.activeItem;
}
diff --git a/Spigot-Server-Patches/0236-Implement-World.getEntity-UUID-API.patch b/Spigot-Server-Patches/0236-Implement-World.getEntity-UUID-API.patch
index 277d25275b..1bd8606751 100644
--- a/Spigot-Server-Patches/0236-Implement-World.getEntity-UUID-API.patch
+++ b/Spigot-Server-Patches/0236-Implement-World.getEntity-UUID-API.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Implement World.getEntity(UUID) API
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index efb569b5add5dc7456665fccccc2396d7c3af046..0bfe87fe4ff0fbb94a3339ab8f8d62ca32d659a0 100644
+index a8c88c676dacdf3397ce036ae2613ef0bcb7dcc5..b1e51fa8593cd9459058a557f1b506817879bdd4 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -1305,6 +1305,15 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0237-InventoryCloseEvent-Reason-API.patch b/Spigot-Server-Patches/0237-InventoryCloseEvent-Reason-API.patch
index 917af9478f..9396400529 100644
--- a/Spigot-Server-Patches/0237-InventoryCloseEvent-Reason-API.patch
+++ b/Spigot-Server-Patches/0237-InventoryCloseEvent-Reason-API.patch
@@ -155,7 +155,7 @@ index fe8a21202340c5892f5166ec294212c6e44ed3a5..00d67c9911c52ddcdf48fda7998bcd2a
@Override
public boolean isBlocking() {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 13d03e8fa783ac38ea2dd60529f395a3fd3ed96d..62e62226bc11df7de80cd1029c7d549596cd760d 100644
+index 995d8e582a751e71516858a68bde3a34370f7d87..59b3baaa84c2f1db2d17c677c9eb0299b1494329 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -797,7 +797,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -168,10 +168,10 @@ index 13d03e8fa783ac38ea2dd60529f395a3fd3ed96d..62e62226bc11df7de80cd1029c7d5495
// Check if the fromWorld and toWorld are the same.
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 5bcf38d3fcfa569c50d66ed67ad22db7e7d36207..72f495327fe56e7d7ba41e39e99a69622a6861b2 100644
+index 8ec23b8eea3a5e27fb87f43aed12273b1c3f641a..56ec85748aa8ea3956b3e8f67f27d9c4916e6082 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -1334,12 +1334,22 @@ public class CraftEventFactory {
+@@ -1335,12 +1335,22 @@ public class CraftEventFactory {
return event;
}
diff --git a/Spigot-Server-Patches/0242-Re-add-vanilla-entity-warnings-for-duplicates.patch b/Spigot-Server-Patches/0242-Re-add-vanilla-entity-warnings-for-duplicates.patch
index 9f56e0a634..e5b9247967 100644
--- a/Spigot-Server-Patches/0242-Re-add-vanilla-entity-warnings-for-duplicates.patch
+++ b/Spigot-Server-Patches/0242-Re-add-vanilla-entity-warnings-for-duplicates.patch
@@ -8,7 +8,7 @@ These are a critical sign that somethin went wrong, and you've lost some data...
We should kind of know about these things you know.
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index b7253c4201d601d1e2e354af5d2b17421629d48e..4747c35aee5e3c4cc8b1bcfd63f9d9c43cbef8fc 100644
+index f8139831254e676c2142a39858e8c0629943badc..161d489604faa34245bb5c831b1ee9e6d2a83dd4 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -956,7 +956,8 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0246-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch b/Spigot-Server-Patches/0246-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch
index 39a74907ec..a2ec272854 100644
--- a/Spigot-Server-Patches/0246-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch
+++ b/Spigot-Server-Patches/0246-Add-Debug-Entities-option-to-debug-dupe-uuid-issues.patch
@@ -52,7 +52,7 @@ index 9c3c0a6ff57a8d1788cf6d7cd91571f4212eb701..530f204b9bcacdac127a44554e06aaba
public boolean captureBlockStates = false;
public boolean captureTreeGeneration = false;
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 4747c35aee5e3c4cc8b1bcfd63f9d9c43cbef8fc..cd6fa624205ab18f9c5a8fd700de3eccb7ef471e 100644
+index 161d489604faa34245bb5c831b1ee9e6d2a83dd4..4907bfc3110dbf17a7d4ff255c04bf39697342f6 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -83,6 +83,9 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0251-Option-to-prevent-armor-stands-from-doing-entity-loo.patch b/Spigot-Server-Patches/0251-Option-to-prevent-armor-stands-from-doing-entity-loo.patch
index d4131ade17..4198002581 100644
--- a/Spigot-Server-Patches/0251-Option-to-prevent-armor-stands-from-doing-entity-loo.patch
+++ b/Spigot-Server-Patches/0251-Option-to-prevent-armor-stands-from-doing-entity-loo.patch
@@ -19,7 +19,7 @@ index d6a3d882e375ac5a2b6ec8920532db615f4fe4ef..14bb9d843f05058cae5cc64de8149d2c
+ }
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 5540fc6eee8115400774b7a792b9d3b45eb01e34..2e19fbddb6ede4abf02c79b4e72d11f89db05433 100644
+index 530f204b9bcacdac127a44554e06aabac3897766..26f6b50b202bc13cfb85c2d57580d6fff163e252 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -842,6 +842,13 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0252-Vanished-players-don-t-have-rights.patch b/Spigot-Server-Patches/0252-Vanished-players-don-t-have-rights.patch
index adb94d4d03..e33e6d30b4 100644
--- a/Spigot-Server-Patches/0252-Vanished-players-don-t-have-rights.patch
+++ b/Spigot-Server-Patches/0252-Vanished-players-don-t-have-rights.patch
@@ -42,7 +42,7 @@ index 5ac7957016d1ca6bc78ced0bcf3767d358677f45..ca92579304d060e2b718aab6f3e3f006
if (!this.noclip) {
diff --git a/src/main/java/net/minecraft/server/IProjectile.java b/src/main/java/net/minecraft/server/IProjectile.java
-index cdf80e50de0840002f62f4c1df4fbcc4e13675d7..ea5f5845a8d202e62da3ae1bfb1e4dbd7f5e185e 100644
+index dd4595ed07821f996e5a677dad5882656e19e7a2..f544178fa6ffd95c41cb721440d3a701c5c4331c 100644
--- a/src/main/java/net/minecraft/server/IProjectile.java
+++ b/src/main/java/net/minecraft/server/IProjectile.java
@@ -129,8 +129,14 @@ public abstract class IProjectile extends Entity {
@@ -108,7 +108,7 @@ index 86f6f082fe2991ea9065b09c9680b76ca1cf7154..b6e2a3d8d0cf510f497c6f974356fafa
if (operatorboolean.apply(false, false)) {
throw (IllegalArgumentException) SystemUtils.c(new IllegalArgumentException());
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 2e19fbddb6ede4abf02c79b4e72d11f89db05433..ca3e831e3191dd8ffe7f2b6ab9ecc05acfe1b0af 100644
+index 26f6b50b202bc13cfb85c2d57580d6fff163e252..9b6912f6e7b3c289948325a6985d9c961a8a8e30 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -172,6 +172,46 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@@ -159,10 +159,10 @@ index 2e19fbddb6ede4abf02c79b4e72d11f89db05433..ca3e831e3191dd8ffe7f2b6ab9ecc05a
public boolean s_() {
return this.isClientSide;
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 72f495327fe56e7d7ba41e39e99a69622a6861b2..cf25906786e246cb8dfdb5f2cb39f6dc08c4d7ca 100644
+index 56ec85748aa8ea3956b3e8f67f27d9c4916e6082..2aa843b1f43540b92b5ba5b700203c71f16276fa 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -1205,6 +1205,14 @@ public class CraftEventFactory {
+@@ -1206,6 +1206,14 @@ public class CraftEventFactory {
Projectile projectile = (Projectile) entity.getBukkitEntity();
org.bukkit.entity.Entity collided = position.getEntity().getBukkitEntity();
com.destroystokyo.paper.event.entity.ProjectileCollideEvent event = new com.destroystokyo.paper.event.entity.ProjectileCollideEvent(projectile, collided);
diff --git a/Spigot-Server-Patches/0257-Prevent-Saving-Bad-entities-to-chunks.patch b/Spigot-Server-Patches/0257-Prevent-Saving-Bad-entities-to-chunks.patch
index f1025edb6d..466f028c4d 100644
--- a/Spigot-Server-Patches/0257-Prevent-Saving-Bad-entities-to-chunks.patch
+++ b/Spigot-Server-Patches/0257-Prevent-Saving-Bad-entities-to-chunks.patch
@@ -80,7 +80,7 @@ index 28039aa8421207ce04840cc90e03d21bc8b7269f..17b8c4445af2bd2ed907d05ed3c396d4
public static ChunkStatus.Type a(@Nullable NBTTagCompound nbttagcompound) {
if (nbttagcompound != null) {
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index cd6fa624205ab18f9c5a8fd700de3eccb7ef471e..bbc0f1b7b363f21e861be5b187d01aed9a89597c 100644
+index 4907bfc3110dbf17a7d4ff255c04bf39697342f6..fb1e774f5868da170891de7183b63dc3a89ca935 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -999,6 +999,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0259-Ignore-Dead-Entities-in-entityList-iteration.patch b/Spigot-Server-Patches/0259-Ignore-Dead-Entities-in-entityList-iteration.patch
index 0b524598cf..c32c8a5919 100644
--- a/Spigot-Server-Patches/0259-Ignore-Dead-Entities-in-entityList-iteration.patch
+++ b/Spigot-Server-Patches/0259-Ignore-Dead-Entities-in-entityList-iteration.patch
@@ -63,7 +63,7 @@ index b0338278f3cfecdb30e1d2febf1ff2a04d0cc66d..55f8863f823836065f4de8240bfeb490
public float getBukkitYaw() {
return this.yaw;
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index bbc0f1b7b363f21e861be5b187d01aed9a89597c..a05e117e76350da7663612f303444bb16b85ba21 100644
+index fb1e774f5868da170891de7183b63dc3a89ca935..9cdb6ee9a718ed3464b525a4d79256b54617c2fb 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1151,6 +1151,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0264-Add-hand-to-bucket-events.patch b/Spigot-Server-Patches/0264-Add-hand-to-bucket-events.patch
index 3c2b6f9771..f737594a60 100644
--- a/Spigot-Server-Patches/0264-Add-hand-to-bucket-events.patch
+++ b/Spigot-Server-Patches/0264-Add-hand-to-bucket-events.patch
@@ -95,7 +95,7 @@ index 9b6912f6e7b3c289948325a6985d9c961a8a8e30..a0f93486b21e3bdbcf3b705c005c2e13
public boolean s_() {
return this.isClientSide;
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index a05e117e76350da7663612f303444bb16b85ba21..dff170fb64ffd26cc7c5ab4b3863e48989c79ad4 100644
+index 9cdb6ee9a718ed3464b525a4d79256b54617c2fb..74d672b6a1beef5c4af8a2fcfc72486696fdcd05 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1482,15 +1482,17 @@ public class WorldServer extends World implements GeneratorAccessSeed {
@@ -126,10 +126,10 @@ index a05e117e76350da7663612f303444bb16b85ba21..dff170fb64ffd26cc7c5ab4b3863e489
public LongSet getForceLoadedChunks() {
ForcedChunk forcedchunk = (ForcedChunk) this.getWorldPersistentData().b(ForcedChunk::new, "chunks");
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index cf25906786e246cb8dfdb5f2cb39f6dc08c4d7ca..f6c8c371e22272983f80268dab8009ee029bed2a 100644
+index 2aa843b1f43540b92b5ba5b700203c71f16276fa..a86939235a1a5624710744ec3550e6131482c284 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -228,7 +228,7 @@ public class CraftEventFactory {
+@@ -229,7 +229,7 @@ public class CraftEventFactory {
public static Entity entityDamage; // For use in EntityDamageByEntityEvent
// helper methods
@@ -138,7 +138,7 @@ index cf25906786e246cb8dfdb5f2cb39f6dc08c4d7ca..f6c8c371e22272983f80268dab8009ee
int spawnSize = Bukkit.getServer().getSpawnRadius();
if (world.getDimensionKey() != World.OVERWORLD) return true;
-@@ -407,6 +407,20 @@ public class CraftEventFactory {
+@@ -408,6 +408,20 @@ public class CraftEventFactory {
}
private static PlayerEvent getPlayerBucketEvent(boolean isFilling, WorldServer world, EntityHuman who, BlockPosition changed, BlockPosition clicked, EnumDirection clickedFace, ItemStack itemstack, net.minecraft.server.Item item) {
@@ -159,7 +159,7 @@ index cf25906786e246cb8dfdb5f2cb39f6dc08c4d7ca..f6c8c371e22272983f80268dab8009ee
Player player = (Player) who.getBukkitEntity();
CraftItemStack itemInHand = CraftItemStack.asNewCraftStack(item);
Material bucket = CraftMagicNumbers.getMaterial(itemstack.getItem());
-@@ -419,10 +433,10 @@ public class CraftEventFactory {
+@@ -420,10 +434,10 @@ public class CraftEventFactory {
PlayerEvent event;
if (isFilling) {
diff --git a/Spigot-Server-Patches/0266-Fix-client-rendering-skulls-from-same-user.patch b/Spigot-Server-Patches/0266-Fix-client-rendering-skulls-from-same-user.patch
index 4fd155690f..0178734bcb 100644
--- a/Spigot-Server-Patches/0266-Fix-client-rendering-skulls-from-same-user.patch
+++ b/Spigot-Server-Patches/0266-Fix-client-rendering-skulls-from-same-user.patch
@@ -12,7 +12,7 @@ This allows the client to render multiple skull textures from the same user,
for when different skins were used when skull was made.
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
-index 7b2010ec4955fb5788c60178c6e306ea3098e9ba..95e801a9a7ca405ff7e80c920fa78493d0ef5374 100644
+index d5350a382a70382a433e29a7c5a8879336c7568b..95dc7e4a604e613751eb16b127e3203027c8c26d 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -60,7 +60,7 @@ public final class ItemStack {
diff --git a/Spigot-Server-Patches/0267-Add-Early-Warning-Feature-to-WatchDog.patch b/Spigot-Server-Patches/0267-Add-Early-Warning-Feature-to-WatchDog.patch
index e0738f591b..1601c8ca54 100644
--- a/Spigot-Server-Patches/0267-Add-Early-Warning-Feature-to-WatchDog.patch
+++ b/Spigot-Server-Patches/0267-Add-Early-Warning-Feature-to-WatchDog.patch
@@ -48,7 +48,7 @@ index 1698b42ed56a2932c5c1d60c655c9fd4cf5bed66..b13d8ec9aa0a51d5432129f1b0ecef3b
long start = System.nanoTime(), curTime, tickSection = start; // Paper - Further improve server tick loop
lastTick = start - TICK_TIME; // Paper
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index 79c4ed5aa074b00d7026311f22d5a9e44666ed62..d12dc8e7df24dc94ec4b1845444c9aced92a189b 100644
+index 90d0c8f4f48c514a003c119e47e869bc8d399839..599381fce26d81fdeb4bc277d93a672720aee35b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -805,6 +805,7 @@ public final class CraftServer implements Server {
diff --git a/Spigot-Server-Patches/0269-Use-ConcurrentHashMap-in-JsonList.patch b/Spigot-Server-Patches/0269-Use-ConcurrentHashMap-in-JsonList.patch
index 4db56b72bf..7ca2e839d1 100644
--- a/Spigot-Server-Patches/0269-Use-ConcurrentHashMap-in-JsonList.patch
+++ b/Spigot-Server-Patches/0269-Use-ConcurrentHashMap-in-JsonList.patch
@@ -122,7 +122,7 @@ index 5b01e4edb3c0f8bc785b70128cbe31b14356e4fb..9213bfb78e92b838189161045e394558
this.d.values().stream().map((jsonlistentry) -> {
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 4c11aa13b725b2bb502701f2d5fb3878ff162f05..50fbf3e3fb82c25ab5f3b258206f324c8616dae7 100644
+index c4b0394d07b2af2ca14a68a300668197143e8fcc..d4e1fd05cbff3e0c0973a6188ec0469cd53c63f7 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -543,7 +543,7 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0272-Allow-disabling-armour-stand-ticking.patch b/Spigot-Server-Patches/0272-Allow-disabling-armour-stand-ticking.patch
index 7b562f594f..da966fa3fc 100644
--- a/Spigot-Server-Patches/0272-Allow-disabling-armour-stand-ticking.patch
+++ b/Spigot-Server-Patches/0272-Allow-disabling-armour-stand-ticking.patch
@@ -142,10 +142,10 @@ index a70b1a17fe884980ef7c3c0a36e567a0e69ef7f0..d5c09152acc93b25d626284071599afd
public Vector3f r() {
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 92fcaf425b5ef398fcac6ecf115502a5cf657ebb..f2604e867321ca5d84fe0cd7aeed7cf6e5741919 100644
+index b7df37450c1fa4cdefa8267005d052180291d5ba..1aa9e57daa84f54271781cadc9826f12dc80201b 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -2503,6 +2503,7 @@ public abstract class EntityLiving extends Entity {
+@@ -2501,6 +2501,7 @@ public abstract class EntityLiving extends Entity {
}
}
diff --git a/Spigot-Server-Patches/0283-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch b/Spigot-Server-Patches/0283-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch
index 9bc56a00d6..0383b12533 100644
--- a/Spigot-Server-Patches/0283-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch
+++ b/Spigot-Server-Patches/0283-Make-CraftWorld-loadChunk-int-int-false-load-unconve.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Make CraftWorld#loadChunk(int, int, false) load unconverted
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 265822138eee71daa1d6858adc17985d941d9d4c..2cc284b81d8ee17e19342a6cd849ff018c031a92 100644
+index 898b97b52dd1bf8c5aa0b436b01ed0d83681810e..f0ce6bc613c85c6c76d1bb80701907720838d92d 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -502,7 +502,7 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0284-Add-ray-tracing-methods-to-LivingEntity.patch b/Spigot-Server-Patches/0284-Add-ray-tracing-methods-to-LivingEntity.patch
index e9dee421a8..0c3f7df803 100644
--- a/Spigot-Server-Patches/0284-Add-ray-tracing-methods-to-LivingEntity.patch
+++ b/Spigot-Server-Patches/0284-Add-ray-tracing-methods-to-LivingEntity.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Add ray tracing methods to LivingEntity
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index f2604e867321ca5d84fe0cd7aeed7cf6e5741919..4b249a644c680a7cc64b0d31cf453f94ff2b6a0c 100644
+index 1aa9e57daa84f54271781cadc9826f12dc80201b..ac5f11a2f5598584ff112a208bfd16aeb574e580 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -3442,6 +3442,23 @@ public abstract class EntityLiving extends Entity {
+@@ -3440,6 +3440,23 @@ public abstract class EntityLiving extends Entity {
this.broadcastItemBreak(enumhand == EnumHand.MAIN_HAND ? EnumItemSlot.MAINHAND : EnumItemSlot.OFFHAND);
}
// Paper start
diff --git a/Spigot-Server-Patches/0285-Expose-attack-cooldown-methods-for-Player.patch b/Spigot-Server-Patches/0285-Expose-attack-cooldown-methods-for-Player.patch
index 569d55e081..bff0bb0a3f 100644
--- a/Spigot-Server-Patches/0285-Expose-attack-cooldown-methods-for-Player.patch
+++ b/Spigot-Server-Patches/0285-Expose-attack-cooldown-methods-for-Player.patch
@@ -27,7 +27,7 @@ index d9e5d71a87140c90b79902887bd2f481f02956dc..afc665bfe9d527ca8d19f3ab9df0900d
this.aA = 0;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 62e62226bc11df7de80cd1029c7d549596cd760d..41f0a9159f2e92d43fbca112050198bd7f5e0eb7 100644
+index 59b3baaa84c2f1db2d17c677c9eb0299b1494329..7828241b4ab42fd684e62950ddac85b3e43e45be 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1977,6 +1977,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
diff --git a/Spigot-Server-Patches/0286-Improve-death-events.patch b/Spigot-Server-Patches/0286-Improve-death-events.patch
index c7eecbad86..149c1819fd 100644
--- a/Spigot-Server-Patches/0286-Improve-death-events.patch
+++ b/Spigot-Server-Patches/0286-Improve-death-events.patch
@@ -119,7 +119,7 @@ index c2a3bd8f25e91f79723074d93f6a646a8ce76d8c..4934e71225fe1242615660a379e797e2
public void saveData(NBTTagCompound nbttagcompound) {
super.saveData(nbttagcompound);
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 4b249a644c680a7cc64b0d31cf453f94ff2b6a0c..d6a98bb7fc107649c179cded2d37c06a41146a89 100644
+index ac5f11a2f5598584ff112a208bfd16aeb574e580..fb53d8e178b5a8e229036f90fafb48a8a142125e 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -95,7 +95,7 @@ public abstract class EntityLiving extends Entity {
@@ -227,25 +227,15 @@ index 4b249a644c680a7cc64b0d31cf453f94ff2b6a0c..d6a98bb7fc107649c179cded2d37c06a
Entity entity = damagesource.getEntity();
int i;
-@@ -1454,22 +1481,26 @@ public abstract class EntityLiving extends Entity {
- boolean flag = this.lastDamageByPlayerTime > 0;
-
- this.dropInventory(); // CraftBukkit - from below
-+ org.bukkit.event.entity.EntityDeathEvent deathEvent; // Paper
- if (this.cV() && this.world.getGameRules().getBoolean(GameRules.DO_MOB_LOOT)) {
- this.a(damagesource, flag);
+@@ -1459,15 +1486,18 @@ public abstract class EntityLiving extends Entity {
this.dropDeathLoot(damagesource, i, flag);
- // CraftBukkit start - Call death event
-- CraftEventFactory.callEntityDeathEvent(this, this.drops);
-- this.drops = new ArrayList<org.bukkit.inventory.ItemStack>();
-+ deathEvent = CraftEventFactory.callEntityDeathEvent(this, this.drops); // Paper
- } else {
-- CraftEventFactory.callEntityDeathEvent(this);
-+ deathEvent = CraftEventFactory.callEntityDeathEvent(this); // Paper
- // CraftBukkit end
}
+ // CraftBukkit start - Call death event
+- CraftEventFactory.callEntityDeathEvent(this, this.drops);
++ org.bukkit.event.entity.EntityDeathEvent deathEvent = CraftEventFactory.callEntityDeathEvent(this, this.drops); // Paper
+ this.postDeathDropItems(deathEvent); // Paper
-+ this.drops = new ArrayList<>(); // Paper
+ this.drops = new ArrayList<>();
+ // CraftBukkit end
// this.dropInventory();// CraftBukkit - moved up
this.dropExperience();
@@ -257,7 +247,7 @@ index 4b249a644c680a7cc64b0d31cf453f94ff2b6a0c..d6a98bb7fc107649c179cded2d37c06a
// CraftBukkit start
public int getExpReward() {
-@@ -1554,6 +1585,7 @@ public abstract class EntityLiving extends Entity {
+@@ -1552,6 +1582,7 @@ public abstract class EntityLiving extends Entity {
return SoundEffects.ENTITY_GENERIC_HURT;
}
@@ -265,7 +255,7 @@ index 4b249a644c680a7cc64b0d31cf453f94ff2b6a0c..d6a98bb7fc107649c179cded2d37c06a
@Nullable
protected SoundEffect getSoundDeath() {
return SoundEffects.ENTITY_GENERIC_DEATH;
-@@ -2073,10 +2105,12 @@ public abstract class EntityLiving extends Entity {
+@@ -2071,10 +2102,12 @@ public abstract class EntityLiving extends Entity {
}
@@ -357,7 +347,7 @@ index 7b565ddfffd0b9c78392ee115ef9c20ab89a3380..d78b9fd608da691220f1edeff506b36e
this.minecraftKey = minecraftKey;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 41f0a9159f2e92d43fbca112050198bd7f5e0eb7..b7253ab42447faa36abdbe3190f82f8673cc8ce6 100644
+index 7828241b4ab42fd684e62950ddac85b3e43e45be..139ea71a17a014be2be735395c99c1d5354a4383 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1768,7 +1768,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -378,10 +368,10 @@ index 41f0a9159f2e92d43fbca112050198bd7f5e0eb7..b7253ab42447faa36abdbe3190f82f86
public void injectScaledMaxHealth(Collection<AttributeModifiable> collection, boolean force) {
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index f6c8c371e22272983f80268dab8009ee029bed2a..37f6fdf1be6d0f8a4ec4b9998fa710876b5515c9 100644
+index a86939235a1a5624710744ec3550e6131482c284..59205a848524f281edcab388a9ca40b3e08a9556 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -783,9 +783,16 @@ public class CraftEventFactory {
+@@ -784,9 +784,16 @@ public class CraftEventFactory {
public static EntityDeathEvent callEntityDeathEvent(EntityLiving victim, List<org.bukkit.inventory.ItemStack> drops) {
CraftLivingEntity entity = (CraftLivingEntity) victim.getBukkitEntity();
EntityDeathEvent event = new EntityDeathEvent(entity, drops, victim.getExpReward());
@@ -398,7 +388,7 @@ index f6c8c371e22272983f80268dab8009ee029bed2a..37f6fdf1be6d0f8a4ec4b9998fa71087
victim.expToDrop = event.getDroppedExp();
for (org.bukkit.inventory.ItemStack stack : event.getDrops()) {
-@@ -801,8 +808,15 @@ public class CraftEventFactory {
+@@ -802,8 +809,15 @@ public class CraftEventFactory {
CraftPlayer entity = victim.getBukkitEntity();
PlayerDeathEvent event = new PlayerDeathEvent(entity, drops, victim.getExpReward(), 0, deathMessage);
event.setKeepInventory(keepInventory);
@@ -414,7 +404,7 @@ index f6c8c371e22272983f80268dab8009ee029bed2a..37f6fdf1be6d0f8a4ec4b9998fa71087
victim.keepLevel = event.getKeepLevel();
victim.newLevel = event.getNewLevel();
-@@ -819,6 +833,31 @@ public class CraftEventFactory {
+@@ -820,6 +834,31 @@ public class CraftEventFactory {
return event;
}
diff --git a/Spigot-Server-Patches/0287-Allow-chests-to-be-placed-with-NBT-data.patch b/Spigot-Server-Patches/0287-Allow-chests-to-be-placed-with-NBT-data.patch
index 9ed2eeb582..17727ec59d 100644
--- a/Spigot-Server-Patches/0287-Allow-chests-to-be-placed-with-NBT-data.patch
+++ b/Spigot-Server-Patches/0287-Allow-chests-to-be-placed-with-NBT-data.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Allow chests to be placed with NBT data
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
-index 95e801a9a7ca405ff7e80c920fa78493d0ef5374..a075a41d954836864a5186b383e967a9ac262df8 100644
+index 95dc7e4a604e613751eb16b127e3203027c8c26d..dea478d4790be0c0d6e14cd7673d161abfc46e08 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -244,6 +244,7 @@ public final class ItemStack {
diff --git a/Spigot-Server-Patches/0290-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch b/Spigot-Server-Patches/0290-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch
index d6eace3231..38f33d38cb 100644
--- a/Spigot-Server-Patches/0290-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch
+++ b/Spigot-Server-Patches/0290-Implement-an-API-for-CanPlaceOn-and-CanDestroy-NBT-v.patch
@@ -32,7 +32,7 @@ index b986a8e318733bdae766202bef93d4d25f18b58d..1f74602ff13a9f89c8dc40170353a79a
this.s = this::l;
if (this.i.canRead() && this.i.peek() == '#') {
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
-index c0858aeac0c9709a79590a0ca8db32d64efe7523..fe4aa562aa5a938dea9cd083ccff8c9cb28a7159 100644
+index 7d5c3a37c497e326ea0bb4c1725fd2d3dc857790..4220c9a5e3f8cb6738451d1eaf100aff88ec5cbd 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -85,6 +85,12 @@ import org.bukkit.persistence.PersistentDataContainer;
diff --git a/Spigot-Server-Patches/0301-Add-sun-related-API.patch b/Spigot-Server-Patches/0301-Add-sun-related-API.patch
index d2e9d34850..a8f966d282 100644
--- a/Spigot-Server-Patches/0301-Add-sun-related-API.patch
+++ b/Spigot-Server-Patches/0301-Add-sun-related-API.patch
@@ -17,7 +17,7 @@ index 8a79302b9cc178bfe4e0909293e3a87c01d344ca..e0ecdb8f87ec82b97a056c8f6d91d6a8
if (this.world.isDay() && !this.world.isClientSide) {
float f = this.aO();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 2cc284b81d8ee17e19342a6cd849ff018c031a92..f5660806b8162cd8c3a1072601f6d3a99d526cc4 100644
+index f0ce6bc613c85c6c76d1bb80701907720838d92d..a27bd3032028dd3a4ed8efc4230a792cffd1833c 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -872,6 +872,13 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0303-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch b/Spigot-Server-Patches/0303-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch
index b9d23093d8..09d75f11a4 100644
--- a/Spigot-Server-Patches/0303-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch
+++ b/Spigot-Server-Patches/0303-MC-50319-Check-other-worlds-for-shooter-of-projectil.patch
@@ -11,7 +11,7 @@ If the projectile fails to find the shooter in the current world, check
other worlds.
diff --git a/src/main/java/net/minecraft/server/IProjectile.java b/src/main/java/net/minecraft/server/IProjectile.java
-index ea5f5845a8d202e62da3ae1bfb1e4dbd7f5e185e..ef7e036943bfbd869bd5d71bcb2ecc6c35c18294 100644
+index f544178fa6ffd95c41cb721440d3a701c5c4331c..ff137b15de7670f8e5fcb9f4dde3dc8251e3075c 100644
--- a/src/main/java/net/minecraft/server/IProjectile.java
+++ b/src/main/java/net/minecraft/server/IProjectile.java
@@ -29,7 +29,18 @@ public abstract class IProjectile extends Entity {
diff --git a/Spigot-Server-Patches/0304-Call-player-spectator-target-events-and-improve-impl.patch b/Spigot-Server-Patches/0304-Call-player-spectator-target-events-and-improve-impl.patch
index 16f59decc7..9871341ba6 100644
--- a/Spigot-Server-Patches/0304-Call-player-spectator-target-events-and-improve-impl.patch
+++ b/Spigot-Server-Patches/0304-Call-player-spectator-target-events-and-improve-impl.patch
@@ -19,7 +19,7 @@ spectate the target entity.
Co-authored-by: Spottedleaf <[email protected]>
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 650579eb1bb73416b629229fce897d2941bd3b0d..91de641e52693d2a776ae68810965b6e4643220f 100644
+index c272bab87f9248cc3e7afe3607522f0b5e9c48d1..0909c926b9298d99b36c43dcbec9db071444cc7c 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1694,15 +1694,59 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0305-Add-Velocity-IP-Forwarding-Support.patch b/Spigot-Server-Patches/0305-Add-Velocity-IP-Forwarding-Support.patch
index 59515d1aeb..dac4e7081e 100644
--- a/Spigot-Server-Patches/0305-Add-Velocity-IP-Forwarding-Support.patch
+++ b/Spigot-Server-Patches/0305-Add-Velocity-IP-Forwarding-Support.patch
@@ -289,7 +289,7 @@ index ae74dc9e183e66062455cf2a18ab43ae87976046..7eb230f1b27eddf48f1b12fc78877a36
public void a(PacketDataSerializer packetdataserializer) throws IOException {
this.a = packetdataserializer.i();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index d12dc8e7df24dc94ec4b1845444c9aced92a189b..86f881b76453c974cf648beaf7dbcc52df38abda 100644
+index 599381fce26d81fdeb4bc277d93a672720aee35b..d7aec47c3ba553fb505b5f956850aa2e9077dd24 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -677,7 +677,7 @@ public final class CraftServer implements Server {
diff --git a/Spigot-Server-Patches/0310-Reset-players-airTicks-on-respawn.patch b/Spigot-Server-Patches/0310-Reset-players-airTicks-on-respawn.patch
index e2bcd3917b..560f5426f2 100644
--- a/Spigot-Server-Patches/0310-Reset-players-airTicks-on-respawn.patch
+++ b/Spigot-Server-Patches/0310-Reset-players-airTicks-on-respawn.patch
@@ -17,7 +17,7 @@ index a9664f03b8b7d2c12565b8c08891c7021aa5482b..1a677783baa0b9a3dcfcd84caccba61d
return 300;
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 91de641e52693d2a776ae68810965b6e4643220f..2a4fc3d633924fbdfa166b3c3a39e0bae8a07310 100644
+index 0909c926b9298d99b36c43dcbec9db071444cc7c..f1b05b6c23240caa5844ae04f08ce07a6436753d 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -2025,6 +2025,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0322-force-entity-dismount-during-teleportation.patch b/Spigot-Server-Patches/0322-force-entity-dismount-during-teleportation.patch
index 6c862d1fc0..a0ad49af1d 100644
--- a/Spigot-Server-Patches/0322-force-entity-dismount-during-teleportation.patch
+++ b/Spigot-Server-Patches/0322-force-entity-dismount-during-teleportation.patch
@@ -91,10 +91,10 @@ index afc665bfe9d527ca8d19f3ab9df0900d87f2d3f2..7916421fe1dd8eadfd1c9bd15c4bbbb7
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index d6a98bb7fc107649c179cded2d37c06a41146a89..84de18a6c207612ec3d3cca61749934b1d421155 100644
+index fb53d8e178b5a8e229036f90fafb48a8a142125e..2e298126405764fd342d05f8fb87ed60fb9a813d 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -2892,11 +2892,13 @@ public abstract class EntityLiving extends Entity {
+@@ -2889,11 +2889,13 @@ public abstract class EntityLiving extends Entity {
return ((Byte) this.datawatcher.get(EntityLiving.an) & 4) != 0;
}
@@ -112,7 +112,7 @@ index d6a98bb7fc107649c179cded2d37c06a41146a89..84de18a6c207612ec3d3cca61749934b
this.a(entity);
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 2a4fc3d633924fbdfa166b3c3a39e0bae8a07310..fa975d4788281b66e63b4e8b9ad05c8a0f78c40a 100644
+index f1b05b6c23240caa5844ae04f08ce07a6436753d..0a6367dc8b62049cb210d905394183d051a357c0 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1131,11 +1131,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0326-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch b/Spigot-Server-Patches/0326-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch
index 4383f08faa..e21f0be9d3 100644
--- a/Spigot-Server-Patches/0326-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch
+++ b/Spigot-Server-Patches/0326-Add-APIs-to-replace-OfflinePlayer-getLastPlayed.patch
@@ -106,7 +106,7 @@ index 00333548b470435aa89fb0f4b29047eb1461e992..5770d4183c1b9ab6119a25930283c023
public Location getBedSpawnLocation() {
NBTTagCompound data = getData();
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index b7253ab42447faa36abdbe3190f82f8673cc8ce6..f28d6aa664e21a1b39adba16b2857981d4443ddb 100644
+index 139ea71a17a014be2be735395c99c1d5354a4383..96ce5f7f5a31df8c1e73eb1afc2d15f7ac716c06 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -145,6 +145,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
diff --git a/Spigot-Server-Patches/0328-Workaround-for-vehicle-tracking-issue-on-disconnect.patch b/Spigot-Server-Patches/0328-Workaround-for-vehicle-tracking-issue-on-disconnect.patch
index 3a605f8c22..9d5172356b 100644
--- a/Spigot-Server-Patches/0328-Workaround-for-vehicle-tracking-issue-on-disconnect.patch
+++ b/Spigot-Server-Patches/0328-Workaround-for-vehicle-tracking-issue-on-disconnect.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Workaround for vehicle tracking issue on disconnect
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index b9125ca724c60026f0dcff40f570f6a5da8c993b..4f24399e4a37b1cf14c5c05b82515cc961764fd9 100644
+index 999f474ab2ac5a3189eab2755f3a1c9b6cf58011..0704af149368991eccfbe274c3aa5c3d910dfd9e 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1397,6 +1397,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0330-Block-Entity-remove-from-being-called-on-Players.patch b/Spigot-Server-Patches/0330-Block-Entity-remove-from-being-called-on-Players.patch
index 35aabaa082..21616b9320 100644
--- a/Spigot-Server-Patches/0330-Block-Entity-remove-from-being-called-on-Players.patch
+++ b/Spigot-Server-Patches/0330-Block-Entity-remove-from-being-called-on-Players.patch
@@ -12,7 +12,7 @@ Player we will look at limiting the scope of this change. It appears to
be unintentional in the few cases we've seen so far.
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index f28d6aa664e21a1b39adba16b2857981d4443ddb..1b596878942e3911be4e5c501d6f5d6c1a1707e8 100644
+index 96ce5f7f5a31df8c1e73eb1afc2d15f7ac716c06..ff602df37c0a621cfe6ebce13ae6cc777378e591 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2022,6 +2022,15 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
diff --git a/Spigot-Server-Patches/0331-BlockDestroyEvent.patch b/Spigot-Server-Patches/0331-BlockDestroyEvent.patch
index 775199189e..ea42113e24 100644
--- a/Spigot-Server-Patches/0331-BlockDestroyEvent.patch
+++ b/Spigot-Server-Patches/0331-BlockDestroyEvent.patch
@@ -11,7 +11,7 @@ floating in the air.
This can replace many uses of BlockPhysicsEvent
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index cc4421aa61d7d87c164c1f88ad8b5fa0df7176f1..86636d09699bff4c0c90b8b484df03668b8d5584 100644
+index a0f93486b21e3bdbcf3b705c005c2e13f75589ed..722db2c45da211ef376fff4aa17964009b2e53e2 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -535,8 +535,20 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0338-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch b/Spigot-Server-Patches/0338-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch
index 8555f4b014..e449ff240a 100644
--- a/Spigot-Server-Patches/0338-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch
+++ b/Spigot-Server-Patches/0338-MC-145260-Fix-Whitelist-On-Off-inconsistency.patch
@@ -11,7 +11,7 @@ everything to the Whitelist object.
https://github.com/PaperMC/Paper/issues/1880
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 2b5dda81b467cf1d813359faaa5c81d4aeb6ee1c..2c90e1d04447f0d34fe500a78449435c295c88e3 100644
+index bbace0cf80a7cc85a4e70a8cd760a932e33cc72c..5f9cbdcbaca06d0228411b75665054092334069a 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -930,9 +930,9 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0341-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch b/Spigot-Server-Patches/0341-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch
index dcb1f88c73..ef318239c9 100644
--- a/Spigot-Server-Patches/0341-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch
+++ b/Spigot-Server-Patches/0341-Call-WhitelistToggleEvent-when-whitelist-is-toggled.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Call WhitelistToggleEvent when whitelist is toggled
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 2c90e1d04447f0d34fe500a78449435c295c88e3..61d29dabf6ae8be8f8b5b6da9b801e84adda7dfb 100644
+index 5f9cbdcbaca06d0228411b75665054092334069a..d8b06c9892264b3eaf9e1ed3c9b4c0954b47d05f 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -1048,6 +1048,7 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0342-Add-LivingEntity-getTargetEntity.patch b/Spigot-Server-Patches/0342-Add-LivingEntity-getTargetEntity.patch
index a160dd46eb..0cd1d0f5e6 100644
--- a/Spigot-Server-Patches/0342-Add-LivingEntity-getTargetEntity.patch
+++ b/Spigot-Server-Patches/0342-Add-LivingEntity-getTargetEntity.patch
@@ -66,10 +66,10 @@ index 5c37d6f2523ead3eee082dc615d9b0c9fbd71443..c5abac3eb3f98a948ff7a3423cfcad70
return 0.0F;
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 84de18a6c207612ec3d3cca61749934b1d421155..eeca12bd7c6e59b872303fda1378a69d03dcf783 100644
+index 2e298126405764fd342d05f8fb87ed60fb9a813d..a6f38a95b78ac43a2250f575a755e833d1baea33 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -3495,6 +3495,37 @@ public abstract class EntityLiving extends Entity {
+@@ -3492,6 +3492,37 @@ public abstract class EntityLiving extends Entity {
return world.rayTrace(raytrace);
}
diff --git a/Spigot-Server-Patches/0344-Entity-getEntitySpawnReason.patch b/Spigot-Server-Patches/0344-Entity-getEntitySpawnReason.patch
index 8fff15c330..083c74756c 100644
--- a/Spigot-Server-Patches/0344-Entity-getEntitySpawnReason.patch
+++ b/Spigot-Server-Patches/0344-Entity-getEntitySpawnReason.patch
@@ -71,7 +71,7 @@ index e2f5354709819e56f9bc66b8c8d5e095bc8387b4..df5ac3295ea64fa9bb15f0565610265d
flag = true; // Paper
if (org.bukkit.craftbukkit.event.CraftEventFactory.callSpawnerSpawnEvent(entity, blockposition).isCancelled()) {
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 61d29dabf6ae8be8f8b5b6da9b801e84adda7dfb..6a00d1dcd62034c595723547afb4637e9d7c18a0 100644
+index d8b06c9892264b3eaf9e1ed3c9b4c0954b47d05f..85694a0ad7e32e4a98d8b0589f8d4dca91625bb3 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -262,7 +262,7 @@ public abstract class PlayerList {
@@ -84,7 +84,7 @@ index 61d29dabf6ae8be8f8b5b6da9b801e84adda7dfb..6a00d1dcd62034c595723547afb4637e
});
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index dff170fb64ffd26cc7c5ab4b3863e48989c79ad4..22d39f465aa366459c1a62422945f5fb6c19e492 100644
+index 74d672b6a1beef5c4af8a2fcfc72486696fdcd05..c08391411648206b244896c30e3b9b6b199095aa 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -921,6 +921,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0346-Implement-PlayerPostRespawnEvent.patch b/Spigot-Server-Patches/0346-Implement-PlayerPostRespawnEvent.patch
index 608650cf08..69ec85d603 100644
--- a/Spigot-Server-Patches/0346-Implement-PlayerPostRespawnEvent.patch
+++ b/Spigot-Server-Patches/0346-Implement-PlayerPostRespawnEvent.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Implement PlayerPostRespawnEvent
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 6a00d1dcd62034c595723547afb4637e9d7c18a0..dd05e753942d2f50ba0af41d59b4cb962df4cd1b 100644
+index 85694a0ad7e32e4a98d8b0589f8d4dca91625bb3..8a659688ddc608fafe19e452c55e69f132f05fca 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -664,9 +664,14 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0350-PlayerDeathEvent-getItemsToKeep.patch b/Spigot-Server-Patches/0350-PlayerDeathEvent-getItemsToKeep.patch
index d72161bc19..a38aca4937 100644
--- a/Spigot-Server-Patches/0350-PlayerDeathEvent-getItemsToKeep.patch
+++ b/Spigot-Server-Patches/0350-PlayerDeathEvent-getItemsToKeep.patch
@@ -8,7 +8,7 @@ Exposes a mutable array on items a player should keep on death
Example Usage: https://gist.github.com/aikar/5bb202de6057a051a950ce1f29feb0b4
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 4f24399e4a37b1cf14c5c05b82515cc961764fd9..c43e0b19cfbad4fe74141c2c1e48afdc8960ee1c 100644
+index 0704af149368991eccfbe274c3aa5c3d910dfd9e..2f0759ebc6f7adb3dc0856e19f856b406a21845e 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -556,6 +556,46 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0351-Optimize-Captured-TileEntity-Lookup.patch b/Spigot-Server-Patches/0351-Optimize-Captured-TileEntity-Lookup.patch
index dae998240b..04a4494da7 100644
--- a/Spigot-Server-Patches/0351-Optimize-Captured-TileEntity-Lookup.patch
+++ b/Spigot-Server-Patches/0351-Optimize-Captured-TileEntity-Lookup.patch
@@ -10,7 +10,7 @@ Optimize to check if the captured list even has values in it, and also to
just do a get call since the value can never be null.
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 86636d09699bff4c0c90b8b484df03668b8d5584..3fc33d410e62fa8f86dd7f912e0ae483e48697f1 100644
+index 722db2c45da211ef376fff4aa17964009b2e53e2..40f778ceefdb97f4702edba6f78c0569a414cf80 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -945,12 +945,13 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0352-Add-Heightmap-API.patch b/Spigot-Server-Patches/0352-Add-Heightmap-API.patch
index 801197d3c1..803f824e7d 100644
--- a/Spigot-Server-Patches/0352-Add-Heightmap-API.patch
+++ b/Spigot-Server-Patches/0352-Add-Heightmap-API.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add Heightmap API
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 3fc33d410e62fa8f86dd7f912e0ae483e48697f1..897069231f057bd977c382731d6b3d87ac30b030 100644
+index 40f778ceefdb97f4702edba6f78c0569a414cf80..a56604127e603721838cd9c322952cd64bca54e0 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -645,8 +645,8 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@@ -20,7 +20,7 @@ index 3fc33d410e62fa8f86dd7f912e0ae483e48697f1..897069231f057bd977c382731d6b3d87
if (i >= -30000000 && j >= -30000000 && i < 30000000 && j < 30000000) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index f5660806b8162cd8c3a1072601f6d3a99d526cc4..4b9d33d51c82575ad65056e8d314a60ae0e5bb0b 100644
+index a27bd3032028dd3a4ed8efc4230a792cffd1833c..2cf4510e7bc06735915f7368db75dccaac4583f2 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -342,6 +342,29 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0354-Per-Player-View-Distance-API-placeholders.patch b/Spigot-Server-Patches/0354-Per-Player-View-Distance-API-placeholders.patch
index 8ca8ee5d2a..8b89c30666 100644
--- a/Spigot-Server-Patches/0354-Per-Player-View-Distance-API-placeholders.patch
+++ b/Spigot-Server-Patches/0354-Per-Player-View-Distance-API-placeholders.patch
@@ -40,7 +40,7 @@ index 9331f96f68f121b41ce74904d624520291b7c72e..1074995e8c8a83f6cdb94019123fbffa
double deltaZ = this.locZ() - player.locZ();
double distanceSquared = deltaX * deltaX + deltaZ * deltaZ;
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 1b596878942e3911be4e5c501d6f5d6c1a1707e8..3ed64e19b9e0287a7396b9b5a63641794fad583c 100644
+index ff602df37c0a621cfe6ebce13ae6cc777378e591..c3d84b1d53e835cf467c42c7adaeb774010366af 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -2031,6 +2031,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
diff --git a/Spigot-Server-Patches/0358-Fix-issues-with-entity-loss-due-to-unloaded-chunks.patch b/Spigot-Server-Patches/0358-Fix-issues-with-entity-loss-due-to-unloaded-chunks.patch
index 2d7e887180..4bf067aaed 100644
--- a/Spigot-Server-Patches/0358-Fix-issues-with-entity-loss-due-to-unloaded-chunks.patch
+++ b/Spigot-Server-Patches/0358-Fix-issues-with-entity-loss-due-to-unloaded-chunks.patch
@@ -19,7 +19,7 @@ This change ensures the chunks are always loaded when entities are
added to the world, or a valid entity moves between chunks.
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 22d39f465aa366459c1a62422945f5fb6c19e492..9d768cecf31b45710cfcad0d0ac0b302218d67d4 100644
+index c08391411648206b244896c30e3b9b6b199095aa..4bed372d302abe0247c2be4fc0071de50689b089 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -734,11 +734,18 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0359-Duplicate-UUID-Resolve-Option.patch b/Spigot-Server-Patches/0359-Duplicate-UUID-Resolve-Option.patch
index 2dcd8a06dc..3f0095d205 100644
--- a/Spigot-Server-Patches/0359-Duplicate-UUID-Resolve-Option.patch
+++ b/Spigot-Server-Patches/0359-Duplicate-UUID-Resolve-Option.patch
@@ -197,7 +197,7 @@ index 458802dc4b1f923b159168efff0546bb731da07b..936be3fd8954933ac218f62a172df687
ChunkCoordIntPair chunkcoordintpair = playerchunk.i();
CompletableFuture<Either<List<IChunkAccess>, PlayerChunk.Failure>> completablefuture = this.a(chunkcoordintpair, 1, (i) -> {
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 9d768cecf31b45710cfcad0d0ac0b302218d67d4..d1580a77383a4ad5a45aca57f29258869b52b86c 100644
+index 4bed372d302abe0247c2be4fc0071de50689b089..41c68de8119dc53a033ac005d69cd57d38b4f719 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -5,6 +5,8 @@ import com.google.common.collect.ImmutableList;
diff --git a/Spigot-Server-Patches/0360-improve-CraftWorld-isChunkLoaded.patch b/Spigot-Server-Patches/0360-improve-CraftWorld-isChunkLoaded.patch
index 2da82bf6d2..8ec42bd442 100644
--- a/Spigot-Server-Patches/0360-improve-CraftWorld-isChunkLoaded.patch
+++ b/Spigot-Server-Patches/0360-improve-CraftWorld-isChunkLoaded.patch
@@ -9,7 +9,7 @@ waiting for the execution queue to get to our request; We can just query
the chunk status and get a response now, vs having to wait
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 4b9d33d51c82575ad65056e8d314a60ae0e5bb0b..3549404ec211e88f6d91bdcf07c661e2d2ac4875 100644
+index 2cf4510e7bc06735915f7368db75dccaac4583f2..48805c32aabe453e0a860168b79ea9026fa848b1 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -408,13 +408,13 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0361-Configurable-Keep-Spawn-Loaded-range-per-world.patch b/Spigot-Server-Patches/0361-Configurable-Keep-Spawn-Loaded-range-per-world.patch
index 56f240dc44..388acd8af4 100644
--- a/Spigot-Server-Patches/0361-Configurable-Keep-Spawn-Loaded-range-per-world.patch
+++ b/Spigot-Server-Patches/0361-Configurable-Keep-Spawn-Loaded-range-per-world.patch
@@ -102,7 +102,7 @@ index 3868572aed50c8bffd93727a139a3fbb8dc19688..ae77805f71c6c574d92f39c51b1e48f2
@Override
public void a(ChunkCoordIntPair chunkcoordintpair) {
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index d1580a77383a4ad5a45aca57f29258869b52b86c..45959064c310997d26c5637a0e5cb61775c406c9 100644
+index 41c68de8119dc53a033ac005d69cd57d38b4f719..7b4182a0dc9aaa76f0a4a3b09cc497bcb9704277 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1499,12 +1499,88 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0367-Fix-World-isChunkGenerated-calls.patch b/Spigot-Server-Patches/0367-Fix-World-isChunkGenerated-calls.patch
index 63970da835..6378e0ab03 100644
--- a/Spigot-Server-Patches/0367-Fix-World-isChunkGenerated-calls.patch
+++ b/Spigot-Server-Patches/0367-Fix-World-isChunkGenerated-calls.patch
@@ -279,7 +279,7 @@ index 02bd568af727633a6e834d5328683a9ff67b9dd7..341689ac996164b7b53e095495b92b6e
throwable = throwable1;
throw throwable1;
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 29d88bf1a8c5272822dd26e5e93d102748d9abf2..412dc3865dfee606c37c06daefeacc6ed14ced7b 100644
+index b5621b8456fbd3c5e94a9b9ec9b4be0068962674..1970751f89dcba3055c31caa2c6425fa4b13bc28 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -19,6 +19,7 @@ import java.util.Objects;
diff --git a/Spigot-Server-Patches/0371-Anti-Xray.patch b/Spigot-Server-Patches/0371-Anti-Xray.patch
index 4037bc0539..abfd2eebd8 100644
--- a/Spigot-Server-Patches/0371-Anti-Xray.patch
+++ b/Spigot-Server-Patches/0371-Anti-Xray.patch
@@ -1372,7 +1372,7 @@ index ee8df274d43be753887fb77e4203e2ee30ea02b3..9f91c02b444874e690eacb0cfa0c8101
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 897069231f057bd977c382731d6b3d87ac30b030..25785eed8c714b87635679e44ef06726c9a1b24c 100644
+index a56604127e603721838cd9c322952cd64bca54e0..d3ab8299e759a30a04ec0d575a4b40a78ca1558d 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -2,6 +2,8 @@ package net.minecraft.server;
@@ -1413,7 +1413,7 @@ index 897069231f057bd977c382731d6b3d87ac30b030..25785eed8c714b87635679e44ef06726
if (iblockdata1 == null) {
// CraftBukkit start - remove blockstate if failed (or the same)
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 479271a51ba7e9c433f030918bc926ccd93dc938..7e862f44ad8b8b878a8a86a4d1b48de4b4506c66 100644
+index 0286bc56d49e586dde506071e5e72423f157bd52..1f2ac5883b3b977b605077438005c6be66d8b49c 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -95,7 +95,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0373-Configurable-projectile-relative-velocity.patch b/Spigot-Server-Patches/0373-Configurable-projectile-relative-velocity.patch
index 2c39e54360..bed72ea706 100644
--- a/Spigot-Server-Patches/0373-Configurable-projectile-relative-velocity.patch
+++ b/Spigot-Server-Patches/0373-Configurable-projectile-relative-velocity.patch
@@ -39,7 +39,7 @@ index bccc2cb3e76aa3ffe1c4200f1b7380d136cb2f96..822b738f48578b39f81bb8e38208dc3d
+ }
}
diff --git a/src/main/java/net/minecraft/server/IProjectile.java b/src/main/java/net/minecraft/server/IProjectile.java
-index ef7e036943bfbd869bd5d71bcb2ecc6c35c18294..a961f5d5d4f56cc43d883862e50e3430a2138968 100644
+index ff137b15de7670f8e5fcb9f4dde3dc8251e3075c..6e175e30a6c1fc69bd2f8417d2df38ee1b78545b 100644
--- a/src/main/java/net/minecraft/server/IProjectile.java
+++ b/src/main/java/net/minecraft/server/IProjectile.java
@@ -114,7 +114,7 @@ public abstract class IProjectile extends Entity {
diff --git a/Spigot-Server-Patches/0374-Mark-entities-as-being-ticked-when-notifying-navigat.patch b/Spigot-Server-Patches/0374-Mark-entities-as-being-ticked-when-notifying-navigat.patch
index fed94d8177..6e78696770 100644
--- a/Spigot-Server-Patches/0374-Mark-entities-as-being-ticked-when-notifying-navigat.patch
+++ b/Spigot-Server-Patches/0374-Mark-entities-as-being-ticked-when-notifying-navigat.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Mark entities as being ticked when notifying navigation
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 00446fabbeac8105678cecb9f7f9f3dac4a43d74..b1ac1387e7c9e67120f0155957a4e66cc92a6d0d 100644
+index 1f2ac5883b3b977b605077438005c6be66d8b49c..f1b2ef8836d31ce0dd5502357d6af655eabd9006 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1318,6 +1318,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0378-Use-getChunkIfLoadedImmediately-in-places.patch b/Spigot-Server-Patches/0378-Use-getChunkIfLoadedImmediately-in-places.patch
index 9ee98edac4..bc5712f15b 100644
--- a/Spigot-Server-Patches/0378-Use-getChunkIfLoadedImmediately-in-places.patch
+++ b/Spigot-Server-Patches/0378-Use-getChunkIfLoadedImmediately-in-places.patch
@@ -21,7 +21,7 @@ index 70d3b429bfe08f1d2e5a3ac8368d8221770d5307..092e49ae11ff735cf0179de8e0aaa73f
return;
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 25785eed8c714b87635679e44ef06726c9a1b24c..2278835e15449c72d1bbbf0a2694c386554242e3 100644
+index d3ab8299e759a30a04ec0d575a4b40a78ca1558d..8913e915b91b85a1f3efdc97809466f7933511d4 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -104,6 +104,13 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@@ -65,7 +65,7 @@ index 25785eed8c714b87635679e44ef06726c9a1b24c..2278835e15449c72d1bbbf0a2694c386
if (chunk != null) {
chunk.a(oclass, axisalignedbb, list, predicate);
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 85b73e65a4c1af052e75473bc239d91d5d1fd108..df04a1d39a4ad3a5cf30372bd14a65d1ff5459b3 100644
+index d88e7e24d5fdd8caa075fe2aaf22f11f611e31bd..2c61b97ed1571f2032b29b142a839f012a0c2cac 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -90,7 +90,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0379-Reduce-sync-loads.patch b/Spigot-Server-Patches/0379-Reduce-sync-loads.patch
index 3801c86711..88c6e75440 100644
--- a/Spigot-Server-Patches/0379-Reduce-sync-loads.patch
+++ b/Spigot-Server-Patches/0379-Reduce-sync-loads.patch
@@ -298,7 +298,7 @@ index edd901bb53385fa3d189a0057d57f98bf8b7115c..707db4febac59a4d09d6420ea2add469
this.serverThreadQueue.awaitTasks(completablefuture::isDone);
com.destroystokyo.paper.io.chunk.ChunkTaskManager.popChunkWait(); // Paper - async chunk debug
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 2278835e15449c72d1bbbf0a2694c386554242e3..dd3dd03200ad8f0219d6673abfe8fc87341a0fe6 100644
+index 8913e915b91b85a1f3efdc97809466f7933511d4..4c717afe243997e153a8ef5f703d8409bf126222 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1107,7 +1107,7 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
@@ -329,7 +329,7 @@ index 2278835e15449c72d1bbbf0a2694c386554242e3..dd3dd03200ad8f0219d6673abfe8fc87
if (chunk != null) {
chunk.a(oclass, axisalignedbb, list, predicate);
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index df04a1d39a4ad3a5cf30372bd14a65d1ff5459b3..8c0b1f28c3a914ce467345104e024650b9ebe2fe 100644
+index 2c61b97ed1571f2032b29b142a839f012a0c2cac..89dd2695d829024aa3dc48eec5c7dcc114ce3d92 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -165,6 +165,12 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0382-Fix-MC-158900.patch b/Spigot-Server-Patches/0382-Fix-MC-158900.patch
index dbd58cddbf..1f220caabb 100644
--- a/Spigot-Server-Patches/0382-Fix-MC-158900.patch
+++ b/Spigot-Server-Patches/0382-Fix-MC-158900.patch
@@ -7,7 +7,7 @@ The problem was we were checking isExpired() on the entry, but if it
was expired at that point, then it would be null.
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index dd05e753942d2f50ba0af41d59b4cb962df4cd1b..62b9c1f23fcc9df1ba49823a45b54b4e547813d0 100644
+index 8a659688ddc608fafe19e452c55e69f132f05fca..0144e3ac2f0c09fe49b6cbc21799caf2352b85d0 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -531,8 +531,10 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0383-implement-optional-per-player-mob-spawns.patch b/Spigot-Server-Patches/0383-implement-optional-per-player-mob-spawns.patch
index e0e269a994..d297b27194 100644
--- a/Spigot-Server-Patches/0383-implement-optional-per-player-mob-spawns.patch
+++ b/Spigot-Server-Patches/0383-implement-optional-per-player-mob-spawns.patch
@@ -573,7 +573,7 @@ index 707db4febac59a4d09d6420ea2add469cf54c2ec..1597b7a882769109f467d81ecbadc45f
this.p = spawnercreature_d;
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index c43e0b19cfbad4fe74141c2c1e48afdc8960ee1c..6787b467f18bb03a8d45dc254988b5084c74f499 100644
+index 2f0759ebc6f7adb3dc0856e19f856b406a21845e..8965141ab85df736e6adad6a3cf728864f582949 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -85,6 +85,11 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -617,7 +617,7 @@ index b9fe08301409bc1f0d61a7566c26e720ff720d80..18a806ebbf092b904983691529ce5edf
return this.bf;
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index a10006efc52f093196e7d67a3281a87d4c5df19b..ab5413a39147180af2eb33512fc992a5dcbb69bf 100644
+index cacf60563826da0219754a67500fdc239b13f0cd..f06c41d06f853b625dbd46822126810da3c3264a 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -80,7 +80,8 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0384-Prevent-consuming-the-wrong-itemstack.patch b/Spigot-Server-Patches/0384-Prevent-consuming-the-wrong-itemstack.patch
index d439b641ef..7e0d9d79db 100644
--- a/Spigot-Server-Patches/0384-Prevent-consuming-the-wrong-itemstack.patch
+++ b/Spigot-Server-Patches/0384-Prevent-consuming-the-wrong-itemstack.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Prevent consuming the wrong itemstack
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index eeca12bd7c6e59b872303fda1378a69d03dcf783..d354e9b504b6872f20a9e433522827589bd4778a 100644
+index a6f38a95b78ac43a2250f575a755e833d1baea33..0515587559a75e4afddbcac90f65d5d60156a527 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -3068,10 +3068,13 @@ public abstract class EntityLiving extends Entity {
+@@ -3065,10 +3065,13 @@ public abstract class EntityLiving extends Entity {
this.datawatcher.set(EntityLiving.an, (byte) j);
}
@@ -24,7 +24,7 @@ index eeca12bd7c6e59b872303fda1378a69d03dcf783..d354e9b504b6872f20a9e43352282758
this.activeItem = itemstack;
this.bk = itemstack.k();
if (!this.world.isClientSide) {
-@@ -3147,6 +3150,7 @@ public abstract class EntityLiving extends Entity {
+@@ -3144,6 +3147,7 @@ public abstract class EntityLiving extends Entity {
this.releaseActiveItem();
} else {
if (!this.activeItem.isEmpty() && this.isHandRaised()) {
@@ -32,7 +32,7 @@ index eeca12bd7c6e59b872303fda1378a69d03dcf783..d354e9b504b6872f20a9e43352282758
this.b(this.activeItem, 16);
// CraftBukkit start - fire PlayerItemConsumeEvent
ItemStack itemstack;
-@@ -3177,8 +3181,8 @@ public abstract class EntityLiving extends Entity {
+@@ -3174,8 +3178,8 @@ public abstract class EntityLiving extends Entity {
this.a(this.getRaisedHand(), itemstack);
// CraftBukkit end
this.clearActiveItem();
diff --git a/Spigot-Server-Patches/0390-Fix-spawning-of-hanging-entities-that-are-not-ItemFr.patch b/Spigot-Server-Patches/0390-Fix-spawning-of-hanging-entities-that-are-not-ItemFr.patch
index 1635ff96f0..95f57aab3e 100644
--- a/Spigot-Server-Patches/0390-Fix-spawning-of-hanging-entities-that-are-not-ItemFr.patch
+++ b/Spigot-Server-Patches/0390-Fix-spawning-of-hanging-entities-that-are-not-ItemFr.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Fix spawning of hanging entities that are not ItemFrames and
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 310c4446734a7ebfadf0cbd74d1cfcee20ef3668..080f600008ce1cba12c2bfe07e014e8adb7b7b2b 100644
+index 45999be11cbbd08155ea882b98380178efe514fb..97176c02e31540315d256b7e0636e7285092c59e 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -1870,7 +1870,12 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0392-Fix-stuck-in-sneak-when-changing-worlds-MC-10657.patch b/Spigot-Server-Patches/0392-Fix-stuck-in-sneak-when-changing-worlds-MC-10657.patch
index ed16ef1555..f02237ae14 100644
--- a/Spigot-Server-Patches/0392-Fix-stuck-in-sneak-when-changing-worlds-MC-10657.patch
+++ b/Spigot-Server-Patches/0392-Fix-stuck-in-sneak-when-changing-worlds-MC-10657.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Fix stuck in sneak when changing worlds (MC-10657)
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 6787b467f18bb03a8d45dc254988b5084c74f499..bb60ce14f6c13bc3f123893150129edb955bfff5 100644
+index 8965141ab85df736e6adad6a3cf728864f582949..4cdd2612b41f7fe16f307dfdc05350009df2cbca 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -1016,6 +1016,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -18,7 +18,7 @@ index 6787b467f18bb03a8d45dc254988b5084c74f499..bb60ce14f6c13bc3f123893150129edb
PlayerChangedWorldEvent changeEvent = new PlayerChangedWorldEvent(this.getBukkitEntity(), worldserver1.getWorld());
this.world.getServer().getPluginManager().callEvent(changeEvent);
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 62b9c1f23fcc9df1ba49823a45b54b4e547813d0..a047375a231e49485a053903713b6ee5cbc9971f 100644
+index 0144e3ac2f0c09fe49b6cbc21799caf2352b85d0..15a12ebc266c54d2b29f368fc31df76b994b28ae 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -759,6 +759,8 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0394-Fix-AssertionError-when-player-hand-set-to-empty-typ.patch b/Spigot-Server-Patches/0394-Fix-AssertionError-when-player-hand-set-to-empty-typ.patch
index 84834967e9..b6b217a2a1 100644
--- a/Spigot-Server-Patches/0394-Fix-AssertionError-when-player-hand-set-to-empty-typ.patch
+++ b/Spigot-Server-Patches/0394-Fix-AssertionError-when-player-hand-set-to-empty-typ.patch
@@ -7,10 +7,10 @@ Fixes an AssertionError when setting the player's item in hand to null or a new
Fixes GH-2718
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index d354e9b504b6872f20a9e433522827589bd4778a..12b27c44d77b72fa4a4d42cfe3db8394a47d9c9b 100644
+index 0515587559a75e4afddbcac90f65d5d60156a527..f71ca4ee57d86c30d78c8292ced0531b963beabb 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -2040,6 +2040,7 @@ public abstract class EntityLiving extends Entity {
+@@ -2037,6 +2037,7 @@ public abstract class EntityLiving extends Entity {
return predicate.test(this.getItemInMainHand().getItem()) || predicate.test(this.getItemInOffHand().getItem());
}
diff --git a/Spigot-Server-Patches/0399-Optimize-Hoppers.patch b/Spigot-Server-Patches/0399-Optimize-Hoppers.patch
index 94cfe277e0..f65a9c19df 100644
--- a/Spigot-Server-Patches/0399-Optimize-Hoppers.patch
+++ b/Spigot-Server-Patches/0399-Optimize-Hoppers.patch
@@ -53,7 +53,7 @@ index d891be4115f35c7b9685faa34ce90380e989fb18..54552d181912133577cd2c16c0d54e47
+ double A(); default double getZ() { return this.A(); } // Paper - OBFHELPER
}
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
-index a075a41d954836864a5186b383e967a9ac262df8..64150130fa0081786190eada4cd2d1312a51572d 100644
+index dea478d4790be0c0d6e14cd7673d161abfc46e08..d1e4ee64aa395b38cad22f316308c4687ea56b9f 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -486,11 +486,12 @@ public final class ItemStack {
@@ -459,7 +459,7 @@ index a0a3adac3e2bc939b1809c5587929f674f4318a5..20df9bd21d0e4d2579d05d79672da2eb
if (!list.isEmpty()) {
diff --git a/src/main/java/net/minecraft/server/TileEntityLootable.java b/src/main/java/net/minecraft/server/TileEntityLootable.java
-index 5ebba482a65cfe6079484a99f016f968c59df8ee..d017904561d093bf8f0061f646a75aa53975be88 100644
+index e00ae999194f96fb4de556518abe495432a43a62..55b1e5da2b5128e479dbdf14eb1da692af1880fe 100644
--- a/src/main/java/net/minecraft/server/TileEntityLootable.java
+++ b/src/main/java/net/minecraft/server/TileEntityLootable.java
@@ -77,12 +77,19 @@ public abstract class TileEntityLootable extends TileEntityContainer {
@@ -485,7 +485,7 @@ index 5ebba482a65cfe6079484a99f016f968c59df8ee..d017904561d093bf8f0061f646a75aa5
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index dd3dd03200ad8f0219d6673abfe8fc87341a0fe6..4317c901419d13ed6f5737543399d4e340e30bc4 100644
+index 4c717afe243997e153a8ef5f703d8409bf126222..a9aad7045cf67cca765500ebad4db9af3cf17262 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1139,8 +1139,8 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0400-PlayerDeathEvent-shouldDropExperience.patch b/Spigot-Server-Patches/0400-PlayerDeathEvent-shouldDropExperience.patch
index dc9904aa1c..86c2ddce64 100644
--- a/Spigot-Server-Patches/0400-PlayerDeathEvent-shouldDropExperience.patch
+++ b/Spigot-Server-Patches/0400-PlayerDeathEvent-shouldDropExperience.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] PlayerDeathEvent#shouldDropExperience
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index bb60ce14f6c13bc3f123893150129edb955bfff5..2e902d7015dabad22d4ff6dfd79ed92255718651 100644
+index 4cdd2612b41f7fe16f307dfdc05350009df2cbca..b74a31904f0fedbff0534dd90e189c05282258b8 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -688,7 +688,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0404-Optimise-IEntityAccess-getPlayerByUUID.patch b/Spigot-Server-Patches/0404-Optimise-IEntityAccess-getPlayerByUUID.patch
index 2f5f38bf70..17be8ce539 100644
--- a/Spigot-Server-Patches/0404-Optimise-IEntityAccess-getPlayerByUUID.patch
+++ b/Spigot-Server-Patches/0404-Optimise-IEntityAccess-getPlayerByUUID.patch
@@ -23,7 +23,7 @@ index 48e8b005bd9589135eff03a110ecce8776ab208a..74d4c28246e7db850e6d993e07a84b2a
EntityHuman entityhuman = (EntityHuman) this.getPlayers().get(i);
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 8c0b1f28c3a914ce467345104e024650b9ebe2fe..8458ac3cf864774520afcb9ddc7cd60fc8f9d4e6 100644
+index 89dd2695d829024aa3dc48eec5c7dcc114ce3d92..54423fd1133b313d3d2e7550f03e660b9ab6db99 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -172,6 +172,15 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0406-Lag-compensate-eating.patch b/Spigot-Server-Patches/0406-Lag-compensate-eating.patch
index 0efa064d22..61bc5556dd 100644
--- a/Spigot-Server-Patches/0406-Lag-compensate-eating.patch
+++ b/Spigot-Server-Patches/0406-Lag-compensate-eating.patch
@@ -7,7 +7,7 @@ When the server is lagging, players will wait longer when eating.
Change to also use a time check instead if it passes.
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 12b27c44d77b72fa4a4d42cfe3db8394a47d9c9b..b213a13c18ad483472808f4fe9743f74821a25cd 100644
+index f71ca4ee57d86c30d78c8292ced0531b963beabb..fd8b3d05238329adf3f638b1e04fd95c08e0a74a 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -119,7 +119,7 @@ public abstract class EntityLiving extends Entity {
@@ -19,7 +19,7 @@ index 12b27c44d77b72fa4a4d42cfe3db8394a47d9c9b..b213a13c18ad483472808f4fe9743f74
protected int bl;
private BlockPosition bE;
private Optional<BlockPosition> bF;
-@@ -3018,6 +3018,11 @@ public abstract class EntityLiving extends Entity {
+@@ -3015,6 +3015,11 @@ public abstract class EntityLiving extends Entity {
return ((Byte) this.datawatcher.get(EntityLiving.an) & 2) > 0 ? EnumHand.OFF_HAND : EnumHand.MAIN_HAND;
}
@@ -31,7 +31,7 @@ index 12b27c44d77b72fa4a4d42cfe3db8394a47d9c9b..b213a13c18ad483472808f4fe9743f74
private void u() {
if (this.isHandRaised()) {
if (ItemStack.d(this.b(this.getRaisedHand()), this.activeItem)) {
-@@ -3027,7 +3032,13 @@ public abstract class EntityLiving extends Entity {
+@@ -3024,7 +3029,13 @@ public abstract class EntityLiving extends Entity {
this.b(this.activeItem, 5);
}
@@ -46,7 +46,7 @@ index 12b27c44d77b72fa4a4d42cfe3db8394a47d9c9b..b213a13c18ad483472808f4fe9743f74
this.s();
}
} else {
-@@ -3077,7 +3088,10 @@ public abstract class EntityLiving extends Entity {
+@@ -3074,7 +3085,10 @@ public abstract class EntityLiving extends Entity {
if (!itemstack.isEmpty() && !this.isHandRaised() || forceUpdate) { // Paper use override flag
this.activeItem = itemstack;
@@ -58,7 +58,7 @@ index 12b27c44d77b72fa4a4d42cfe3db8394a47d9c9b..b213a13c18ad483472808f4fe9743f74
if (!this.world.isClientSide) {
this.c(1, true);
this.c(2, enumhand == EnumHand.OFF_HAND);
-@@ -3101,7 +3115,10 @@ public abstract class EntityLiving extends Entity {
+@@ -3098,7 +3112,10 @@ public abstract class EntityLiving extends Entity {
}
} else if (!this.isHandRaised() && !this.activeItem.isEmpty()) {
this.activeItem = ItemStack.b;
@@ -70,7 +70,7 @@ index 12b27c44d77b72fa4a4d42cfe3db8394a47d9c9b..b213a13c18ad483472808f4fe9743f74
}
}
-@@ -3223,7 +3240,10 @@ public abstract class EntityLiving extends Entity {
+@@ -3220,7 +3237,10 @@ public abstract class EntityLiving extends Entity {
}
this.activeItem = ItemStack.b;
diff --git a/Spigot-Server-Patches/0409-Entity-Activation-Range-2.0.patch b/Spigot-Server-Patches/0409-Entity-Activation-Range-2.0.patch
index 17abf62b13..e843e15bec 100644
--- a/Spigot-Server-Patches/0409-Entity-Activation-Range-2.0.patch
+++ b/Spigot-Server-Patches/0409-Entity-Activation-Range-2.0.patch
@@ -318,7 +318,7 @@ index 50487dbf0ac162d7608b67b4fb50fa7f8bfba69d..04b28555b1bb68536e40bb6526136787
return this.c;
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 4317c901419d13ed6f5737543399d4e340e30bc4..97840c0a673402f258e172873fd6756bc23f298b 100644
+index a9aad7045cf67cca765500ebad4db9af3cf17262..822cd9b5a4695d5d17320a16d70eb4c977211759 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -82,6 +82,12 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0411-Tracking-Range-Improvements.patch b/Spigot-Server-Patches/0411-Tracking-Range-Improvements.patch
index d6a3c237e6..010f002920 100644
--- a/Spigot-Server-Patches/0411-Tracking-Range-Improvements.patch
+++ b/Spigot-Server-Patches/0411-Tracking-Range-Improvements.patch
@@ -8,7 +8,7 @@ Sets tracking range of watermobs to animals instead of misc and simplifies code
Also ignores Enderdragon, defaulting it to Mojang's setting
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index ab5413a39147180af2eb33512fc992a5dcbb69bf..b530316b582390c4c464bb1f3df48597c8bf7569 100644
+index f06c41d06f853b625dbd46822126810da3c3264a..210e91c56197818b622a3ef12a644ea1b77584e0 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -1736,6 +1736,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0414-Optimise-getChunkAt-calls-for-loaded-chunks.patch b/Spigot-Server-Patches/0414-Optimise-getChunkAt-calls-for-loaded-chunks.patch
index 0fe3d50adb..145508828a 100644
--- a/Spigot-Server-Patches/0414-Optimise-getChunkAt-calls-for-loaded-chunks.patch
+++ b/Spigot-Server-Patches/0414-Optimise-getChunkAt-calls-for-loaded-chunks.patch
@@ -65,7 +65,7 @@ index 1597b7a882769109f467d81ecbadc45ff6779b7e..67d6facd37462beef49dac311019b197
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 97840c0a673402f258e172873fd6756bc23f298b..73e0bf2d0851d2e10cd5b45a4bb90eba104bdc3d 100644
+index 822cd9b5a4695d5d17320a16d70eb4c977211759..7c6b7955c454c585eed7457d6680ce67e6219162 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -321,6 +321,14 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0415-Allow-overriding-the-java-version-check.patch b/Spigot-Server-Patches/0415-Allow-overriding-the-java-version-check.patch
index d326950c38..0d23692701 100644
--- a/Spigot-Server-Patches/0415-Allow-overriding-the-java-version-check.patch
+++ b/Spigot-Server-Patches/0415-Allow-overriding-the-java-version-check.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Allow overriding the java version check
-DPaper.IgnoreJavaVersion=true
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
-index 05b647fbb360910b2961c9276c2928fe71dad90c..5ec16547a20271074d034f7fbcb43e86cb1597e6 100644
+index d94d25481000c3cf98affdc2fbdf9fcedbc93d94..2049f9783bf93c56d8c4dcb395293c03f09b5b40 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -175,7 +175,7 @@ public class Main {
diff --git a/Spigot-Server-Patches/0417-Optimise-random-block-ticking.patch b/Spigot-Server-Patches/0417-Optimise-random-block-ticking.patch
index ca86c77eb0..cbccde1fe6 100644
--- a/Spigot-Server-Patches/0417-Optimise-random-block-ticking.patch
+++ b/Spigot-Server-Patches/0417-Optimise-random-block-ticking.patch
@@ -267,7 +267,7 @@ index 7c6b7955c454c585eed7457d6680ce67e6219162..a31d293a00d325e4ee1eba48126b112d
public boolean isSavingDisabled() {
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 4883b12a8033f62e7c777f6b6f21003d89f470e4..f4571b7892cb7962618c1fee3aad86311c92ca28 100644
+index 54423fd1133b313d3d2e7550f03e660b9ab6db99..d41981a5dc4beb9d63f52abea5653067144be932 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -556,7 +556,12 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0418-Entity-Jump-API.patch b/Spigot-Server-Patches/0418-Entity-Jump-API.patch
index 3e5df22702..e5134f0541 100644
--- a/Spigot-Server-Patches/0418-Entity-Jump-API.patch
+++ b/Spigot-Server-Patches/0418-Entity-Jump-API.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Entity Jump API
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 66bca610fbb8afc6f5b4430318c66d29af55fc19..e0a4866048276c44079e0b9034c1acea1f0498fa 100644
+index 9746346d6b9c432710f229f5355e4540c308ffb4..172b9de45f0f1b550acddc0c53b762c9e93f0d18 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -2754,8 +2754,10 @@ public abstract class EntityLiving extends Entity {
+@@ -2751,8 +2751,10 @@ public abstract class EntityLiving extends Entity {
} else if (this.aN() && (!this.onGround || d7 > d8)) {
this.c((Tag) TagsFluid.LAVA);
} else if ((this.onGround || flag && d7 <= d8) && this.jumpTicks == 0) {
diff --git a/Spigot-Server-Patches/0421-add-hand-to-BlockMultiPlaceEvent.patch b/Spigot-Server-Patches/0421-add-hand-to-BlockMultiPlaceEvent.patch
index 669c3d1bbc..a0abfd9cec 100644
--- a/Spigot-Server-Patches/0421-add-hand-to-BlockMultiPlaceEvent.patch
+++ b/Spigot-Server-Patches/0421-add-hand-to-BlockMultiPlaceEvent.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] add hand to BlockMultiPlaceEvent
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 37f6fdf1be6d0f8a4ec4b9998fa710876b5515c9..36afa821dc5f04d77b6f44fe7282444ec6a7b842 100644
+index 59205a848524f281edcab388a9ca40b3e08a9556..3bea7e9ccdfd225f1c6aa391b55e6d190f963534 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -330,13 +330,18 @@ public class CraftEventFactory {
+@@ -331,13 +331,18 @@ public class CraftEventFactory {
}
org.bukkit.inventory.ItemStack item;
diff --git a/Spigot-Server-Patches/0427-Optimise-TickListServer-by-rewriting-it.patch b/Spigot-Server-Patches/0427-Optimise-TickListServer-by-rewriting-it.patch
index b06dbbb88f..58b47c3276 100644
--- a/Spigot-Server-Patches/0427-Optimise-TickListServer-by-rewriting-it.patch
+++ b/Spigot-Server-Patches/0427-Optimise-TickListServer-by-rewriting-it.patch
@@ -1146,7 +1146,7 @@ index 3b8f56c0f0507ebdd9ac20be70688b4c0cfe4cf8..149d2b4f929c11b8baf17163bbd6ff82
}
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index d52a75ac37db59e4df23131aecc3e7fc6bedf3a9..7426c800002560bc5534aa3f683068fb2dcb7898 100644
+index d41981a5dc4beb9d63f52abea5653067144be932..a8a843f76e4161bb1afb7b44a6cce933a8104001 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -181,6 +181,15 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0428-Pillager-patrol-spawn-settings-and-per-player-option.patch b/Spigot-Server-Patches/0428-Pillager-patrol-spawn-settings-and-per-player-option.patch
index 06a51a33ea..16c7a7b64d 100644
--- a/Spigot-Server-Patches/0428-Pillager-patrol-spawn-settings-and-per-player-option.patch
+++ b/Spigot-Server-Patches/0428-Pillager-patrol-spawn-settings-and-per-player-option.patch
@@ -36,7 +36,7 @@ index f888fc1c5ef4212f81ed936da6485abadc336407..b987399ca3786a30f87c98658e8bf04d
private void entitiesTargetWithFollowRange() {
entitiesTargetWithFollowRange = getBoolean("entities-target-with-follow-range", entitiesTargetWithFollowRange);
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 2e902d7015dabad22d4ff6dfd79ed92255718651..7792ce6e94d25021666ef21da790f337d411234e 100644
+index b74a31904f0fedbff0534dd90e189c05282258b8..415049bb5fdcc5c3edaf71bc8ddc330fe6bbcdb2 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -81,6 +81,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0429-Ensure-Entity-is-never-double-registered.patch b/Spigot-Server-Patches/0429-Ensure-Entity-is-never-double-registered.patch
index 217d3156bc..92aa5f5288 100644
--- a/Spigot-Server-Patches/0429-Ensure-Entity-is-never-double-registered.patch
+++ b/Spigot-Server-Patches/0429-Ensure-Entity-is-never-double-registered.patch
@@ -23,7 +23,7 @@ index c49d157b8ca25f9811bf64396c207b1c1d6e085d..e895bf811ce5d441541725ade48e3f07
private boolean locked = false;
@Override
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 22a726a7c4af08d7e7f40c780f392110ca8bf943..d0ed0348a7568f8313f0073a06d3ff35dbffe184 100644
+index a8a843f76e4161bb1afb7b44a6cce933a8104001..815a668c60e6302940545259cce60e2dbe608464 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -530,6 +530,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0430-Fix-unregistering-entities-from-unloading-chunks.patch b/Spigot-Server-Patches/0430-Fix-unregistering-entities-from-unloading-chunks.patch
index d370f14857..a09637ea01 100644
--- a/Spigot-Server-Patches/0430-Fix-unregistering-entities-from-unloading-chunks.patch
+++ b/Spigot-Server-Patches/0430-Fix-unregistering-entities-from-unloading-chunks.patch
@@ -15,7 +15,7 @@ Combine that with a buggy detail of the previous implementation of
the Dupe UUID patch, then this was the likely source of the "Ghost entities"
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index d0ed0348a7568f8313f0073a06d3ff35dbffe184..e5f5efa00c69ca0a06b2f28313ef7163a0e5c208 100644
+index 815a668c60e6302940545259cce60e2dbe608464..26f82291ded548f7d623668d95d74833d5211709 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1385,9 +1385,9 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0433-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch b/Spigot-Server-Patches/0433-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch
index eb2f0be1a6..1d1bc2eaca 100644
--- a/Spigot-Server-Patches/0433-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch
+++ b/Spigot-Server-Patches/0433-Prevent-Double-PlayerChunkMap-adds-crashing-server.patch
@@ -26,7 +26,7 @@ index 210e91c56197818b622a3ef12a644ea1b77584e0..2d3eeb3a87e345ceb3496ec60d684452
EntityTypes<?> entitytypes = entity.getEntityType();
int i = entitytypes.getChunkRange() * 16;
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index e5f5efa00c69ca0a06b2f28313ef7163a0e5c208..9ae46983ce46f6e9f05869333474d7a3dac41658 100644
+index 26f82291ded548f7d623668d95d74833d5211709..3ebb6140b248925c53bc8912d4eeaced00d30fe2 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -1351,7 +1351,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0434-Optimize-Collision-to-not-load-chunks.patch b/Spigot-Server-Patches/0434-Optimize-Collision-to-not-load-chunks.patch
index f7661f6e0b..2ca7e66b4a 100644
--- a/Spigot-Server-Patches/0434-Optimize-Collision-to-not-load-chunks.patch
+++ b/Spigot-Server-Patches/0434-Optimize-Collision-to-not-load-chunks.patch
@@ -40,7 +40,7 @@ index b27260270de80de371a5a71fa0516aa43c44c83e..1cc40b1f0af9e617b2a71bcc442543e1
Stream<VoxelShape> c(@Nullable Entity entity, AxisAlignedBB axisalignedbb, Predicate<Entity> predicate);
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index a047375a231e49485a053903713b6ee5cbc9971f..31f33e8de4b976b6a895568dd55dae35645e9a80 100644
+index 15a12ebc266c54d2b29f368fc31df76b994b28ae..f0caadb6117d761e6ce0ee573e2c351b894a00c2 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -722,6 +722,7 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0435-Don-t-tick-dead-players.patch b/Spigot-Server-Patches/0435-Don-t-tick-dead-players.patch
index 0c8149a78c..7f83b49e23 100644
--- a/Spigot-Server-Patches/0435-Don-t-tick-dead-players.patch
+++ b/Spigot-Server-Patches/0435-Don-t-tick-dead-players.patch
@@ -7,7 +7,7 @@ Causes sync chunk loads and who knows what all else.
This is safe because Spectators are skipped in unloaded chunks too in vanilla.
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 7792ce6e94d25021666ef21da790f337d411234e..c6f326787328ff6b2f974d653dc9e7932c3c0205 100644
+index 415049bb5fdcc5c3edaf71bc8ddc330fe6bbcdb2..a03340ae87bf967895d39bed1767f9753c7f0c60 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -469,7 +469,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0437-Optimize-PlayerChunkMap-memory-use-for-visibleChunks.patch b/Spigot-Server-Patches/0437-Optimize-PlayerChunkMap-memory-use-for-visibleChunks.patch
index a23ddfcac4..430f1dc967 100644
--- a/Spigot-Server-Patches/0437-Optimize-PlayerChunkMap-memory-use-for-visibleChunks.patch
+++ b/Spigot-Server-Patches/0437-Optimize-PlayerChunkMap-memory-use-for-visibleChunks.patch
@@ -83,7 +83,7 @@ index 9615c4d324e42f7f91a7e60b6151c16d20e9c739..a68e4fc411ae84f12b1ca7443fa66f63
List<PlayerChunk> allChunks = new ArrayList<>(visibleChunks.values());
List<EntityPlayer> players = world.players;
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index 6ac39fc6cafdcbf7883e868ecb58a2ebfad41601..bb4d54ebee573964cf3026888da108584b12972f 100644
+index 2d3eeb3a87e345ceb3496ec60d684452c070d4b7..c31e7c977194c953a47f5f04d9f90442a88e2db3 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -56,8 +56,33 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -243,7 +243,7 @@ index 6ac39fc6cafdcbf7883e868ecb58a2ebfad41601..bb4d54ebee573964cf3026888da10858
while (objectbidirectionaliterator.hasNext()) {
Entry<PlayerChunk> entry = (Entry) objectbidirectionaliterator.next();
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index 080f600008ce1cba12c2bfe07e014e8adb7b7b2b..3ec021746ffaea89f09126538fcaa0555872ac17 100644
+index 97176c02e31540315d256b7e0636e7285092c59e..b8bbc99d5d11cff21955f4b98f8673c6ad3580b7 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -73,6 +73,7 @@ import net.minecraft.server.GameRules;
diff --git a/Spigot-Server-Patches/0439-Mid-Tick-Chunk-Tasks-Speed-up-processing-of-chunk-lo.patch b/Spigot-Server-Patches/0439-Mid-Tick-Chunk-Tasks-Speed-up-processing-of-chunk-lo.patch
index e48c29aeab..bcc5be24a3 100644
--- a/Spigot-Server-Patches/0439-Mid-Tick-Chunk-Tasks-Speed-up-processing-of-chunk-lo.patch
+++ b/Spigot-Server-Patches/0439-Mid-Tick-Chunk-Tasks-Speed-up-processing-of-chunk-lo.patch
@@ -226,7 +226,7 @@ index 0d91765cb6386c9483a6b5494e37bd7806638928..5b6f3d811ff55d0c6d55bddc7707ef87
// Spigot Start
CrashReport crashreport;
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 9ae46983ce46f6e9f05869333474d7a3dac41658..876ba27b34b0e5ecf9df548ef23c4b84749a7bdd 100644
+index 3ebb6140b248925c53bc8912d4eeaced00d30fe2..8f1a47fcb317fc79f8827e93d9bfe8e9023cca20 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -452,6 +452,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0440-Don-t-move-existing-players-to-world-spawn.patch b/Spigot-Server-Patches/0440-Don-t-move-existing-players-to-world-spawn.patch
index 6b1d1d031a..989b94baf8 100644
--- a/Spigot-Server-Patches/0440-Don-t-move-existing-players-to-world-spawn.patch
+++ b/Spigot-Server-Patches/0440-Don-t-move-existing-players-to-world-spawn.patch
@@ -10,7 +10,7 @@ larger than the keep loaded range.
By skipping this, we avoid potential for a large spike on server start.
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index c6f326787328ff6b2f974d653dc9e7932c3c0205..03e1b76a8b6850a26ed8a7b1992e09756166f5b8 100644
+index a03340ae87bf967895d39bed1767f9753c7f0c60..48ee5d7beaf336f7eb440a4a8a6e3bba2321b0b9 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -118,7 +118,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -40,7 +40,7 @@ index c6f326787328ff6b2f974d653dc9e7932c3c0205..03e1b76a8b6850a26ed8a7b1992e0975
this.playerInteractManager.a((WorldServer) world);
}
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 31f33e8de4b976b6a895568dd55dae35645e9a80..502f4b93e04c78f4681459abfb160c6fc2279c72 100644
+index f0caadb6117d761e6ce0ee573e2c351b894a00c2..4676b4dc4b22c838c946a342af9e88b56436de70 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -134,6 +134,8 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0443-Add-Raw-Byte-ItemStack-Serialization.patch b/Spigot-Server-Patches/0443-Add-Raw-Byte-ItemStack-Serialization.patch
index 1bafe64951..4919aa4c85 100644
--- a/Spigot-Server-Patches/0443-Add-Raw-Byte-ItemStack-Serialization.patch
+++ b/Spigot-Server-Patches/0443-Add-Raw-Byte-ItemStack-Serialization.patch
@@ -18,7 +18,7 @@ index d7ebbce930fc65437697d25637346b9c99e6a8fa..5d807082281527c78a08d01430e42b3e
return DataConverterRegistry.c;
}
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
-index 64150130fa0081786190eada4cd2d1312a51572d..00725529793d6c2fe26ecacf900355b40e31dad8 100644
+index d1e4ee64aa395b38cad22f316308c4687ea56b9f..9a9678ed76b95131df0c12af5bba3440789699aa 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -144,6 +144,7 @@ public final class ItemStack {
diff --git a/Spigot-Server-Patches/0445-Delay-unsafe-actions-until-after-entity-ticking-is-d.patch b/Spigot-Server-Patches/0445-Delay-unsafe-actions-until-after-entity-ticking-is-d.patch
index 2c1359b508..e5c08756d6 100644
--- a/Spigot-Server-Patches/0445-Delay-unsafe-actions-until-after-entity-ticking-is-d.patch
+++ b/Spigot-Server-Patches/0445-Delay-unsafe-actions-until-after-entity-ticking-is-d.patch
@@ -6,7 +6,7 @@ Subject: [PATCH] Delay unsafe actions until after entity ticking is done
This will help prevent many cases of unregistering entities during entity ticking
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index 876ba27b34b0e5ecf9df548ef23c4b84749a7bdd..b2048c87e715bc656e8c52e6628dd9a0905a6638 100644
+index 8f1a47fcb317fc79f8827e93d9bfe8e9023cca20..8f87e5121631dfa50f6cb95d036a700135d21b2c 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -61,6 +61,16 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0452-Prevent-opening-inventories-when-frozen.patch b/Spigot-Server-Patches/0452-Prevent-opening-inventories-when-frozen.patch
index 5f5192528c..6668a7ee17 100644
--- a/Spigot-Server-Patches/0452-Prevent-opening-inventories-when-frozen.patch
+++ b/Spigot-Server-Patches/0452-Prevent-opening-inventories-when-frozen.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Prevent opening inventories when frozen
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 03e1b76a8b6850a26ed8a7b1992e09756166f5b8..27926559a665a5af14f11b8b4331cdb5f120eb41 100644
+index 48ee5d7beaf336f7eb440a4a8a6e3bba2321b0b9..99513a682c0b1bbe141098427883ee561a4d5e9d 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -420,7 +420,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
diff --git a/Spigot-Server-Patches/0454-Don-t-run-entity-collision-code-if-not-needed.patch b/Spigot-Server-Patches/0454-Don-t-run-entity-collision-code-if-not-needed.patch
index ba59d2269d..99cda91e08 100644
--- a/Spigot-Server-Patches/0454-Don-t-run-entity-collision-code-if-not-needed.patch
+++ b/Spigot-Server-Patches/0454-Don-t-run-entity-collision-code-if-not-needed.patch
@@ -7,10 +7,10 @@ Will not run if max entity craming is disabled and
the max collisions per entity is less than or equal to 0
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index e0a4866048276c44079e0b9034c1acea1f0498fa..40ac2b8153dbbb10b732123f95b9c0a3a807e54e 100644
+index 172b9de45f0f1b550acddc0c53b762c9e93f0d18..574d9ef4f4f0e95a66252b0428ff84c72d5bc32c 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -2820,10 +2820,16 @@ public abstract class EntityLiving extends Entity {
+@@ -2817,10 +2817,16 @@ public abstract class EntityLiving extends Entity {
protected void doTick() {}
protected void collideNearby() {
diff --git a/Spigot-Server-Patches/0455-Optimise-entity-hard-collision-checking.patch b/Spigot-Server-Patches/0455-Optimise-entity-hard-collision-checking.patch
index bfa5a5ff85..3b50e1bdc1 100644
--- a/Spigot-Server-Patches/0455-Optimise-entity-hard-collision-checking.patch
+++ b/Spigot-Server-Patches/0455-Optimise-entity-hard-collision-checking.patch
@@ -190,7 +190,7 @@ index 74d4c28246e7db850e6d993e07a84b2a6ca24ce2..267a6baae89c181eed545e6758fac711
}
}
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index 418ba04a837ee2b17cc679edd35ba09830c01f28..365539e53efdb7e729b580f52fb23659cbde4f0a 100644
+index bcfa630ae8d7a1454ea2f8e6e88b8902cb586467..24047e02c0232217be6ced5708daef754d74e280 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -1111,6 +1111,32 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0458-Implement-Player-Client-Options-API.patch b/Spigot-Server-Patches/0458-Implement-Player-Client-Options-API.patch
index ddc384cbdc..c7a503f05d 100644
--- a/Spigot-Server-Patches/0458-Implement-Player-Client-Options-API.patch
+++ b/Spigot-Server-Patches/0458-Implement-Player-Client-Options-API.patch
@@ -158,7 +158,7 @@ index dbc3552d50c4129e1844c8a379ab5ba396645f52..be97a0b01b3272e01ece90172f283e3f
return this.e;
}
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 3ed64e19b9e0287a7396b9b5a63641794fad583c..3a2d5ff06b4114502348aac48ebf3b251fec858b 100644
+index c3d84b1d53e835cf467c42c7adaeb774010366af..3951d3366b9450465391d5ecba993442cc7b88b8 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -1,5 +1,8 @@
diff --git a/Spigot-Server-Patches/0459-Fix-Chunk-Post-Processing-deadlock-risk.patch b/Spigot-Server-Patches/0459-Fix-Chunk-Post-Processing-deadlock-risk.patch
index 5174e53798..14f102c38e 100644
--- a/Spigot-Server-Patches/0459-Fix-Chunk-Post-Processing-deadlock-risk.patch
+++ b/Spigot-Server-Patches/0459-Fix-Chunk-Post-Processing-deadlock-risk.patch
@@ -37,7 +37,7 @@ index 91755cd7313d87bae85584dff140acbc6467428f..0080a0cbe58d1a81c434ef97659428c8
}
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index 09f94bd242318155dbb46e12224ad3e47eed40cf..4ab719930f5b35c0ae221e9345f1e2eda7d9d719 100644
+index 6e7754588960a1e6ceacc8b4cfd8237a10e210bb..9cf0d6d5e65ce6bdd5dfa8e1c3280432a8c7829b 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -133,6 +133,8 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0461-Broadcast-join-message-to-console.patch b/Spigot-Server-Patches/0461-Broadcast-join-message-to-console.patch
index 038e379f20..7eebec3846 100644
--- a/Spigot-Server-Patches/0461-Broadcast-join-message-to-console.patch
+++ b/Spigot-Server-Patches/0461-Broadcast-join-message-to-console.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Broadcast join message to console
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index bbe41a108b424abd3b3acfdfee4d368467a2c52e..45fce4f08eb6f3f67306d45be407b85b3fda604b 100644
+index db049d529c4ed9157a1136695e5cd14429fd442f..3e63eeca4f22fa4e607adf0e5845df1498ffcef5 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -211,9 +211,9 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0462-Fix-Longstanding-Broken-behavior-of-PlayerJoinEvent.patch b/Spigot-Server-Patches/0462-Fix-Longstanding-Broken-behavior-of-PlayerJoinEvent.patch
index 5bd5b46a10..ceee3120d4 100644
--- a/Spigot-Server-Patches/0462-Fix-Longstanding-Broken-behavior-of-PlayerJoinEvent.patch
+++ b/Spigot-Server-Patches/0462-Fix-Longstanding-Broken-behavior-of-PlayerJoinEvent.patch
@@ -28,7 +28,7 @@ receives a deterministic result, and should no longer require 1 tick
delays anymore.
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 83a3c8d8d15f5792f5618ab301e3c9ed1c1162cd..b90d5fdd58ede1cf57e36b6f65ce259cf55615ba 100644
+index d4d789e84a2b6a3ba108532630a89f51b3a23f54..bc78b08d3f235de5d98107403c41451034f97976 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -104,6 +104,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -40,7 +40,7 @@ index 83a3c8d8d15f5792f5618ab301e3c9ed1c1162cd..b90d5fdd58ede1cf57e36b6f65ce259c
// CraftBukkit end
public PlayerNaturallySpawnCreaturesEvent playerNaturallySpawnedEvent; // Paper
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index 4ab719930f5b35c0ae221e9345f1e2eda7d9d719..8de86684dda275585826617b41d6792f233b814c 100644
+index 9cf0d6d5e65ce6bdd5dfa8e1c3280432a8c7829b..987d4129d7ec9c8be4f6a20376923702e895f231 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -1535,6 +1535,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -52,7 +52,7 @@ index 4ab719930f5b35c0ae221e9345f1e2eda7d9d719..8de86684dda275585826617b41d6792f
if (!(entity instanceof EntityComplexPart)) {
EntityTypes<?> entitytypes = entity.getEntityType();
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 45fce4f08eb6f3f67306d45be407b85b3fda604b..881265d9f3f5432c0f79142abc8d6ca2f5609243 100644
+index 3e63eeca4f22fa4e607adf0e5845df1498ffcef5..521b972377d21a6dd8781e604bf220e0652e5b74 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -200,6 +200,12 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0463-Load-Chunks-for-Login-Asynchronously.patch b/Spigot-Server-Patches/0463-Load-Chunks-for-Login-Asynchronously.patch
index 658675ac17..040072c8a7 100644
--- a/Spigot-Server-Patches/0463-Load-Chunks-for-Login-Asynchronously.patch
+++ b/Spigot-Server-Patches/0463-Load-Chunks-for-Login-Asynchronously.patch
@@ -31,7 +31,7 @@ index a0249d7a60c1381ebd7131d735a73fa2e9250543..561610ee1a99c781ccabd600812a0d10
public void c(Vec3D vec3d) {
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index b90d5fdd58ede1cf57e36b6f65ce259cf55615ba..658f5d8515db84a55d9cea092163feac596ea956 100644
+index bc78b08d3f235de5d98107403c41451034f97976..ab38ad863d112be39ee676d0ff14fdefe2679048 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -43,6 +43,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -110,7 +110,7 @@ index 6faa8764d19f3e58808de9dc84145f765c8958a8..22ded747e9e8683faa17924149f9b279
this.minecraftServer.getMethodProfiler().enter("keepAlive");
// Paper Start - give clients a longer time to respond to pings as per pre 1.12.2 timings
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 881265d9f3f5432c0f79142abc8d6ca2f5609243..3d110c998f6b28e55055637bbfeff6f2ebdb2747 100644
+index 521b972377d21a6dd8781e604bf220e0652e5b74..2c0d9c52fa90639c6b3b542b626a8b55b82a0df1 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -54,11 +54,12 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0465-Add-PlayerAttackEntityCooldownResetEvent.patch b/Spigot-Server-Patches/0465-Add-PlayerAttackEntityCooldownResetEvent.patch
index 6559567b47..be16bad720 100644
--- a/Spigot-Server-Patches/0465-Add-PlayerAttackEntityCooldownResetEvent.patch
+++ b/Spigot-Server-Patches/0465-Add-PlayerAttackEntityCooldownResetEvent.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Add PlayerAttackEntityCooldownResetEvent
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 40ac2b8153dbbb10b732123f95b9c0a3a807e54e..7a2140e4b901027997b2884275b35b43fe2175bc 100644
+index 574d9ef4f4f0e95a66252b0428ff84c72d5bc32c..ad92d6d30f0e3280c2e4cab6d0c96280d40ae2ef 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -1825,7 +1825,16 @@ public abstract class EntityLiving extends Entity {
+@@ -1822,7 +1822,16 @@ public abstract class EntityLiving extends Entity {
EntityDamageEvent event = CraftEventFactory.handleLivingEntityDamageEvent(this, damagesource, originalDamage, hardHatModifier, blockingModifier, armorModifier, resistanceModifier, magicModifier, absorptionModifier, hardHat, blocking, armor, resistance, magic, absorption);
if (damagesource.getEntity() instanceof EntityHuman) {
diff --git a/Spigot-Server-Patches/0466-Allow-multiple-callbacks-to-schedule-for-Callback-Ex.patch b/Spigot-Server-Patches/0466-Allow-multiple-callbacks-to-schedule-for-Callback-Ex.patch
index fa113669a2..d339b0cec6 100644
--- a/Spigot-Server-Patches/0466-Allow-multiple-callbacks-to-schedule-for-Callback-Ex.patch
+++ b/Spigot-Server-Patches/0466-Allow-multiple-callbacks-to-schedule-for-Callback-Ex.patch
@@ -14,7 +14,7 @@ Use an ArrayDeque to store this Queue
We make sure to also implement a pattern that is recursion safe too.
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index 8de86684dda275585826617b41d6792f233b814c..850602a32d371bd030665732b762b4bcbd49e25e 100644
+index 987d4129d7ec9c8be4f6a20376923702e895f231..f2bbb61c7f54fabd9ee087eb4f7ec56aa3df6e99 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -112,24 +112,32 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0469-Fix-numerous-item-duplication-issues-and-teleport-is.patch b/Spigot-Server-Patches/0469-Fix-numerous-item-duplication-issues-and-teleport-is.patch
index 83264e8f0b..962f9d6fb1 100644
--- a/Spigot-Server-Patches/0469-Fix-numerous-item-duplication-issues-and-teleport-is.patch
+++ b/Spigot-Server-Patches/0469-Fix-numerous-item-duplication-issues-and-teleport-is.patch
@@ -88,10 +88,10 @@ index 51e9f4a6e09474a7489d2872a800308ee3f02e46..250bccee4a27801b41c50d59e93396c6
}
}
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 36afa821dc5f04d77b6f44fe7282444ec6a7b842..6c5036b23a41769167fd53b8cc5454e5e747598e 100644
+index 3bea7e9ccdfd225f1c6aa391b55e6d190f963534..f84d045fe951e482c10a6ad16c41076bf8808168 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -803,7 +803,8 @@ public class CraftEventFactory {
+@@ -804,7 +804,8 @@ public class CraftEventFactory {
for (org.bukkit.inventory.ItemStack stack : event.getDrops()) {
if (stack == null || stack.getType() == Material.AIR || stack.getAmount() == 0) continue;
diff --git a/Spigot-Server-Patches/0473-Expose-game-version.patch b/Spigot-Server-Patches/0473-Expose-game-version.patch
index adbc9ffe64..50dbdd7b1f 100644
--- a/Spigot-Server-Patches/0473-Expose-game-version.patch
+++ b/Spigot-Server-Patches/0473-Expose-game-version.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Expose game version
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index 7981f23d043142615a6a0043ba748b22532ded22..ed08106c56974bebed1a32a1c865e1169308c787 100644
+index c80fd400cd6eb2c31890ebce55844da36a84c7d0..38700faee15b901a0240401d50ed0dc7de211c37 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -518,6 +518,13 @@ public final class CraftServer implements Server {
diff --git a/Spigot-Server-Patches/0476-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch b/Spigot-Server-Patches/0476-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch
index 417fed7984..5f8b1c974c 100644
--- a/Spigot-Server-Patches/0476-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch
+++ b/Spigot-Server-Patches/0476-Set-cap-on-JDK-per-thread-native-byte-buffer-cache.patch
@@ -17,7 +17,7 @@ keeping long lived large direct buffers in cache.
Set system properly at server startup if not set already to help protect from this.
diff --git a/src/main/java/org/bukkit/craftbukkit/Main.java b/src/main/java/org/bukkit/craftbukkit/Main.java
-index 3e4454a14fdf6305b262c15cf67203854debef28..a8cd55d3c288f2f1c0f7f9392f2f08f12f69f969 100644
+index ac8f1681d91251ff84938f94fc59db97560000d6..9dd994f8b111cec2dfa30a962db8654a68c344b1 100644
--- a/src/main/java/org/bukkit/craftbukkit/Main.java
+++ b/src/main/java/org/bukkit/craftbukkit/Main.java
@@ -20,6 +20,7 @@ public class Main {
diff --git a/Spigot-Server-Patches/0478-Use-distance-map-to-optimise-entity-tracker.patch b/Spigot-Server-Patches/0478-Use-distance-map-to-optimise-entity-tracker.patch
index 86f8a28979..551967ead2 100644
--- a/Spigot-Server-Patches/0478-Use-distance-map-to-optimise-entity-tracker.patch
+++ b/Spigot-Server-Patches/0478-Use-distance-map-to-optimise-entity-tracker.patch
@@ -56,7 +56,7 @@ index d9ed9df3021dab1f5ee0a51215a002253ac1e34c..b32d41fac5f855e302469209f368c367
return i;
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index 850602a32d371bd030665732b762b4bcbd49e25e..a7be3f6d2a11c1e1b310f0fcdbe2e485a2113c59 100644
+index f2bbb61c7f54fabd9ee087eb4f7ec56aa3df6e99..de51ca8965a406cdab73e75be26fbf055383d037 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -145,21 +145,55 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0479-Optimize-isOutsideRange-to-use-distance-maps.patch b/Spigot-Server-Patches/0479-Optimize-isOutsideRange-to-use-distance-maps.patch
index f3f2c0e867..0c436066a8 100644
--- a/Spigot-Server-Patches/0479-Optimize-isOutsideRange-to-use-distance-maps.patch
+++ b/Spigot-Server-Patches/0479-Optimize-isOutsideRange-to-use-distance-maps.patch
@@ -147,7 +147,7 @@ index eebd4c50a7324250d3ebe7060739a71af4243f72..a6363b73522f9d27534b6e80f4b3789e
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 658f5d8515db84a55d9cea092163feac596ea956..2b7e7a7aaa56b9c51fa0c8065ff25828d92c09ee 100644
+index ab38ad863d112be39ee676d0ff14fdefe2679048..747657396a855d56a6746a9b827de69ad3710b3d 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -113,6 +113,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -191,7 +191,7 @@ index 9cb2ff09da0b8832e58eed4d70741853a25c9011..7f660d3c528f5fb4150e4ee8b2991343
// Paper start
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index a7be3f6d2a11c1e1b310f0fcdbe2e485a2113c59..026562c72d7e95345d9369c6d6331cf6cedb8f17 100644
+index de51ca8965a406cdab73e75be26fbf055383d037..c6564edcc7f9d9df3855eef9a9f702c21c44c2d5 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -159,6 +159,17 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0481-No-Tick-view-distance-implementation.patch b/Spigot-Server-Patches/0481-No-Tick-view-distance-implementation.patch
index 328841ee74..8668cd3492 100644
--- a/Spigot-Server-Patches/0481-No-Tick-view-distance-implementation.patch
+++ b/Spigot-Server-Patches/0481-No-Tick-view-distance-implementation.patch
@@ -115,7 +115,7 @@ index 7e57a53ec614a2f7d2672edff9d7c0e0dca42377..c072f61e8c88eac8335acd660d8ff0e2
if (flag1) {
ChunkMapDistance.this.j.a(ChunkTaskQueueSorter.a(() -> {
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
-index 70dda78684c1dc620fec5e4132a4b013bcaff37e..6e0882e7e396f76b451e11c6cc6959e813de0a1f 100644
+index 747657396a855d56a6746a9b827de69ad3710b3d..69b10093552fd3b84d355e216a3eb6bee3d486ef 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -115,6 +115,8 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
@@ -235,7 +235,7 @@ index 7f660d3c528f5fb4150e4ee8b29913436f125b06..40347212ad1bcf857d5b8ddb0ee6a698
public CompletableFuture<Either<IChunkAccess, PlayerChunk.Failure>> a(ChunkStatus chunkstatus, PlayerChunkMap playerchunkmap) {
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index 026562c72d7e95345d9369c6d6331cf6cedb8f17..fe343f70ce8024c86363637fda8e5c09cc6e60a9 100644
+index c6564edcc7f9d9df3855eef9a9f702c21c44c2d5..e4f81e93bfb305af7b2bfbccac3fbe981dbddf11 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -95,7 +95,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
@@ -567,7 +567,7 @@ index 026562c72d7e95345d9369c6d6331cf6cedb8f17..fe343f70ce8024c86363637fda8e5c09
}
}
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index 3d110c998f6b28e55055637bbfeff6f2ebdb2747..59f00891ee2d1641678d4903a365cb94247bf08f 100644
+index 2c0d9c52fa90639c6b3b542b626a8b55b82a0df1..382f334f82efefcfbd1781ac09e191cd27a0fb0c 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -175,7 +175,7 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0483-Fix-Light-Command.patch b/Spigot-Server-Patches/0483-Fix-Light-Command.patch
index e4180ffedb..d7fd8d334c 100644
--- a/Spigot-Server-Patches/0483-Fix-Light-Command.patch
+++ b/Spigot-Server-Patches/0483-Fix-Light-Command.patch
@@ -136,7 +136,7 @@ index 40347212ad1bcf857d5b8ddb0ee6a698e2568201..e5751adde516544722b95016f64b2a46
// Paper start - per player view distance
// there can be potential desync with player's last mapped section and the view distance map, so use the
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index fe343f70ce8024c86363637fda8e5c09cc6e60a9..750749f8533e95b33a6f555900c23bb11b3fda40 100644
+index e4f81e93bfb305af7b2bfbccac3fbe981dbddf11..e4527f3f899ac194d629f39bfdb650667d2dab80 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -96,6 +96,12 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0488-Wait-for-Async-Tasks-during-shutdown.patch b/Spigot-Server-Patches/0488-Wait-for-Async-Tasks-during-shutdown.patch
index 5c20dd5058..2810cdbc53 100644
--- a/Spigot-Server-Patches/0488-Wait-for-Async-Tasks-during-shutdown.patch
+++ b/Spigot-Server-Patches/0488-Wait-for-Async-Tasks-during-shutdown.patch
@@ -22,7 +22,7 @@ index b32d41fac5f855e302469209f368c3674b849fe3..7c1c929819c450f853c91618b2853fcb
// CraftBukkit end
if (this.getServerConnection() != null) {
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index b62e068d5af2b9a43796c721e5cc291976d933a1..72cd690a192a0eb468d77aa1779f2a5eec60fdc2 100644
+index 810c0236da937ecbd12a10c5beffe0859842e056..11c9b740b6b1ff30bd33c188c03f2b77b12faf7b 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -934,6 +934,35 @@ public final class CraftServer implements Server {
diff --git a/Spigot-Server-Patches/0490-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch b/Spigot-Server-Patches/0490-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch
index 1407659fe3..a05bea1609 100644
--- a/Spigot-Server-Patches/0490-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch
+++ b/Spigot-Server-Patches/0490-Protect-Bedrock-and-End-Portal-Frames-from-being-des.patch
@@ -152,7 +152,7 @@ index 22a19e761fdec68cc9405988b977021a8b6398eb..e408ec8c645e9ceb278a13a5b0de8ecf
this.world.getMethodProfiler().enter("explosion_blocks");
diff --git a/src/main/java/net/minecraft/server/World.java b/src/main/java/net/minecraft/server/World.java
-index ba50189b10b54f5b35448c898f8c3495ddf8e112..b598c48692ff340a081995384aeecf9a2266d10f 100644
+index 302b0eda863dcaf7eeea7b0e1820929a46f44c54..5f81997db78c989e942351e80a0d2558f4b90fcd 100644
--- a/src/main/java/net/minecraft/server/World.java
+++ b/src/main/java/net/minecraft/server/World.java
@@ -406,6 +406,10 @@ public abstract class World implements GeneratorAccess, AutoCloseable {
diff --git a/Spigot-Server-Patches/0491-Optimize-NibbleArray-to-use-pooled-buffers.patch b/Spigot-Server-Patches/0491-Optimize-NibbleArray-to-use-pooled-buffers.patch
index a45915f397..b6213c209b 100644
--- a/Spigot-Server-Patches/0491-Optimize-NibbleArray-to-use-pooled-buffers.patch
+++ b/Spigot-Server-Patches/0491-Optimize-NibbleArray-to-use-pooled-buffers.patch
@@ -70,7 +70,7 @@ index 53199595da71a25710bd1ff8ee2868ee63edc0e1..37c44a89f28c44915fcae5a7e2c4797b
}
diff --git a/src/main/java/net/minecraft/server/LightEngineStorageSky.java b/src/main/java/net/minecraft/server/LightEngineStorageSky.java
-index 06bc8371fe9de4d23fdd47e5a3919541bb399fd8..097f58e9ac3f4096d3b9dad75b6ebe76021fa92c 100644
+index 7cec18fcfc311d20beca244c0affe5d6c1849e46..a35e7b392c74fadf2760d1fc2021e98d33858cb5 100644
--- a/src/main/java/net/minecraft/server/LightEngineStorageSky.java
+++ b/src/main/java/net/minecraft/server/LightEngineStorageSky.java
@@ -166,9 +166,9 @@ public class LightEngineStorageSky extends LightEngineStorage<LightEngineStorage
diff --git a/Spigot-Server-Patches/0493-Reduce-allocation-of-Vec3D-by-entity-tracker.patch b/Spigot-Server-Patches/0493-Reduce-allocation-of-Vec3D-by-entity-tracker.patch
index 25023a5205..f26f984bff 100644
--- a/Spigot-Server-Patches/0493-Reduce-allocation-of-Vec3D-by-entity-tracker.patch
+++ b/Spigot-Server-Patches/0493-Reduce-allocation-of-Vec3D-by-entity-tracker.patch
@@ -39,7 +39,7 @@ index 0c46297e6ff229538d77b2f481e4ab13ea14c48e..f75c09d44a19f84588f21a55ea8f0dd8
if (!flag4 && this.o <= 400 && !this.q && this.r == this.tracker.isOnGround()) {
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index 750749f8533e95b33a6f555900c23bb11b3fda40..2938a7d46a471aca89b3dc3d8cad0659aea7c69f 100644
+index e4527f3f899ac194d629f39bfdb650667d2dab80..3c758c74f24443031d905dad4c0d7460762b89fb 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -2131,9 +2131,14 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0496-Workaround-for-Client-Lag-Spikes-MC-162253.patch b/Spigot-Server-Patches/0496-Workaround-for-Client-Lag-Spikes-MC-162253.patch
index 6e53596b7f..36d635ac90 100644
--- a/Spigot-Server-Patches/0496-Workaround-for-Client-Lag-Spikes-MC-162253.patch
+++ b/Spigot-Server-Patches/0496-Workaround-for-Client-Lag-Spikes-MC-162253.patch
@@ -37,7 +37,7 @@ index 860dc98ab4f84c470b27726314943936d23fcb79..8d45588ecfa33b8c7335df3db58ed686
return chunksection == Chunk.a || chunksection.c();
}
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index 2938a7d46a471aca89b3dc3d8cad0659aea7c69f..6dd64ce8794b8c2b5704556532159135e85a4b6c 100644
+index 3c758c74f24443031d905dad4c0d7460762b89fb..df315700fb28d682f406f8122e7cc187dbc13273 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -1956,12 +1956,112 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0497-Implement-Chunk-Priority-Urgency-System-for-Chunks.patch b/Spigot-Server-Patches/0497-Implement-Chunk-Priority-Urgency-System-for-Chunks.patch
index 6b9286402f..a6ad60392c 100644
--- a/Spigot-Server-Patches/0497-Implement-Chunk-Priority-Urgency-System-for-Chunks.patch
+++ b/Spigot-Server-Patches/0497-Implement-Chunk-Priority-Urgency-System-for-Chunks.patch
@@ -1223,7 +1223,7 @@ index b34269cd29fe15408e8811a8ab88b8d0fa43fcd3..4210aa793b497889ca732a51b2eadea0
net.minecraft.server.Chunk chunk = (net.minecraft.server.Chunk) either.left().orElse(null);
return CompletableFuture.completedFuture(chunk == null ? null : chunk.getBukkitChunk());
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
-index 3a2d5ff06b4114502348aac48ebf3b251fec858b..2cbf405470973323064c4205739d164f742c67a7 100644
+index 3951d3366b9450465391d5ecba993442cc7b88b8..72cd52fd7f0ba8df5be8989111d76e7180f033d7 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -750,6 +750,14 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
diff --git a/Spigot-Server-Patches/0499-Optimize-sending-packets-to-nearby-locations-sounds-.patch b/Spigot-Server-Patches/0499-Optimize-sending-packets-to-nearby-locations-sounds-.patch
index 79e13aff50..21b6bd0475 100644
--- a/Spigot-Server-Patches/0499-Optimize-sending-packets-to-nearby-locations-sounds-.patch
+++ b/Spigot-Server-Patches/0499-Optimize-sending-packets-to-nearby-locations-sounds-.patch
@@ -11,7 +11,7 @@ This will drastically cut down on packet sending cost for worlds with
lots of players in them.
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index e55e11d5c97d656db8fed42c1581375077129906..f17399a73e0de49d2e7325747a2637f447df78f2 100644
+index 273dce1feae284204a643dd06468e0b903745a1f..f8e0742ea9a42cf496b4b7e00201fed025b83889 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -1059,16 +1059,40 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0500-Improve-Chunk-Status-Transition-Speed.patch b/Spigot-Server-Patches/0500-Improve-Chunk-Status-Transition-Speed.patch
index 0de038ba5a..a5bf178346 100644
--- a/Spigot-Server-Patches/0500-Improve-Chunk-Status-Transition-Speed.patch
+++ b/Spigot-Server-Patches/0500-Improve-Chunk-Status-Transition-Speed.patch
@@ -54,7 +54,7 @@ index 04dea2c9fd9337631a6289c7242338e166d6bc1e..446c401b3139f8c6c0e70d883340f014
// Paper start - no-tick view distance
public final Chunk getSendingChunk() {
diff --git a/src/main/java/net/minecraft/server/PlayerChunkMap.java b/src/main/java/net/minecraft/server/PlayerChunkMap.java
-index ae42793b5a2f5bb06f068d0365378776901a4351..0e684a040b1a6cee056e8716c2a69620fc440af3 100644
+index 6a1ebb6daf2fdcb2bd276e36672fbec05d98adef..2fac2e59ab0712459f03cdacc0f67c1528c5a5bf 100644
--- a/src/main/java/net/minecraft/server/PlayerChunkMap.java
+++ b/src/main/java/net/minecraft/server/PlayerChunkMap.java
@@ -740,7 +740,7 @@ public class PlayerChunkMap extends IChunkLoader implements PlayerChunk.d {
diff --git a/Spigot-Server-Patches/0503-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch b/Spigot-Server-Patches/0503-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch
index 4411c0c4c9..e4db6ce410 100644
--- a/Spigot-Server-Patches/0503-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch
+++ b/Spigot-Server-Patches/0503-Use-seed-based-lookup-for-Treasure-Maps-Fixes-lag-fr.patch
@@ -19,7 +19,7 @@ index 90be8c6091dc590a020721f45c7ff7b137cc806d..faa556d4358bc9890ae80c18ee10c38a
}
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
-index e99e47b0844bb33560c7c6fcf7712656e9d8cdb4..472a0c624f09b7c6c07bbe8feadadf3ac7dd05a3 100644
+index 8f87e5121631dfa50f6cb95d036a700135d21b2c..2b04577c153fc4563e59b67afee12411a5de5314 100644
--- a/src/main/java/net/minecraft/server/WorldServer.java
+++ b/src/main/java/net/minecraft/server/WorldServer.java
@@ -302,8 +302,8 @@ public class WorldServer extends World implements GeneratorAccessSeed {
diff --git a/Spigot-Server-Patches/0507-Add-Plugin-Tickets-to-API-Chunk-Methods.patch b/Spigot-Server-Patches/0507-Add-Plugin-Tickets-to-API-Chunk-Methods.patch
index 07c1b2e67c..a945bdd477 100644
--- a/Spigot-Server-Patches/0507-Add-Plugin-Tickets-to-API-Chunk-Methods.patch
+++ b/Spigot-Server-Patches/0507-Add-Plugin-Tickets-to-API-Chunk-Methods.patch
@@ -22,7 +22,7 @@ wants it to collect even faster, they can restore that setting back to 1 instead
Not adding it to .getType() though to keep behavior consistent with vanilla for performance reasons.
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftServer.java b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
-index 72cd690a192a0eb468d77aa1779f2a5eec60fdc2..56bf840e3d514153ed249093761ddcc04b282403 100644
+index 11c9b740b6b1ff30bd33c188c03f2b77b12faf7b..506e76eecd4be892bdc70367c0ee4d9764569ca7 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftServer.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftServer.java
@@ -346,7 +346,7 @@ public final class CraftServer implements Server {
@@ -44,7 +44,7 @@ index 72cd690a192a0eb468d77aa1779f2a5eec60fdc2..56bf840e3d514153ed249093761ddcc0
printSaveWarning = false;
console.autosavePeriod = configuration.getInt("ticks-per.autosave");
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
-index bf2f602bb07aa4c7c0a22ad9be9e77d7fd017191..724c0816d89b0261edf65e1b8459988bd0d5d4d8 100644
+index 4210aa793b497889ca732a51b2eadea08d88bfac..65b36a17418ae64b6166704b3d0ecf97df1e9445 100644
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
@@ -402,9 +402,22 @@ public class CraftWorld implements World {
diff --git a/Spigot-Server-Patches/0525-Improve-Legacy-Component-serialization-size.patch b/Spigot-Server-Patches/0525-Improve-Legacy-Component-serialization-size.patch
index 3646572e72..c4c00e14fb 100644
--- a/Spigot-Server-Patches/0525-Improve-Legacy-Component-serialization-size.patch
+++ b/Spigot-Server-Patches/0525-Improve-Legacy-Component-serialization-size.patch
@@ -7,7 +7,7 @@ Don't constantly send format: false for all formatting options when parent alrea
has it false
diff --git a/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java b/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java
-index a423e3bf3906d3114af885c48d0b45d88d7e7d8b..54f6f7d86741c3f318fa76bafe04b55cf420c35b 100644
+index bfeea111b6f0d614073c13a3dc4996692f8ad136..00c24bf2fb1df7246d128c5bf33a2c01c4f398c2 100644
--- a/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java
+++ b/src/main/java/org/bukkit/craftbukkit/util/CraftChatMessage.java
@@ -45,6 +45,7 @@ public final class CraftChatMessage {
diff --git a/Spigot-Server-Patches/0528-Convert-legacy-attributes-in-Item-Meta.patch b/Spigot-Server-Patches/0528-Convert-legacy-attributes-in-Item-Meta.patch
index b64212b098..8b4a253ec6 100644
--- a/Spigot-Server-Patches/0528-Convert-legacy-attributes-in-Item-Meta.patch
+++ b/Spigot-Server-Patches/0528-Convert-legacy-attributes-in-Item-Meta.patch
@@ -30,7 +30,7 @@ index bf3b236b2090fe4dd67e2f87b0b27c8d7186cb48..c5dd25add39298342a6f4b2a05e137de
public CraftAttributeMap(AttributeMapBase handle) {
this.handle = handle;
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
-index fe4aa562aa5a938dea9cd083ccff8c9cb28a7159..8f48b58c98ba40d5d7deb6775957e2c6b4d334c6 100644
+index 4220c9a5e3f8cb6738451d1eaf100aff88ec5cbd..e49aa5dd5f8ef8f0c6ad4c4d776adf628c3aa980 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -492,7 +492,7 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
diff --git a/Spigot-Server-Patches/0531-Support-components-in-ItemMeta.patch b/Spigot-Server-Patches/0531-Support-components-in-ItemMeta.patch
index cfaa7386b0..e282bc8e11 100644
--- a/Spigot-Server-Patches/0531-Support-components-in-ItemMeta.patch
+++ b/Spigot-Server-Patches/0531-Support-components-in-ItemMeta.patch
@@ -17,7 +17,7 @@ index fd3e6cda6a0e7154c50608ba9a4b70f3c43c8f2a..94a6d0ad76b10b8790ffb2019bf69724
return IChatBaseComponent.ChatSerializer.a.toJson(ichatbasecomponent);
}
diff --git a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
-index 8f48b58c98ba40d5d7deb6775957e2c6b4d334c6..fc09a30b9792cff4717d0767f7fcef50f6f4ff90 100644
+index e49aa5dd5f8ef8f0c6ad4c4d776adf628c3aa980..4616b3e99b511a83b349d607c7d9faac79baf8df 100644
--- a/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
+++ b/src/main/java/org/bukkit/craftbukkit/inventory/CraftMetaItem.java
@@ -873,11 +873,23 @@ class CraftMetaItem implements ItemMeta, Damageable, Repairable, BlockDataMeta {
diff --git a/Spigot-Server-Patches/0535-Spawn-player-in-correct-world-on-login.patch b/Spigot-Server-Patches/0535-Spawn-player-in-correct-world-on-login.patch
index 588f4781c6..fa510ccd99 100644
--- a/Spigot-Server-Patches/0535-Spawn-player-in-correct-world-on-login.patch
+++ b/Spigot-Server-Patches/0535-Spawn-player-in-correct-world-on-login.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Spawn player in correct world on login
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
-index f17399a73e0de49d2e7325747a2637f447df78f2..3c2f1f140c3991195bb8147bd65d9cd16a8fd3da 100644
+index f8e0742ea9a42cf496b4b7e00201fed025b83889..9e438590113b2c7a318c812637c8aa14341df3e6 100644
--- a/src/main/java/net/minecraft/server/PlayerList.java
+++ b/src/main/java/net/minecraft/server/PlayerList.java
@@ -119,7 +119,18 @@ public abstract class PlayerList {
diff --git a/Spigot-Server-Patches/0536-Add-PrepareResultEvent.patch b/Spigot-Server-Patches/0536-Add-PrepareResultEvent.patch
index 3cbf03236d..fbb086034a 100644
--- a/Spigot-Server-Patches/0536-Add-PrepareResultEvent.patch
+++ b/Spigot-Server-Patches/0536-Add-PrepareResultEvent.patch
@@ -5,7 +5,7 @@ Subject: [PATCH] Add PrepareResultEvent
Adds a new event for all crafting stations that generate a result slot item
-Anvil and Grindstone now extend this event
+Anvil, Grindstone and Smithing now extend this event
diff --git a/src/main/java/net/minecraft/server/Container.java b/src/main/java/net/minecraft/server/Container.java
index 4effcc860f9b1cf9f13f4c6ae02a6b16df459259..268bedd042b651514aa94b735876de9c40bae56f 100644
@@ -82,11 +82,11 @@ index 9490f74ee426e162844432073b3d78a2b6cddb32..1fe21ca13a1eecb64cb2d3f4f18993e1
@Override
diff --git a/src/main/java/net/minecraft/server/ContainerSmithing.java b/src/main/java/net/minecraft/server/ContainerSmithing.java
-index 76a81b30fa9e53952202c61717231d68d7be8e71..80a98e10df3f880b77c4dc99c9b871a2362f50cd 100644
+index a54f6c96392fe4097aee3e6f95fe1244fa273542..50a4e305babbfefd83e5cf180ef6da1958c3215c 100644
--- a/src/main/java/net/minecraft/server/ContainerSmithing.java
+++ b/src/main/java/net/minecraft/server/ContainerSmithing.java
@@ -65,6 +65,7 @@ public class ContainerSmithing extends ContainerAnvilAbstract {
- this.resultInventory.setItem(0, itemstack);
+ org.bukkit.craftbukkit.event.CraftEventFactory.callPrepareSmithingEvent(getBukkitView(), itemstack); // CraftBukkit
}
+ org.bukkit.craftbukkit.event.CraftEventFactory.callPrepareResultEvent(this, 2); // Paper
@@ -106,10 +106,10 @@ index 270bf7f3e6ca15891419f1ce3e88d9aff094bee6..a235f6406dc06ceafea6fbe429bf595d
private void a(IInventory iinventory, ItemStack itemstack) {
diff --git a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-index 6c5036b23a41769167fd53b8cc5454e5e747598e..dbc46fcda3f3e006d9e7b7a89ab942b46a05cd9f 100644
+index f84d045fe951e482c10a6ad16c41076bf8808168..ddb58c1d502b6eaaee146eaa61d97cf5740d3990 100644
--- a/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
+++ b/src/main/java/org/bukkit/craftbukkit/event/CraftEventFactory.java
-@@ -1548,12 +1548,33 @@ public class CraftEventFactory {
+@@ -1549,19 +1549,44 @@ public class CraftEventFactory {
return event;
}
@@ -125,6 +125,19 @@ index 6c5036b23a41769167fd53b8cc5454e5e747598e..dbc46fcda3f3e006d9e7b7a89ab942b4
+ //return event; // Paper
}
+ // Paper end
+
+- public static PrepareSmithingEvent callPrepareSmithingEvent(InventoryView view, ItemStack item) {
+- PrepareSmithingEvent event = new PrepareSmithingEvent(view, CraftItemStack.asCraftMirror(item).clone());
+- event.getView().getPlayer().getServer().getPluginManager().callEvent(event);
++ // Paper start - disable this method, handled in callPrepareResultEvent
++ public static void callPrepareSmithingEvent(InventoryView view, ItemStack item) { // Paper - verify nothing uses return - handled below in PrepareResult
++ PrepareSmithingEvent event = new PrepareSmithingEvent(view, CraftItemStack.asCraftMirror(item)); // Paper - remove clone
++ //event.getView().getPlayer().getServer().getPluginManager().callEvent(event); // Paper - disable event
+ event.getInventory().setItem(2, event.getResult());
+- return event;
++ //return event; // Paper
+ }
++ // Paper end
+
+ // Paper start - support specific overrides for prepare result
+ public static void callPrepareResultEvent(net.minecraft.server.Container container, int resultSlot) {
@@ -136,6 +149,8 @@ index 6c5036b23a41769167fd53b8cc5454e5e747598e..dbc46fcda3f3e006d9e7b7a89ab942b4
+ event = new PrepareAnvilEvent(view, result);
+ } else if (view.getTopInventory() instanceof org.bukkit.inventory.GrindstoneInventory) {
+ event = new com.destroystokyo.paper.event.inventory.PrepareGrindstoneEvent(view, result);
++ } else if (view.getTopInventory() instanceof org.bukkit.inventory.SmithingInventory) {
++ event = new PrepareSmithingEvent(view, result);
+ } else {
+ event = new com.destroystokyo.paper.event.inventory.PrepareResultEvent(view, result);
+ }
diff --git a/Spigot-Server-Patches/0538-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch b/Spigot-Server-Patches/0538-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch
index 8ed61b5a0d..794f202126 100644
--- a/Spigot-Server-Patches/0538-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch
+++ b/Spigot-Server-Patches/0538-Don-t-check-chunk-for-portal-on-world-gen-entity-add.patch
@@ -5,10 +5,10 @@ Subject: [PATCH] Don't check chunk for portal on world gen entity add
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
-index 7a2140e4b901027997b2884275b35b43fe2175bc..c388999d104682b84b5f0936efce9d270247d08c 100644
+index ad92d6d30f0e3280c2e4cab6d0c96280d40ae2ef..b5c595a4b5d74366f4cdc927673ac60923e46e90 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
-@@ -2917,7 +2917,7 @@ public abstract class EntityLiving extends Entity {
+@@ -2914,7 +2914,7 @@ public abstract class EntityLiving extends Entity {
Entity entity = this.getVehicle();
super.stopRiding(suppressCancellation); // Paper - suppress
diff --git a/work/Bukkit b/work/Bukkit
-Subproject f1e73b038b29211b199ff9b13bca576daeb660b
+Subproject 09f10fd90008c556aafbfaaa256fd7199db4505
diff --git a/work/CraftBukkit b/work/CraftBukkit
-Subproject 8b831a965200a2ba7d1c01d720e265565ae9f4d
+Subproject 7c03d257dda5e6d029d4a14a3d1e811801938ef