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 appears to apply and compile correctly Paper Changes: 7358bf02 [Auto] Updated Upstream (CraftBukkit/Spigot) 8df6e39b [CI-SKIP] Fix version for groovy artifact (1.16.4) (#4730) 0e73fdbf OBFHELPERS (#4733)
This commit is contained in:
2
Paper
2
Paper
Submodule Paper updated: 56d8811924...7358bf02f3
@@ -1 +1 @@
|
||||
1.16.4--f3b4a62dacda9e8b7311416618fa38628e85ccf1
|
||||
1.16.4--36259f780ea056d6510d311c65ce92a06562e9dd
|
||||
|
||||
@@ -4749,7 +4749,7 @@ index 6c399bcea0..087bbad025 100644
|
||||
}
|
||||
// Paper end - optimised tracker
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 17f093213f..490626ecd3 100644
|
||||
index 563ae7355f..b89caa8ad1 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -415,7 +415,9 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -4763,7 +4763,7 @@ index 17f093213f..490626ecd3 100644
|
||||
this.networkManager.sendPacket(new PacketPlayOutVehicleMove(entity));
|
||||
return;
|
||||
}
|
||||
@@ -1052,7 +1054,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -1054,7 +1056,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
}
|
||||
|
||||
if (this.teleportPos != null) {
|
||||
@@ -4772,7 +4772,7 @@ index 17f093213f..490626ecd3 100644
|
||||
this.A = this.e;
|
||||
this.a(this.teleportPos.x, this.teleportPos.y, this.teleportPos.z, this.player.yaw, this.player.pitch);
|
||||
}
|
||||
@@ -1122,7 +1124,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -1124,7 +1126,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
speed = player.abilities.walkSpeed * 10f;
|
||||
}
|
||||
// Paper start - Prevent moving into unloaded chunks
|
||||
@@ -4781,7 +4781,7 @@ index 17f093213f..490626ecd3 100644
|
||||
this.internalTeleport(this.player.locX(), this.player.locY(), this.player.locZ(), this.player.yaw, this.player.pitch, Collections.emptySet());
|
||||
return;
|
||||
}
|
||||
@@ -1178,6 +1180,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -1180,6 +1182,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
}
|
||||
|
||||
this.player.move(EnumMoveType.PLAYER, new Vec3D(d7, d8, d9));
|
||||
@@ -4789,7 +4789,7 @@ index 17f093213f..490626ecd3 100644
|
||||
this.player.setOnGround(packetplayinflying.b()); // CraftBukkit - SPIGOT-5810, SPIGOT-5835: reset by this.player.move
|
||||
// Paper start - prevent position desync
|
||||
if (this.teleportPos != null) {
|
||||
@@ -1202,7 +1205,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -1204,7 +1207,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
}
|
||||
|
||||
this.player.setLocation(d4, d5, d6, f, f1);
|
||||
|
||||
@@ -154,7 +154,7 @@ index 31eb6868c2..9f9d9b2de8 100644
|
||||
// Paper start
|
||||
public static final Predicate<Entity> affectsSpawning = (entity) -> {
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 490626ecd3..57e22552e0 100644
|
||||
index b89caa8ad1..4365d0bbb5 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -247,6 +247,12 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -179,7 +179,7 @@ index 490626ecd3..57e22552e0 100644
|
||||
// Skip the first time we do this
|
||||
if (true) { // Spigot - don't skip any move events
|
||||
Location oldTo = to.clone();
|
||||
@@ -1201,7 +1209,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -1203,7 +1211,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
|
||||
if (!this.player.H() && d11 > org.spigotmc.SpigotConfig.movedWronglyThreshold && !this.player.isSleeping() && !this.player.playerInteractManager.isCreative() && this.player.playerInteractManager.getGameMode() != EnumGamemode.SPECTATOR) { // Spigot
|
||||
flag1 = true;
|
||||
@@ -188,7 +188,7 @@ index 490626ecd3..57e22552e0 100644
|
||||
}
|
||||
|
||||
this.player.setLocation(d4, d5, d6, f, f1);
|
||||
@@ -1240,6 +1248,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -1242,6 +1250,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
this.lastYaw = to.getYaw();
|
||||
this.lastPitch = to.getPitch();
|
||||
|
||||
@@ -268,10 +268,10 @@ index 361f7857e4..2578a4677d 100644
|
||||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index 018afcd420..d76b167f5e 100644
|
||||
index f4f4e29f56..93c8f9fc8d 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -2206,4 +2206,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -2216,4 +2216,21 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
return spigot;
|
||||
}
|
||||
// Spigot end
|
||||
|
||||
@@ -67,10 +67,10 @@ index 77156ecff2..1360127549 100644
|
||||
public Scoreboard getScoreboard() {
|
||||
return getBukkitEntity().getScoreboard().getHandle();
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 57e22552e0..d75447ec97 100644
|
||||
index 4365d0bbb5..727975c26b 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -1650,6 +1650,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -1652,6 +1652,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
PlayerConnectionUtils.ensureMainThread(packetplayinresourcepackstatus, this, this.player.getWorldServer());
|
||||
// Paper start
|
||||
PlayerResourcePackStatusEvent.Status packStatus = PlayerResourcePackStatusEvent.Status.values()[packetplayinresourcepackstatus.status.ordinal()];
|
||||
@@ -108,10 +108,10 @@ index 2578a4677d..c441fcea9b 100644
|
||||
+ }
|
||||
}
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
index d76b167f5e..612152a0b3 100644
|
||||
index 93c8f9fc8d..21dc18c653 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
|
||||
@@ -2222,5 +2222,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
@@ -2232,5 +2232,20 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
|
||||
public void resetIdleTimer() {
|
||||
getHandle().resetIdleTimer();
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@ index 8e93f1540b..470f92c4fb 100644
|
||||
return this.a;
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index c783d583f0..22e17944ae 100644
|
||||
index 727975c26b..294ce7b086 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -83,6 +83,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -50,7 +50,7 @@ index c783d583f0..22e17944ae 100644
|
||||
if (this.isPendingPing()) {
|
||||
if (!this.processedDisconnect && elapsedTime >= KEEPALIVE_LIMIT) { // check keepalive limit, don't fire if already disconnected
|
||||
PlayerConnection.LOGGER.warn("{} was kicked due to keepalive timeout!", this.player.getName()); // more info
|
||||
@@ -2817,6 +2833,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -2818,6 +2834,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
|
||||
@Override
|
||||
public void a(PacketPlayInKeepAlive packetplayinkeepalive) {
|
||||
|
||||
@@ -5,7 +5,7 @@ Subject: [PATCH] Signs allow color codes
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
index 7eb0f515aa..b514dddbe6 100644
|
||||
index 1360127549..e917b302af 100644
|
||||
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
|
||||
@@ -1247,6 +1247,7 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
|
||||
@@ -17,13 +17,15 @@ index 7eb0f515aa..b514dddbe6 100644
|
||||
this.playerConnection.sendPacket(new PacketPlayOutOpenSignEditor(tileentitysign.getPosition()));
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 22e17944ae..047d47f974 100644
|
||||
index 294ce7b086..1c98fb0c72 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -2814,6 +2814,13 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -2815,7 +2815,15 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
}
|
||||
}
|
||||
// Paper end
|
||||
// Paper TODO(Proximyst): Add obfhelper when 1.16.4 runs
|
||||
- lines[i] = SharedConstants.filterAllowedChatCharacters(currentLine); // Paper - Replaced with anvil color stripping method to stop exploits that allow colored signs to be created.
|
||||
+ // Paper TODO(Proximyst): Add obfhelper when 1.16.4 runs
|
||||
+ // Purpur start
|
||||
+ if (worldserver.purpurConfig.signAllowColors) {
|
||||
+ if (player.hasPermission("purpur.sign.color")) currentLine = currentLine.replaceAll("(?i)&([0-9a-fr])", "\u00a7$1");
|
||||
@@ -31,9 +33,10 @@ index 22e17944ae..047d47f974 100644
|
||||
+ if (player.hasPermission("purpur.sign.magic")) currentLine = currentLine.replaceAll("(?i)&([kr])", "\u00a7$1");
|
||||
+ } else
|
||||
+ // Purpur end
|
||||
lines[i] = SharedConstants.a(currentLine); // Paper - Replaced with anvil color stripping method to stop exploits that allow colored signs to be created.
|
||||
+ lines[i] = SharedConstants.filterAllowedChatCharacters(currentLine); // Paper - Replaced with anvil color stripping method to stop exploits that allow colored signs to be created.
|
||||
}
|
||||
SignChangeEvent event = new SignChangeEvent((org.bukkit.craftbukkit.block.CraftBlock) player.getWorld().getBlockAt(x, y, z), this.server.getPlayer(this.player), lines);
|
||||
this.server.getPluginManager().callEvent(event);
|
||||
diff --git a/src/main/java/net/minecraft/server/TileEntitySign.java b/src/main/java/net/minecraft/server/TileEntitySign.java
|
||||
index 3167669702..852bb5db84 100644
|
||||
--- a/src/main/java/net/minecraft/server/TileEntitySign.java
|
||||
|
||||
@@ -5,23 +5,20 @@ Subject: [PATCH] Allow color codes in books
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 047d47f974..a55d721a92 100644
|
||||
index 1c98fb0c72..48a9ce8317 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -1003,8 +1003,10 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
|
||||
@@ -1004,7 +1004,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
if (itemstack.getItem() == Items.WRITABLE_BOOK) {
|
||||
NBTTagList nbttaglist = new NBTTagList();
|
||||
-
|
||||
|
||||
- list.stream().map(NBTTagString::a).forEach(nbttaglist::add);
|
||||
+ // Purpur start - edit book
|
||||
+ boolean hasPerm = getPlayer().hasPermission("purpur.book.color.edit");
|
||||
+ list.stream().map(s -> s = color(s, hasPerm, false)).map(NBTTagString::a).forEach(nbttaglist::add);
|
||||
+ // Purpur end - edit book
|
||||
+ boolean hasPerm = getPlayer().hasPermission("purpur.book.color.edit"); // Purpur - edit book
|
||||
+ list.stream().map(s -> s = color(s, hasPerm, false)).map(NBTTagString::a).forEach(nbttaglist::add); // Purpur - edit book
|
||||
ItemStack old = itemstack.cloneItemStack(); // CraftBukkit
|
||||
itemstack.a("pages", (NBTBase) nbttaglist);
|
||||
}
|
||||
}
|
||||
@@ -1020,13 +1022,14 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
CraftEventFactory.handleEditBookEvent(player, i, old, itemstack); // CraftBukkit
|
||||
@@ -1022,13 +1023,14 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
itemstack1.setTag(nbttagcompound.clone());
|
||||
}
|
||||
|
||||
@@ -38,7 +35,7 @@ index 047d47f974..a55d721a92 100644
|
||||
ChatComponentText chatcomponenttext = new ChatComponentText(s1);
|
||||
String s2 = IChatBaseComponent.ChatSerializer.a((IChatBaseComponent) chatcomponenttext);
|
||||
|
||||
@@ -1038,6 +1041,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -1040,6 +1042,16 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -92,10 +92,10 @@ index f52b4d69c6..11002b5950 100644
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index a55d721a92..f6ee20c3d4 100644
|
||||
index 48a9ce8317..6979590187 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -2214,6 +2214,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -2215,6 +2215,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
boolean triggerLeashUpdate = itemInHand != null && itemInHand.getItem() == Items.LEAD && entity instanceof EntityInsentient;
|
||||
Item origItem = this.player.inventory.getItemInHand() == null ? null : this.player.inventory.getItemInHand().getItem();
|
||||
PlayerInteractEntityEvent event;
|
||||
|
||||
@@ -6,10 +6,10 @@ Subject: [PATCH] Duplicate paper's vanilla scoreboard colors patch to sync
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index f6ee20c3d4..0ff98adfcb 100644
|
||||
index 6979590187..9d6ef83ef5 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -1973,7 +1973,15 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -1974,7 +1974,15 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
return null;
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ index f6ee20c3d4..0ff98adfcb 100644
|
||||
PlayerConnection.this.minecraftServer.console.sendMessage(message);
|
||||
if (((LazyPlayerSet) queueEvent.getRecipients()).isLazy()) {
|
||||
for (Object player : PlayerConnection.this.minecraftServer.getPlayerList().players) {
|
||||
@@ -2006,7 +2014,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -2007,7 +2015,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
// Paper Start - (Meh) Support for vanilla world scoreboard name coloring
|
||||
String displayName = event.getPlayer().getDisplayName();
|
||||
if (this.player.getWorld().paperConfig.useVanillaScoreboardColoring) {
|
||||
|
||||
@@ -161,7 +161,7 @@ index bd0267ee4b..8b36ac2b09 100644
|
||||
this.B = true;
|
||||
return this;
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 932d694cc4..1d4078f5a1 100644
|
||||
index 7635e25422..7c201dd17d 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -80,7 +80,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||
@@ -4939,10 +4939,10 @@ index 0000000000..44929182df
|
||||
+ }
|
||||
+}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 2392c9779b..88f6f2afcf 100644
|
||||
index 9d6ef83ef5..d47902ac6c 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -2231,6 +2231,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@@ -2232,6 +2232,8 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
}
|
||||
this.server.getPluginManager().callEvent(event);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user