diff --git a/gradle.properties b/gradle.properties index 8dab92ea6..6cb32a029 100644 --- a/gradle.properties +++ b/gradle.properties @@ -2,7 +2,7 @@ group=com.lokamc.slice version=1.20.4-R0.1-SNAPSHOT mcVersion=1.20.4 -paperRef=0ae58c09a15ee1ad307a2b8ef7e8ad735d336651 +paperRef=1281f4f5526c0b8bdc32915c41dc6af6b4f9fea2 org.gradle.caching=true org.gradle.parallel=true diff --git a/patches/api/0008-Set-multiple-team-settings-at-once.patch b/patches/api/0008-Set-multiple-team-settings-at-once.patch index 6279e05c7..1acb8db20 100644 --- a/patches/api/0008-Set-multiple-team-settings-at-once.patch +++ b/patches/api/0008-Set-multiple-team-settings-at-once.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Set multiple team settings at once diff --git a/src/main/java/org/bukkit/scoreboard/Team.java b/src/main/java/org/bukkit/scoreboard/Team.java -index cacb58d25c249e2ecd6083ed0f30d5ffb345220a..188949e51d2f32357d35baa04b8b17bc9b753bc7 100644 +index cacb58d25c249e2ecd6083ed0f30d5ffb345220a..b0ed2c57321dae0d00b47dd23e67866592249993 100644 --- a/src/main/java/org/bukkit/scoreboard/Team.java +++ b/src/main/java/org/bukkit/scoreboard/Team.java @@ -514,6 +514,24 @@ public interface Team extends net.kyori.adventure.audience.ForwardingAudience { @@ -23,11 +23,11 @@ index cacb58d25c249e2ecd6083ed0f30d5ffb345220a..188949e51d2f32357d35baa04b8b17bc + * @param options A Paired list of options + * @throws IllegalStateException + */ -+ void teamOptions(net.kyori.adventure.text.Component displayName, -+ net.kyori.adventure.text.Component prefix, -+ net.kyori.adventure.text.Component suffix, -+ net.kyori.adventure.text.format.NamedTextColor color, -+ java.util.List> options) throws IllegalStateException; ++ void teamOptions(@Nullable net.kyori.adventure.text.Component displayName, ++ @Nullable net.kyori.adventure.text.Component prefix, ++ @Nullable net.kyori.adventure.text.Component suffix, ++ @Nullable net.kyori.adventure.text.format.NamedTextColor color, ++ @Nullable java.util.List> options) throws IllegalStateException; + //Slice end + /** diff --git a/patches/api/0009-Smooth-Teleports.patch b/patches/api/0009-Smooth-Teleports.patch index 2574d7dc8..49c314e1f 100644 --- a/patches/api/0009-Smooth-Teleports.patch +++ b/patches/api/0009-Smooth-Teleports.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Smooth Teleports diff --git a/src/main/java/org/bukkit/entity/Player.java b/src/main/java/org/bukkit/entity/Player.java -index ae61a39b25267b84fe0b8766e4b12d9b24b44ded..3a7d0900e7802c40377086ba8acec5a3f90a340d 100644 +index ae61a39b25267b84fe0b8766e4b12d9b24b44ded..36ae75f004f6eb1031e9b414526bea9cd48d11d0 100644 --- a/src/main/java/org/bukkit/entity/Player.java +++ b/src/main/java/org/bukkit/entity/Player.java @@ -3437,6 +3437,19 @@ public interface Player extends HumanEntity, Conversable, OfflinePlayer, PluginM @@ -22,7 +22,7 @@ index ae61a39b25267b84fe0b8766e4b12d9b24b44ded..3a7d0900e7802c40377086ba8acec5a3 + */ + // Slice start + @org.jetbrains.annotations.ApiStatus.Experimental -+ void teleportWithoutRespawn(Location location); ++ void teleportWithoutRespawn(@NotNull Location location); + // Slice end + // Paper start - Teleport API diff --git a/patches/api/0011-Add-PlayerPreChunkLoadEvent.patch b/patches/api/0011-Add-PlayerPreChunkLoadEvent.patch index 8c3151c68..f5bfeecb0 100644 --- a/patches/api/0011-Add-PlayerPreChunkLoadEvent.patch +++ b/patches/api/0011-Add-PlayerPreChunkLoadEvent.patch @@ -6,10 +6,10 @@ Subject: [PATCH] Add PlayerPreChunkLoadEvent diff --git a/src/main/java/io/papermc/paper/event/packet/PlayerPreChunkLoadEvent.java b/src/main/java/io/papermc/paper/event/packet/PlayerPreChunkLoadEvent.java new file mode 100644 -index 0000000000000000000000000000000000000000..b5cc9538a70c7ce0b494d4878d51b52134c2fd75 +index 0000000000000000000000000000000000000000..946af80dd54f602b5ceb61365ca98b06411f8177 --- /dev/null +++ b/src/main/java/io/papermc/paper/event/packet/PlayerPreChunkLoadEvent.java -@@ -0,0 +1,69 @@ +@@ -0,0 +1,70 @@ +package io.papermc.paper.event.packet; + +import org.bukkit.Chunk; @@ -34,7 +34,7 @@ index 0000000000000000000000000000000000000000..b5cc9538a70c7ce0b494d4878d51b521 + private final Player player; + private boolean cancel; + -+ public PlayerPreChunkLoadEvent(World world, int chunkX, int chunkZ, @NotNull Player player) { ++ public PlayerPreChunkLoadEvent(@NotNull World world, int chunkX, int chunkZ, @NotNull Player player) { + this.world = world; + this.chunkX = chunkX; + this.chunkZ = chunkZ; @@ -47,6 +47,7 @@ index 0000000000000000000000000000000000000000..b5cc9538a70c7ce0b494d4878d51b521 + return handlers; + } + ++ @NotNull + public World getWorld() { + return world; + } @@ -81,14 +82,15 @@ index 0000000000000000000000000000000000000000..b5cc9538a70c7ce0b494d4878d51b521 +} \ No newline at end of file diff --git a/src/main/java/org/bukkit/World.java b/src/main/java/org/bukkit/World.java -index 415a137775f072d1aefa841b01b6bf7a5f97b6a3..ffd89e5e2039c0f1662236db112bbf25eabb0a17 100644 +index 415a137775f072d1aefa841b01b6bf7a5f97b6a3..0a9f6c7dd69acc7bf87af87b397c34b80871033b 100644 --- a/src/main/java/org/bukkit/World.java +++ b/src/main/java/org/bukkit/World.java -@@ -525,6 +525,8 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient +@@ -525,6 +525,9 @@ public interface World extends RegionAccessor, WorldInfo, PluginMessageRecipient //@Deprecated // Paper public boolean refreshChunk(int x, int z); -+ it.unimi.dsi.fastutil.longs.LongOpenHashSet getSentChunks(Player p); // Slice ++ @NotNull ++ it.unimi.dsi.fastutil.longs.LongOpenHashSet getSentChunks(@NotNull Player p); // Slice + /** * Gets whether the chunk at the specified chunk coordinates is force diff --git a/patches/api/0012-Equipment-Packet-Caching.patch b/patches/api/0012-Equipment-Packet-Caching.patch index f0345ba02..341c0df0a 100644 --- a/patches/api/0012-Equipment-Packet-Caching.patch +++ b/patches/api/0012-Equipment-Packet-Caching.patch @@ -5,7 +5,7 @@ Subject: [PATCH] Equipment Packet Caching diff --git a/src/main/java/org/bukkit/entity/LivingEntity.java b/src/main/java/org/bukkit/entity/LivingEntity.java -index 47b0154928b3d36e2602da202df07defbcf82108..27c57d2e0c67f2bf753505a2ae1ccd5451241df8 100644 +index 47b0154928b3d36e2602da202df07defbcf82108..53f46bc741a2bc0dcb9ebe74079fae6f5f2dc15a 100644 --- a/src/main/java/org/bukkit/entity/LivingEntity.java +++ b/src/main/java/org/bukkit/entity/LivingEntity.java @@ -1276,4 +1276,11 @@ public interface LivingEntity extends Attributable, Damageable, ProjectileSource @@ -17,12 +17,12 @@ index 47b0154928b3d36e2602da202df07defbcf82108..27c57d2e0c67f2bf753505a2ae1ccd54 + /** + * @param p The player to send this entity's equipment packet to + */ -+ void sendEquipment(Player p); ++ void sendEquipment(@NotNull Player p); + // Slice end } diff --git a/src/main/java/org/bukkit/event/entity/EntityEquipmentItemLookup.java b/src/main/java/org/bukkit/event/entity/EntityEquipmentItemLookup.java new file mode 100644 -index 0000000000000000000000000000000000000000..6c329ca3c22d1fd712041334c5c1e7bd7e7201ac +index 0000000000000000000000000000000000000000..48d2eb3bbb8dbcb6714ee47c4159c0604657a78c --- /dev/null +++ b/src/main/java/org/bukkit/event/entity/EntityEquipmentItemLookup.java @@ -0,0 +1,54 @@ @@ -55,7 +55,7 @@ index 0000000000000000000000000000000000000000..6c329ca3c22d1fd712041334c5c1e7bd + return itemStack; + } + -+ public void setItemStack(ItemStack itemStack) { ++ public void setItemStack(@NotNull ItemStack itemStack) { + this.itemStack = itemStack; + } + @@ -82,10 +82,10 @@ index 0000000000000000000000000000000000000000..6c329ca3c22d1fd712041334c5c1e7bd +} diff --git a/src/main/java/org/bukkit/event/player/PlayerReceiveEquipmentEvent.java b/src/main/java/org/bukkit/event/player/PlayerReceiveEquipmentEvent.java new file mode 100644 -index 0000000000000000000000000000000000000000..513d62342d8e29e8d3c92fe932d0d77f659cf2f1 +index 0000000000000000000000000000000000000000..a8f83d19341c2f3024ba8113478ed482657b8589 --- /dev/null +++ b/src/main/java/org/bukkit/event/player/PlayerReceiveEquipmentEvent.java -@@ -0,0 +1,61 @@ +@@ -0,0 +1,63 @@ +package org.bukkit.event.player; + +import org.bukkit.entity.Entity; @@ -93,6 +93,7 @@ index 0000000000000000000000000000000000000000..513d62342d8e29e8d3c92fe932d0d77f +import org.bukkit.event.Cancellable; +import org.bukkit.event.HandlerList; +import org.jetbrains.annotations.NotNull; ++import org.jetbrains.annotations.Nullable; + +/** + * Called when a player is about to receive an equipment packet about another player @@ -118,11 +119,12 @@ index 0000000000000000000000000000000000000000..513d62342d8e29e8d3c92fe932d0d77f + return tracked; + } + ++ @Nullable + public String getTag() { + return tag; + } + -+ public void setTag(String tag) { ++ public void setTag(@Nullable String tag) { + this.tag = tag; + } + diff --git a/patches/api/0019-ChunkStatusChangeEvent.patch b/patches/api/0019-ChunkStatusChangeEvent.patch index 2dc78fdb6..83fc7514d 100644 --- a/patches/api/0019-ChunkStatusChangeEvent.patch +++ b/patches/api/0019-ChunkStatusChangeEvent.patch @@ -6,10 +6,10 @@ Subject: [PATCH] ChunkStatusChangeEvent diff --git a/src/main/java/com/destroystokyo/paper/event/chunk/ChunkStatusChangeEvent.java b/src/main/java/com/destroystokyo/paper/event/chunk/ChunkStatusChangeEvent.java new file mode 100644 -index 0000000000000000000000000000000000000000..512664d4a7a6821b8d79d0aabf5c31a61fcae6b9 +index 0000000000000000000000000000000000000000..9154bc8a072d8e5f3fd9790606508af048a612eb --- /dev/null +++ b/src/main/java/com/destroystokyo/paper/event/chunk/ChunkStatusChangeEvent.java -@@ -0,0 +1,58 @@ +@@ -0,0 +1,61 @@ +package com.destroystokyo.paper.event.chunk; + +import org.bukkit.Chunk; @@ -27,21 +27,24 @@ index 0000000000000000000000000000000000000000..512664d4a7a6821b8d79d0aabf5c31a6 + private final ChunkStatus currentState; + private final ChunkStatus newState; + -+ public ChunkStatusChangeEvent(Chunk chunk, ChunkStatus currentState, ChunkStatus newState) { ++ public ChunkStatusChangeEvent(@NotNull Chunk chunk, @NotNull ChunkStatus currentState, @NotNull ChunkStatus newState) { + super(); + this.chunk = chunk; + this.currentState = currentState; + this.newState = newState; + } + ++ @NotNull + public Chunk getChunk() { + return chunk; + } + ++ @NotNull + public ChunkStatus getCurrentState() { + return currentState; + } + ++ @NotNull + public ChunkStatus getNewState() { + return newState; + } diff --git a/patches/server/0014-Add-PlayerPreChunkLoadEvent.patch b/patches/server/0014-Add-PlayerPreChunkLoadEvent.patch index 049132cd1..8817a447b 100644 --- a/patches/server/0014-Add-PlayerPreChunkLoadEvent.patch +++ b/patches/server/0014-Add-PlayerPreChunkLoadEvent.patch @@ -18,15 +18,16 @@ index 1b090f1e79b996e52097afc49c1cec85936653e6..5185bcbf5363fa2c7e2b0226706cc66d private static final byte CHUNK_TICKET_STAGE_NONE = 0; private static final byte CHUNK_TICKET_STAGE_LOADING = 1; diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -index 7727a4322155c9b208f097bec751368c01671a07..88507e50e1fd0e9e8bfb124d0162db15e0d046a5 100644 +index 7727a4322155c9b208f097bec751368c01671a07..d71b6e3b3535ab2815ef5ec15361732d13593c37 100644 --- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java +++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java -@@ -538,6 +538,12 @@ public class CraftWorld extends CraftRegionAccessor implements World { +@@ -538,6 +538,13 @@ public class CraftWorld extends CraftRegionAccessor implements World { return true; } + @Override -+ public it.unimi.dsi.fastutil.longs.LongOpenHashSet getSentChunks(Player p) { ++ @NotNull ++ public it.unimi.dsi.fastutil.longs.LongOpenHashSet getSentChunks(@NotNull Player p) { + ServerPlayer craftPlayer = ((CraftPlayer) p).getHandle(); + return craftPlayer.chunkLoader.sentChunks; + }