mirror of
https://github.com/PurpurMC/Purpur.git
synced 2026-02-17 16:37:43 +01:00
Updated Upstream (Paper)
Upstream has released updates that appear to apply and compile correctly Paper Changes: PaperMC/Paper@babffb5 Undeprecate and fix Boat#getBoatMaterial (#8217) PaperMC/Paper@d60497e Updated Upstream (Bukkit/CraftBukkit) PaperMC/Paper@dd3e4e7 Initial support for signed messages (#8198) PaperMC/Paper@ceef4b9 Don't call AsyncTabCompleteEvent from netty IO thread (#8218) PaperMC/Paper@e0486ae Fix suggest command message for brigadier syntax exceptions (#8221)
This commit is contained in:
@@ -389,7 +389,7 @@ index 0000000000000000000000000000000000000000..ae2464920c9412ac90b819a540ee58be
|
||||
+
|
||||
+}
|
||||
diff --git a/src/main/java/org/bukkit/map/MapPalette.java b/src/main/java/org/bukkit/map/MapPalette.java
|
||||
index 8e6ad6ffb6918742d47b58d6cb1ad646d5e3df5f..331adbaf782c00d801a36c0c9551451a817daf6d 100644
|
||||
index 3a9aaca2e76411a9c27f9f5e0f22d060d5a66d06..9584e245144b561b4f6745b2f26a4f69a6f92891 100644
|
||||
--- a/src/main/java/org/bukkit/map/MapPalette.java
|
||||
+++ b/src/main/java/org/bukkit/map/MapPalette.java
|
||||
@@ -1,6 +1,7 @@
|
||||
@@ -400,16 +400,16 @@ index 8e6ad6ffb6918742d47b58d6cb1ad646d5e3df5f..331adbaf782c00d801a36c0c9551451a
|
||||
import java.awt.Color;
|
||||
import java.awt.Graphics2D;
|
||||
import java.awt.Image;
|
||||
@@ -35,7 +36,7 @@ public final class MapPalette {
|
||||
@@ -40,7 +41,7 @@ public final class MapPalette {
|
||||
}
|
||||
|
||||
@NotNull
|
||||
- static final Color[] colors = {
|
||||
+ public static final Color[] colors = { // Pufferfish - public access
|
||||
c(0, 0, 0), c(0, 0, 0), c(0, 0, 0), c(0, 0, 0),
|
||||
c(0, 0, 0, 0), c(0, 0, 0, 0), c(0, 0, 0, 0), c(0, 0, 0, 0),
|
||||
c(89, 125, 39), c(109, 153, 48), c(127, 178, 56), c(67, 94, 29),
|
||||
c(174, 164, 115), c(213, 201, 140), c(247, 233, 163), c(130, 123, 86),
|
||||
@@ -206,9 +207,15 @@ public final class MapPalette {
|
||||
@@ -211,9 +212,15 @@ public final class MapPalette {
|
||||
temp.getRGB(0, 0, temp.getWidth(), temp.getHeight(), pixels, 0, temp.getWidth());
|
||||
|
||||
byte[] result = new byte[temp.getWidth() * temp.getHeight()];
|
||||
|
||||
@@ -1,103 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: BillyGalbreath <blake.galbreath@gmail.com>
|
||||
Date: Mon, 11 Jul 2022 21:09:14 -0500
|
||||
Subject: [PATCH] Chat Preview API
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/purpurmc/purpur/event/player/PlayerPreviewChatEvent.java b/src/main/java/org/purpurmc/purpur/event/player/PlayerPreviewChatEvent.java
|
||||
new file mode 100644
|
||||
index 0000000000000000000000000000000000000000..94ccdf11201774f9bea3ba56c4dde148ff5199f8
|
||||
--- /dev/null
|
||||
+++ b/src/main/java/org/purpurmc/purpur/event/player/PlayerPreviewChatEvent.java
|
||||
@@ -0,0 +1,91 @@
|
||||
+package org.purpurmc.purpur.event.player;
|
||||
+
|
||||
+import net.kyori.adventure.text.Component;
|
||||
+import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
|
||||
+import org.bukkit.Bukkit;
|
||||
+import org.bukkit.entity.Player;
|
||||
+import org.bukkit.event.Cancellable;
|
||||
+import org.bukkit.event.HandlerList;
|
||||
+import org.bukkit.event.player.PlayerEvent;
|
||||
+import org.jetbrains.annotations.NotNull;
|
||||
+import org.jetbrains.annotations.Nullable;
|
||||
+
|
||||
+public class PlayerPreviewChatEvent extends PlayerEvent implements Cancellable {
|
||||
+ private static final HandlerList handlers = new HandlerList();
|
||||
+ private final String originalQuery;
|
||||
+ private Component query;
|
||||
+
|
||||
+ public PlayerPreviewChatEvent(@NotNull Player who, @Nullable Component query) {
|
||||
+ super(who, !Bukkit.isPrimaryThread());
|
||||
+ this.originalQuery = query == null ? "" : LegacyComponentSerializer.legacySection().serialize(query);
|
||||
+ this.query = query;
|
||||
+ }
|
||||
+
|
||||
+ /**
|
||||
+ * The original query string as sent from the client
|
||||
+ *
|
||||
+ * @return The original query string
|
||||
+ */
|
||||
+ @NotNull
|
||||
+ public String getOriginalQuery() {
|
||||
+ return originalQuery;
|
||||
+ }
|
||||
+
|
||||
+ /**
|
||||
+ * Get the current query.
|
||||
+ * <p>
|
||||
+ * Null queries represent "no changes".
|
||||
+ *
|
||||
+ * @return Current query
|
||||
+ */
|
||||
+ @Nullable
|
||||
+ public Component getQuery() {
|
||||
+ return this.query;
|
||||
+ }
|
||||
+
|
||||
+ /**
|
||||
+ * Get the current query.
|
||||
+ * <p>
|
||||
+ * Null queries represent "no changes".
|
||||
+ *
|
||||
+ * @param query The current query
|
||||
+ */
|
||||
+ public void setQuery(@Nullable Component query) {
|
||||
+ this.query = query;
|
||||
+ }
|
||||
+
|
||||
+ /**
|
||||
+ * Gets the cancellation state of this event.
|
||||
+ * <p>
|
||||
+ * A cancelled event tells the client there are "no changes"
|
||||
+ * to the chat, the same as setting the query to null.
|
||||
+ *
|
||||
+ * @return true if this event is cancelled
|
||||
+ */
|
||||
+ @Override
|
||||
+ public boolean isCancelled() {
|
||||
+ return this.query == null;
|
||||
+ }
|
||||
+
|
||||
+ /**
|
||||
+ * Sets the cancellation state of this event.
|
||||
+ * <p>
|
||||
+ * A cancelled event tells the client there are "no changes"
|
||||
+ * to the chat, the same as setting the query to null.
|
||||
+ */
|
||||
+ @Override
|
||||
+ public void setCancelled(boolean cancel) {
|
||||
+ this.query = null;
|
||||
+ }
|
||||
+
|
||||
+ @Override
|
||||
+ @NotNull
|
||||
+ public HandlerList getHandlers() {
|
||||
+ return handlers;
|
||||
+ }
|
||||
+
|
||||
+ @NotNull
|
||||
+ public static HandlerList getHandlerList() {
|
||||
+ return handlers;
|
||||
+ }
|
||||
+}
|
||||
@@ -2783,7 +2783,7 @@ index 7034af8ad42940c5af6b9032b9873ce36c55a2a7..c0fdc5a79107f8694a514a12d5526bd4
|
||||
|
||||
public static long getCoordinateKey(final ChunkPos pair) {
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 46fcecbfb3f866ba89036a11113c8ad0989b04bc..d66c60918313b0ede41ed96aa82e11fb2230f95b 100644
|
||||
index f23be38ef96a81ce3867a3b6fdccf632fe285f31..96ce3c0f5f17bb5c3b8be5dc137de3d457304a78 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -298,6 +298,8 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -3202,10 +3202,10 @@ index 083349794d5ceb50322c5a645dd33fbfcc1c8155..f58873ef4362bfcc618ead099be94ba2
|
||||
this.getRandomBlockPosition(j, 0, k, 15, blockposition);
|
||||
int normalY = chunk.getHeight(Heightmap.Types.MOTION_BLOCKING, blockposition.getX() & 15, blockposition.getZ() & 15) + 1;
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index ff7df8026f85b7ad51458a0b720a8baf71cd9bd1..8da76daecef969f452960df5577c7bc408ac7acb 100644
|
||||
index a68b737cdd1e9f1054e0fc3bfee92c20a062fab5..a526b7a8789693c5c24fcf1233183ea317a938d8 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -1215,6 +1215,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1219,6 +1219,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
|
||||
@Override
|
||||
public void handleEditBook(ServerboundEditBookPacket packet) {
|
||||
@@ -3213,7 +3213,7 @@ index ff7df8026f85b7ad51458a0b720a8baf71cd9bd1..8da76daecef969f452960df5577c7bc4
|
||||
// Paper start
|
||||
if (!this.cserver.isPrimaryThread()) {
|
||||
List<String> pageList = packet.getPages();
|
||||
@@ -2349,6 +2350,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2353,6 +2354,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
}
|
||||
|
||||
private boolean updateChatOrder(Instant timestamp) {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Purpur client support
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 94944ba458178f9e5b772224da329bb5d85f4394..94d87f6bd2c27b0d6cc4547e8bc6e87b95f1ad32 100644
|
||||
index 6cbd839cc7529eb0095485c4ef4a0d81a3cd9b19..3f38159b6a6564ec6b7e01efbdc38d324afa3ba8 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -262,6 +262,7 @@ public class ServerPlayer extends Player {
|
||||
@@ -17,10 +17,10 @@ index 94944ba458178f9e5b772224da329bb5d85f4394..94d87f6bd2c27b0d6cc4547e8bc6e87b
|
||||
public double lastEntitySpawnRadiusSquared; // Paper - optimise isOutsideRange, this field is in blocks
|
||||
public final com.destroystokyo.paper.util.misc.PooledLinkedHashSets.PooledObjectLinkedOpenHashSet<ServerPlayer> cachedSingleHashSet; // Paper
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 8da76daecef969f452960df5577c7bc408ac7acb..116389472b3b25aaa5657c7dcbbc59bf8324b25e 100644
|
||||
index a526b7a8789693c5c24fcf1233183ea317a938d8..904ad8ae42dac7077d5648dac317424742c63652 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -3615,6 +3615,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -3625,6 +3625,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
private static final ResourceLocation CUSTOM_UNREGISTER = new ResourceLocation("unregister");
|
||||
|
||||
private static final ResourceLocation MINECRAFT_BRAND = new ResourceLocation("brand"); // Paper - Brand support
|
||||
@@ -28,7 +28,7 @@ index 8da76daecef969f452960df5577c7bc408ac7acb..116389472b3b25aaa5657c7dcbbc59bf
|
||||
|
||||
@Override
|
||||
public void handleCustomPayload(ServerboundCustomPayloadPacket packet) {
|
||||
@@ -3639,6 +3640,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -3649,6 +3650,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
ServerGamePacketListenerImpl.LOGGER.error("Couldn\'t unregister custom payload", ex);
|
||||
this.disconnect("Invalid payload UNREGISTER!", org.bukkit.event.player.PlayerKickEvent.Cause.INVALID_PAYLOAD); // Paper - kick event cause
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ index 153451ecd5b3c8e8ecb2d5ec91ccd582d4300899..56536c39bccfe097f8227c74a0d16799
|
||||
super(x, y, z);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 9f551e09f6aea3df16af577f7754ff774731377f..44c478beb3234a35588af21ee43f3be199992e40 100644
|
||||
index 575772f78764f5bcee35fcedfac9b265e5b998c5..3b24edf04cb2f2ebd9adb16839bd92be4d444390 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1534,6 +1534,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -46,7 +46,7 @@ index e4a341351a5f4e1f3ffed1708eb3a1fd81b94f0f..a12238ee1dc58232f04586f60fb7f662
|
||||
return new Throwable(entity + " Added to world at " + new java.util.Date());
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index db23ce6f9253697592d80e44c192e9a97d06b83b..8c18c203854628c0dd8d660b197127b019fec971 100644
|
||||
index cbb79f16d7e996b264ba95eb6f59db7095e6089e..1628989f81e76fc61b2a894f7037f5630a1491bc 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -670,6 +670,15 @@ public class ServerPlayer extends Player {
|
||||
@@ -66,10 +66,10 @@ index db23ce6f9253697592d80e44c192e9a97d06b83b..8c18c203854628c0dd8d660b197127b0
|
||||
|
||||
public void doTick() {
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 116389472b3b25aaa5657c7dcbbc59bf8324b25e..ed5ba255f7de765bf956381c6d1d99dfc3cc64d3 100644
|
||||
index 904ad8ae42dac7077d5648dac317424742c63652..3da6eb36490f15ecccf9d93d8ec2c1a58646b722 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2888,6 +2888,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2898,6 +2898,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
|
||||
ServerGamePacketListenerImpl.this.cserver.getPluginManager().callEvent(event);
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] AFK API
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index 8c18c203854628c0dd8d660b197127b019fec971..f2e84f02ee8c9c4e4cb2fa5ca27c2df5bf4fcfdb 100644
|
||||
index 1628989f81e76fc61b2a894f7037f5630a1491bc..c72b20e3e7eda999c6da07e7e6fb46826c4369a9 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1996,8 +1996,58 @@ public class ServerPlayer extends Player {
|
||||
@@ -2001,8 +2001,58 @@ public class ServerPlayer extends Player {
|
||||
|
||||
public void resetLastActionTime() {
|
||||
this.lastActionTime = Util.getMillis();
|
||||
@@ -68,7 +68,7 @@ index 8c18c203854628c0dd8d660b197127b019fec971..f2e84f02ee8c9c4e4cb2fa5ca27c2df5
|
||||
return this.stats;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index cd723d7e216ff6de0daee9d21309006b9874f321..739fdb3218fd02e5b81bbff28906824e06933c17 100644
|
||||
index 3da6eb36490f15ecccf9d93d8ec2c1a58646b722..8b2c0e87a8bc51fe5c8d2494330766ea478145bf 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -340,6 +340,20 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -114,7 +114,7 @@ index cd723d7e216ff6de0daee9d21309006b9874f321..739fdb3218fd02e5b81bbff28906824e
|
||||
// Skip the first time we do this
|
||||
if (true) { // Spigot - don't skip any move events
|
||||
Location oldTo = to.clone();
|
||||
@@ -1547,7 +1569,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1551,7 +1573,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
|
||||
if (!this.player.isChangingDimension() && d11 > org.spigotmc.SpigotConfig.movedWronglyThreshold && !this.player.isSleeping() && !this.player.gameMode.isCreative() && this.player.gameMode.getGameModeForPlayer() != GameType.SPECTATOR) { // Spigot
|
||||
flag2 = true; // Paper - diff on change, this should be moved wrongly
|
||||
@@ -123,7 +123,7 @@ index cd723d7e216ff6de0daee9d21309006b9874f321..739fdb3218fd02e5b81bbff28906824e
|
||||
}
|
||||
|
||||
this.player.absMoveTo(d0, d1, d2, f, f1);
|
||||
@@ -1597,6 +1619,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1601,6 +1623,8 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
this.lastYaw = to.getYaw();
|
||||
this.lastPitch = to.getPitch();
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Player invulnerabilities
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index f2e84f02ee8c9c4e4cb2fa5ca27c2df5bf4fcfdb..e7399e71db7ca5671a4570f4e605497b2b2fa0cb 100644
|
||||
index c72b20e3e7eda999c6da07e7e6fb46826c4369a9..481e474f48d9409f4d8a337b334a17627c9b8ccb 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -263,6 +263,7 @@ public class ServerPlayer extends Player {
|
||||
@@ -54,7 +54,7 @@ index f2e84f02ee8c9c4e4cb2fa5ca27c2df5bf4fcfdb..e7399e71db7ca5671a4570f4e605497b
|
||||
return this;
|
||||
}
|
||||
}
|
||||
@@ -1982,6 +1991,7 @@ public class ServerPlayer extends Player {
|
||||
@@ -1987,6 +1996,7 @@ public class ServerPlayer extends Player {
|
||||
}
|
||||
|
||||
public void sendTexturePack(String url, String hash, boolean required, @Nullable Component resourcePackPrompt) {
|
||||
@@ -62,7 +62,7 @@ index f2e84f02ee8c9c4e4cb2fa5ca27c2df5bf4fcfdb..e7399e71db7ca5671a4570f4e605497b
|
||||
this.connection.send(new ClientboundResourcePackPacket(url, hash, required, resourcePackPrompt));
|
||||
}
|
||||
|
||||
@@ -2507,9 +2517,17 @@ public class ServerPlayer extends Player {
|
||||
@@ -2512,9 +2522,17 @@ public class ServerPlayer extends Player {
|
||||
|
||||
@Override
|
||||
public boolean isImmobile() {
|
||||
@@ -82,10 +82,10 @@ index f2e84f02ee8c9c4e4cb2fa5ca27c2df5bf4fcfdb..e7399e71db7ca5671a4570f4e605497b
|
||||
public Scoreboard getScoreboard() {
|
||||
return this.getBukkitEntity().getScoreboard().getHandle();
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 739fdb3218fd02e5b81bbff28906824e06933c17..a67301f606e7f2b05559aed2ac88288dd40dd539 100644
|
||||
index 8b2c0e87a8bc51fe5c8d2494330766ea478145bf..63b7130f287774696bb6d7849f4792772329c65a 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2097,12 +2097,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2101,12 +2101,21 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@Override
|
||||
public void handleResourcePackResponse(ServerboundResourcePackPacket packet) {
|
||||
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel());
|
||||
@@ -108,7 +108,7 @@ index 739fdb3218fd02e5b81bbff28906824e06933c17..a67301f606e7f2b05559aed2ac88288d
|
||||
this.cserver.getPluginManager().callEvent(new PlayerResourcePackStatusEvent(this.getCraftPlayer(), packStatus)); // CraftBukkit
|
||||
// Paper end
|
||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
index 3c9d72dd1a1bade79e4c8b5e6c7b136f906ba77d..02707189e0cafcb8db31413566f2078495866434 100644
|
||||
index 989562f870c359cf4655af2b2013b2b1b5f1f229..fc27bdf91b946ac4c2a6e4adec3693fd0ea5324a 100644
|
||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
@@ -1008,6 +1008,8 @@ public abstract class PlayerList {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Alternative Keepalive Handling
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 7da5e02745decd39c9ef220b84eb2f633cf44494..fe3a1669bb224bea7559adbf453e744962dfd1d3 100644
|
||||
index 63b7130f287774696bb6d7849f4792772329c65a..34e07a31d70854b8ed8a955f296b9e4e5da6cedc 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -258,6 +258,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -38,7 +38,7 @@ index 7da5e02745decd39c9ef220b84eb2f633cf44494..fe3a1669bb224bea7559adbf453e7449
|
||||
if (this.keepAlivePending) {
|
||||
if (!this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected
|
||||
ServerGamePacketListenerImpl.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getScoreboardName()); // more info
|
||||
@@ -3600,6 +3616,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -3610,6 +3626,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
|
||||
@Override
|
||||
public void handleKeepAlive(ServerboundKeepAlivePacket packet) {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Allow color codes in books
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index ae418d6e8c3591482469d03a0b3defed424bdad7..ba1bd35e18d44426efe2b94aefcc16111675ffa1 100644
|
||||
index 34e07a31d70854b8ed8a955f296b9e4e5da6cedc..28146fe7c892c42dd187fc6163eed4ae5ff204ec 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -1341,13 +1341,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1345,13 +1345,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
itemstack1.setTag(nbttagcompound.copy());
|
||||
}
|
||||
|
||||
@@ -28,7 +28,7 @@ index ae418d6e8c3591482469d03a0b3defed424bdad7..ba1bd35e18d44426efe2b94aefcc1611
|
||||
|
||||
this.updateBookPages(pages, (s) -> {
|
||||
return Component.Serializer.toJson(Component.literal(s));
|
||||
@@ -1359,10 +1362,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1363,10 +1366,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
public void updateBookPages(List<FilteredText> list, UnaryOperator<String> unaryoperator, ItemStack itemstack, int slot, ItemStack handItem) { // CraftBukkit
|
||||
ListTag nbttaglist = new ListTag();
|
||||
|
||||
@@ -44,7 +44,7 @@ index ae418d6e8c3591482469d03a0b3defed424bdad7..ba1bd35e18d44426efe2b94aefcc1611
|
||||
|
||||
Objects.requireNonNull(nbttaglist);
|
||||
stream.forEach(nbttaglist::add);
|
||||
@@ -1372,11 +1378,11 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1376,11 +1382,11 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
|
||||
for (int j = list.size(); i < j; ++i) {
|
||||
FilteredText filteredtext = (FilteredText) list.get(i);
|
||||
@@ -58,7 +58,7 @@ index ae418d6e8c3591482469d03a0b3defed424bdad7..ba1bd35e18d44426efe2b94aefcc1611
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1389,6 +1395,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1393,6 +1399,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
this.player.getInventory().setItem(slot, CraftEventFactory.handleEditBookEvent(player, slot, handItem, itemstack)); // CraftBukkit // Paper - Don't ignore result (see other callsite for handleEditBookEvent)
|
||||
}
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Entity lifespan
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 6995bdfea267d64286b8549521df2e3ef8e8c562..999a6c65f9693d03ab7010f55e0b9eb42dd25206 100644
|
||||
index 28146fe7c892c42dd187fc6163eed4ae5ff204ec..0d110bed21eda6f8c28a495aa7b88fac786f47d8 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2943,6 +2943,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2953,6 +2953,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
}
|
||||
|
||||
if (entity.distanceToSqr(this.player.getEyePosition()) < ServerGamePacketListenerImpl.MAX_INTERACTION_DISTANCE) {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add option to teleport to spawn if outside world border
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index c8e81949a0f00e7feb0bd99bca5a0073b5f4add8..2f9a02d0eecd09a15bb71ed85de28ef2cd36127d 100644
|
||||
index de96a37827fd31f3189e18298e2f9e1370761a30..0d30b21ec070980b290f23d5becfc61183214146 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -2578,4 +2578,26 @@ public class ServerPlayer extends Player {
|
||||
@@ -2583,4 +2583,26 @@ public class ServerPlayer extends Player {
|
||||
// CraftBukkit end
|
||||
|
||||
public final int getViewDistance() { throw new UnsupportedOperationException("Use PlayerChunkLoader"); } // Paper - placeholder
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Implement TPSBar
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
|
||||
index 2fa8babafb53cb33272c25f5e0dc31ff2f954c42..2b3c7f0bf0841a52a540f042156f55e978364d24 100644
|
||||
index 55b1ebd17af11ac29fb6b1d4572fb1fc260c16ac..e970c11307cd69685878902234271195752f9f51 100644
|
||||
--- a/src/main/java/net/minecraft/commands/Commands.java
|
||||
+++ b/src/main/java/net/minecraft/commands/Commands.java
|
||||
@@ -211,6 +211,7 @@ public class Commands {
|
||||
@@ -17,7 +17,7 @@ index 2fa8babafb53cb33272c25f5e0dc31ff2f954c42..2b3c7f0bf0841a52a540f042156f55e9
|
||||
|
||||
if (environment.includeIntegrated) {
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index cde48cbdce50e38e07eaaf81cc922bf39e1fa87f..9cfeb50509aac1a509b1d26c3a71ebfa5aa7ca01 100644
|
||||
index 2ee6df3e1a79047de97f4776c6f7e2e549d78c68..91495867871320d3a52d2de3ef1d91d57e369b16 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1048,6 +1048,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -41,7 +41,7 @@ index 629024e5c3f480bd50ae2df9dadb72f06a62c3bf..19bf680e222d7f91a0e7f67b29e3a5e3
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index ee85918725ef2176c79b33bd12e3ed38d89f69e0..a57e0a37a3cacbfea82a3dcc4646dd2fd0977e33 100644
|
||||
index 9296eedcb77dcb7068d7816cd10459d48e93ebba..b7f93bd215b01be450e2a1a58aadf84ccf811525 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -264,6 +264,7 @@ public class ServerPlayer extends Player {
|
||||
@@ -68,7 +68,7 @@ index ee85918725ef2176c79b33bd12e3ed38d89f69e0..a57e0a37a3cacbfea82a3dcc4646dd2f
|
||||
}
|
||||
|
||||
// CraftBukkit start - World fallback code, either respawn location or global spawn
|
||||
@@ -2608,5 +2611,13 @@ public class ServerPlayer extends Player {
|
||||
@@ -2613,5 +2616,13 @@ public class ServerPlayer extends Player {
|
||||
this.server.getPlayerList().respawn(this, toLevel, true, to, !toLevel.paperConfig().environment.disableTeleportationSuffocationCheck);
|
||||
}
|
||||
}
|
||||
@@ -83,7 +83,7 @@ index ee85918725ef2176c79b33bd12e3ed38d89f69e0..a57e0a37a3cacbfea82a3dcc4646dd2f
|
||||
// Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
index 7b617767451d5fa7e6d5b6777deb39d9d126695e..d1495cb8ce938906d3ca0583700b853957efca0d 100644
|
||||
index 4b1c9e75bb4148335a106083dd8199fa1f7d808d..0e690d78c295ca13262230e105a3a26b89c26496 100644
|
||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
@@ -497,6 +497,7 @@ public abstract class PlayerList {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] PlayerBookTooLargeEvent
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index d0c3f73282d8164f1a8f9d3600d3a5833842c9a2..1fa67acb18ccbb16569e864c63bbcf877358e6bd 100644
|
||||
index 0d110bed21eda6f8c28a495aa7b88fac786f47d8..e47532b91f012562754a42de6b26cca54cbea374 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -1261,10 +1261,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1265,10 +1265,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
int maxBookPageSize = io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.pageMax;
|
||||
double multiplier = Math.max(0.3D, Math.min(1D, io.papermc.paper.configuration.GlobalConfiguration.get().itemValidation.bookSize.totalMultiplier));
|
||||
long byteAllowed = maxBookPageSize;
|
||||
@@ -21,7 +21,7 @@ index d0c3f73282d8164f1a8f9d3600d3a5833842c9a2..1fa67acb18ccbb16569e864c63bbcf87
|
||||
server.scheduleOnMain(() -> this.disconnect("Book too large!", org.bukkit.event.player.PlayerKickEvent.Cause.ILLEGAL_ACTION)); // Paper - kick event cause
|
||||
return;
|
||||
}
|
||||
@@ -1288,6 +1290,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1292,6 +1294,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
|
||||
if (byteTotal > byteAllowed) {
|
||||
ServerGamePacketListenerImpl.LOGGER.warn(this.player.getScoreboardName() + " tried to send too large of a book. Book Size: " + byteTotal + " - Allowed: "+ byteAllowed + " - Pages: " + pageList.size());
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Dont run with scissors!
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 1fa67acb18ccbb16569e864c63bbcf877358e6bd..9958528403422eb9f2cb8ba030214f2f1cf3188e 100644
|
||||
index e47532b91f012562754a42de6b26cca54cbea374..ead6b7246b142304dc52cdd3157a0b113645c641 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -1695,6 +1695,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1699,6 +1699,13 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
this.player.resetFallDistance();
|
||||
}
|
||||
|
||||
@@ -22,7 +22,7 @@ index 1fa67acb18ccbb16569e864c63bbcf877358e6bd..9958528403422eb9f2cb8ba030214f2f
|
||||
this.player.checkMovementStatistics(this.player.getX() - d3, this.player.getY() - d4, this.player.getZ() - d5);
|
||||
this.lastGoodX = this.player.getX();
|
||||
this.lastGoodY = this.player.getY();
|
||||
@@ -1728,6 +1735,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1732,6 +1739,12 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
}
|
||||
// Paper end - optimise out extra getCubes
|
||||
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add compass command
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/commands/Commands.java b/src/main/java/net/minecraft/commands/Commands.java
|
||||
index 076008b0109669671546e1e476b5c812628d81bd..a1b80de62f07e0b476775289ec46e3f685b41d7f 100644
|
||||
index ca7aa579f6a6c72dfaed04fde84f4dbcc9ca4f34..5b4a89c696f6457bef24bb8792303dfde7ae510c 100644
|
||||
--- a/src/main/java/net/minecraft/commands/Commands.java
|
||||
+++ b/src/main/java/net/minecraft/commands/Commands.java
|
||||
@@ -213,6 +213,7 @@ public class Commands {
|
||||
@@ -17,7 +17,7 @@ index 076008b0109669671546e1e476b5c812628d81bd..a1b80de62f07e0b476775289ec46e3f6
|
||||
|
||||
if (environment.includeIntegrated) {
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index d7ea9e8053b96c32ca94f82a89f58223f9983ff1..d042f2866a513263cc1b82df1cabe7fee81a1603 100644
|
||||
index 9eb1c15d831cd5ccdbd1e28bbf2d994bfae4f039..3133b14e2fcef91cf3a72b5f65102aef43b92459 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -265,6 +265,7 @@ public class ServerPlayer extends Player {
|
||||
@@ -44,7 +44,7 @@ index d7ea9e8053b96c32ca94f82a89f58223f9983ff1..d042f2866a513263cc1b82df1cabe7fe
|
||||
}
|
||||
|
||||
// CraftBukkit start - World fallback code, either respawn location or global spawn
|
||||
@@ -2621,5 +2624,13 @@ public class ServerPlayer extends Player {
|
||||
@@ -2626,5 +2629,13 @@ public class ServerPlayer extends Player {
|
||||
public void tpsBar(boolean tpsBar) {
|
||||
this.tpsBar = tpsBar;
|
||||
}
|
||||
|
||||
@@ -36,10 +36,10 @@ index 28463bca77d62ad9175a55cffc92110ffa16fadc..bd77301ef6cde21e1ee1966d2ffa4186
|
||||
+ // Purpur end
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index dfe8747f5e06639faa9978b0b409560eed011047..2505557a4e0db77dd1d18bc78ecada154d59da0f 100644
|
||||
index ead6b7246b142304dc52cdd3157a0b113645c641..08531e031ecad8d38cff2701fd31e70b47ed3357 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2093,6 +2093,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2097,6 +2097,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
|
||||
boolean cancelled;
|
||||
if (movingobjectposition == null || movingobjectposition.getType() != HitResult.Type.BLOCK) {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Signs allow color codes
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
index d042f2866a513263cc1b82df1cabe7fee81a1603..ab3744184ed4e761e58ea93099a3d6e9ca68bdde 100644
|
||||
index 3133b14e2fcef91cf3a72b5f65102aef43b92459..dd4c1c3cd907b943ab1740d0c9de8652807b27b7 100644
|
||||
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
|
||||
@@ -1515,6 +1515,7 @@ public class ServerPlayer extends Player {
|
||||
@@ -17,10 +17,10 @@ index d042f2866a513263cc1b82df1cabe7fee81a1603..ab3744184ed4e761e58ea93099a3d6e9
|
||||
this.connection.send(new ClientboundBlockUpdatePacket(this.level, sign.getBlockPos()));
|
||||
this.connection.send(new ClientboundOpenSignEditorPacket(sign.getBlockPos()));
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index a727e98b5b5575e895579cb02b5e6c719ad24445..36e9129d4a63201e8dca9e94c9aaa09679144500 100644
|
||||
index 08531e031ecad8d38cff2701fd31e70b47ed3357..ac5be834a5b772bd82823a54b49fcb54af848806 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -3624,11 +3624,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -3634,11 +3634,17 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
for (int i = 0; i < signText.size(); ++i) {
|
||||
FilteredText filteredtext = (FilteredText) signText.get(i);
|
||||
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Add log suppression for sent expired chat
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 36e9129d4a63201e8dca9e94c9aaa09679144500..433c8c86202619a0af8b03bfd6182f6a57b7a8ed 100644
|
||||
index ac5be834a5b772bd82823a54b49fcb54af848806..e3b48fea4a8b03f2b74b910289640542bce2cb94 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2661,7 +2661,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2668,7 +2668,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
this.disconnect(Component.translatable("multiplayer.disconnect.unsigned_chat"), org.bukkit.event.player.PlayerKickEvent.Cause.UNSIGNED_CHAT); // Paper - kick event cause
|
||||
return false;
|
||||
} else {
|
||||
|
||||
@@ -5,10 +5,10 @@ Subject: [PATCH] Option to disable kick for out of order chat
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index 433c8c86202619a0af8b03bfd6182f6a57b7a8ed..fcc032154baba11894ab381943f496f225bed464 100644
|
||||
index e3b48fea4a8b03f2b74b910289640542bce2cb94..9fa0dab0bb255d5ccb5b810449ee6f67f7774b8e 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2438,7 +2438,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2442,7 +2442,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
do {
|
||||
instant1 = (Instant) this.lastChatTimeStamp.get();
|
||||
if (timestamp.isBefore(instant1)) {
|
||||
|
||||
27
patches/server/0287-Allow-custom-ChatDecorators.patch
Normal file
27
patches/server/0287-Allow-custom-ChatDecorators.patch
Normal file
@@ -0,0 +1,27 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: BillyGalbreath <blake.galbreath@gmail.com>
|
||||
Date: Mon, 11 Jul 2022 20:44:19 -0500
|
||||
Subject: [PATCH] Allow custom ChatDecorators
|
||||
|
||||
Requires NMS to utilize. I'll write an API for this once our upstreams calm down with the changes.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 78b72d9f33bccac7b5c61ab2d417b142fc27bde8..06a17bcd8ecfba67866548a71b46e7cf66b29527 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -2628,6 +2628,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
new com.google.common.util.concurrent.ThreadFactoryBuilder().setDaemon(true).setNameFormat("Async Chat Thread - #%d").setUncaughtExceptionHandler(new net.minecraft.DefaultUncaughtExceptionHandlerWithName(net.minecraft.server.MinecraftServer.LOGGER)).build()); // Paper
|
||||
|
||||
public ChatDecorator getChatDecorator() {
|
||||
+ // Purpur start
|
||||
+ return this.chatDecorator;
|
||||
+ }
|
||||
+ public void setChatDecorator(ChatDecorator chatDecorator) {
|
||||
+ this.chatDecorator = chatDecorator;
|
||||
+ }
|
||||
+ private ChatDecorator chatDecorator = getPaperHardcodedChatDecorator();
|
||||
+ public ChatDecorator getPaperHardcodedChatDecorator() {
|
||||
+ // Purpur end
|
||||
// Paper start - moved to ChatPreviewProcessor
|
||||
return ChatDecorator.create((sender, commandSourceStack, message, isPreview) -> {
|
||||
final io.papermc.paper.adventure.ChatDecorationProcessor processor = new io.papermc.paper.adventure.ChatDecorationProcessor(this, sender, commandSourceStack, message, isPreview);
|
||||
@@ -1,50 +0,0 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: BillyGalbreath <blake.galbreath@gmail.com>
|
||||
Date: Mon, 11 Jul 2022 20:44:19 -0500
|
||||
Subject: [PATCH] Chat Preview API
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index a5b09ab0171dd100f9bcf81869346b1d11814092..bea0eca314eef1adc3c9625b596f29f8b6f9856f 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -2628,12 +2628,29 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
new com.google.common.util.concurrent.ThreadFactoryBuilder().setDaemon(true).setNameFormat("Async Chat Thread - #%d").setUncaughtExceptionHandler(new net.minecraft.DefaultUncaughtExceptionHandlerWithName(net.minecraft.server.MinecraftServer.LOGGER)).build()); // Paper
|
||||
|
||||
public ChatDecorator getChatDecorator() {
|
||||
- return (entityplayer, ichatbasecomponent) -> {
|
||||
+ // Purpur start
|
||||
+ return this.chatDecorator;
|
||||
+ }
|
||||
+ public void setChatDecorator(ChatDecorator chatDecorator) {
|
||||
+ this.chatDecorator = chatDecorator;
|
||||
+ }
|
||||
+ private ChatDecorator chatDecorator = (entityplayer, ichatbasecomponent) -> {
|
||||
+ // Purpur end
|
||||
// Paper start - fix non-player sender
|
||||
if (entityplayer == null) {
|
||||
return CompletableFuture.completedFuture(ichatbasecomponent);
|
||||
}
|
||||
// Paper end
|
||||
+ // Purpur start
|
||||
+ net.kyori.adventure.text.Component adventureComponent = io.papermc.paper.adventure.PaperAdventure.asAdventure(ichatbasecomponent);
|
||||
+ org.purpurmc.purpur.event.player.PlayerPreviewChatEvent purpurPreviewEvent = new org.purpurmc.purpur.event.player.PlayerPreviewChatEvent(entityplayer.getBukkitEntity(), adventureComponent);
|
||||
+ if (!purpurPreviewEvent.callEvent()) {
|
||||
+ return CompletableFuture.completedFuture(null);
|
||||
+ }
|
||||
+ if (!adventureComponent.equals(purpurPreviewEvent.getQuery())) {
|
||||
+ return CompletableFuture.completedFuture(io.papermc.paper.adventure.PaperAdventure.asVanilla(purpurPreviewEvent.getQuery()));
|
||||
+ }
|
||||
+ // Purpur end
|
||||
return CompletableFuture.supplyAsync(() -> {
|
||||
AsyncPlayerChatPreviewEvent event = new AsyncPlayerChatPreviewEvent(true, entityplayer.getBukkitEntity(), CraftChatMessage.fromComponent(ichatbasecomponent), new LazyPlayerSet(this));
|
||||
String originalFormat = event.getFormat(), originalMessage = event.getMessage();
|
||||
@@ -2647,7 +2664,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}, chatExecutor);
|
||||
};
|
||||
// CraftBukkit end
|
||||
- }
|
||||
+ //} // Purpur
|
||||
|
||||
public static record ReloadableResources(CloseableResourceManager resourceManager, ReloadableServerResources managers) implements AutoCloseable {
|
||||
|
||||
@@ -82,7 +82,7 @@ index 8bc0cb9ad5bb4e76d962ff54305e2c08e279a17b..e8efbbeece7e866c6c4d7489677d2d9e
|
||||
PacketUtils.LOGGER.debug("Ignoring packet due to disconnection: {}", packet);
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/MinecraftServer.java b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
index 7b999456cc1a0808bcb5490deb334e848ce5f361..96255e81c232f9cbc3268127d4232bb9c2c73292 100644
|
||||
index 6f13001b2ffa6a54aa6cc182084159215a67b31d..a9caa5529c91f8f1adaea8ae9ba0615bb2604f52 100644
|
||||
--- a/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/MinecraftServer.java
|
||||
@@ -1426,15 +1426,15 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -211,7 +211,7 @@ index 7b999456cc1a0808bcb5490deb334e848ce5f361..96255e81c232f9cbc3268127d4232bb9
|
||||
|
||||
this.profiler.pop();
|
||||
}
|
||||
@@ -2786,7 +2786,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2766,7 +2766,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -220,7 +220,7 @@ index 7b999456cc1a0808bcb5490deb334e848ce5f361..96255e81c232f9cbc3268127d4232bb9
|
||||
try {
|
||||
for (;;) {
|
||||
boolean moreTasks = this.tickMidTickTasks();
|
||||
@@ -2813,7 +2813,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
@@ -2793,7 +2793,7 @@ public abstract class MinecraftServer extends ReentrantBlockableEventLoop<TickTa
|
||||
}
|
||||
}
|
||||
} finally {
|
||||
@@ -748,10 +748,10 @@ index c685e0acb2559e7415c94790d8392f0ee997ecc6..ad14dbed67ca622f9c8e05164104fe9a
|
||||
this.entityManager.saveAll();
|
||||
} else {
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index fcc032154baba11894ab381943f496f225bed464..473bbdf6b98eabe55f02e93bb72e1877fcf236e9 100644
|
||||
index 9fa0dab0bb255d5ccb5b810449ee6f67f7774b8e..cc5adc1a6b6da4d95ea2b5e2f543d472102a7697 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -2588,7 +2588,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2592,7 +2592,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
}
|
||||
}
|
||||
// Paper End
|
||||
@@ -760,7 +760,7 @@ index fcc032154baba11894ab381943f496f225bed464..473bbdf6b98eabe55f02e93bb72e1877
|
||||
if ( org.spigotmc.SpigotConfig.logCommands ) // Spigot
|
||||
this.LOGGER.info(this.player.getScoreboardName() + " issued server command: " + s);
|
||||
|
||||
@@ -2598,7 +2598,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2602,7 +2602,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
this.cserver.getPluginManager().callEvent(event);
|
||||
|
||||
if (event.isCancelled()) {
|
||||
@@ -769,7 +769,7 @@ index fcc032154baba11894ab381943f496f225bed464..473bbdf6b98eabe55f02e93bb72e1877
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -2611,7 +2611,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -2615,7 +2615,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
java.util.logging.Logger.getLogger(ServerGamePacketListenerImpl.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
|
||||
return;
|
||||
} finally {
|
||||
@@ -779,7 +779,7 @@ index fcc032154baba11894ab381943f496f225bed464..473bbdf6b98eabe55f02e93bb72e1877
|
||||
}
|
||||
// CraftBukkit end
|
||||
diff --git a/src/main/java/net/minecraft/server/players/PlayerList.java b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
index 34996512dd38bccfa5d8a7cdb6f59ec5c6489919..366530e2bceb0680c99627abc2c4c48b67f9829d 100644
|
||||
index 11711b048755cafcefe0e944b35531da15e1eda0..7a5213d74f563c15dbcb4cf5a9865d33cf0e6c36 100644
|
||||
--- a/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/players/PlayerList.java
|
||||
@@ -1281,7 +1281,7 @@ public abstract class PlayerList {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Add more logger output for invalid movement kicks
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
index a4b92924559397c5566d71e03f43a17528824cee..d09c8aab9112e2949dbb9d16a135fa2122c1db2f 100644
|
||||
index b48fc0c80b3b91dcd16c414e02cc95406262b8e2..d9bc8cfd994835c5f23137552641c488dc5a475d 100644
|
||||
--- a/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
+++ b/src/main/java/net/minecraft/server/network/ServerGamePacketListenerImpl.java
|
||||
@@ -861,6 +861,7 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -16,7 +16,7 @@ index a4b92924559397c5566d71e03f43a17528824cee..d09c8aab9112e2949dbb9d16a135fa21
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1437,8 +1438,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@@ -1441,8 +1442,16 @@ public class ServerGamePacketListenerImpl implements ServerPlayerConnection, Tic
|
||||
@Override
|
||||
public void handleMovePlayer(ServerboundMovePlayerPacket packet) {
|
||||
PacketUtils.ensureRunningOnSameThread(packet, this, this.player.getLevel());
|
||||
|
||||
Reference in New Issue
Block a user