Fix players are invisible after using setPlayerProfile (#9143)

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
Co-authored-by: Bjarne Koll <lynxplay101@gmail.com>
This commit is contained in:
montlikadani 2023-08-12 16:10:09 +02:00 committed by GitHub
parent 3c41f8f0b3
commit 3b4839ee32
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
36 changed files with 127 additions and 105 deletions

View file

@ -16,7 +16,7 @@ intent to remove) and replace it with two new methods, clearly named and
documented as to their purpose.
diff --git a/src/main/java/net/minecraft/server/level/ServerPlayer.java b/src/main/java/net/minecraft/server/level/ServerPlayer.java
index 56a9cfdb9dc24bd5bda2818b9f59d1a31dfe9265..7cb4f05a8d23a60a89dd4934ccb99bb89bb44141 100644
index 715314de7a92a8e06f82c6bff5fe74e3b23044f8..b59ad5f0cc12082db0c885b29d88c526a4029e22 100644
--- a/src/main/java/net/minecraft/server/level/ServerPlayer.java
+++ b/src/main/java/net/minecraft/server/level/ServerPlayer.java
@@ -243,6 +243,7 @@ public class ServerPlayer extends Player {
@ -106,10 +106,10 @@ index aac78c13361b19efa7b43a0c95458390f1ba8340..f572a74b85df36a6da76b78ec29d8072
public Location getLastDeathLocation() {
if (this.getData().contains("LastDeathLocation", 10)) {
diff --git a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
index 2a4dff1b9bf64b5fc073bbc943def71b289f7730..22b8b61f260f91d7c79b3772af3134a81db304ac 100644
index b07c040649ff249d1c49d94e466121a32df94dd0..ccf0902ef1770fc2d2cdd5f6c4316fd3fe7746e5 100644
--- a/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
+++ b/src/main/java/org/bukkit/craftbukkit/entity/CraftPlayer.java
@@ -194,6 +194,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -193,6 +193,7 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
private org.bukkit.event.player.PlayerResourcePackStatusEvent.Status resourcePackStatus;
private String resourcePackHash;
private static final boolean DISABLE_CHANNEL_LIMIT = System.getProperty("paper.disableChannelLimit") != null; // Paper - add a flag to disable the channel limit
@ -117,7 +117,7 @@ index 2a4dff1b9bf64b5fc073bbc943def71b289f7730..22b8b61f260f91d7c79b3772af3134a8
// Paper end
public CraftPlayer(CraftServer server, ServerPlayer entity) {
@@ -1935,6 +1936,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1950,6 +1951,18 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
this.firstPlayed = firstPlayed;
}
@ -136,7 +136,7 @@ index 2a4dff1b9bf64b5fc073bbc943def71b289f7730..22b8b61f260f91d7c79b3772af3134a8
public void readExtraData(CompoundTag nbttagcompound) {
this.hasPlayedBefore = true;
if (nbttagcompound.contains("bukkit")) {
@@ -1957,6 +1970,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1972,6 +1985,8 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
}
public void setExtraData(CompoundTag nbttagcompound) {
@ -145,7 +145,7 @@ index 2a4dff1b9bf64b5fc073bbc943def71b289f7730..22b8b61f260f91d7c79b3772af3134a8
if (!nbttagcompound.contains("bukkit")) {
nbttagcompound.put("bukkit", new CompoundTag());
}
@@ -1971,6 +1986,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
@@ -1986,6 +2001,16 @@ public class CraftPlayer extends CraftHumanEntity implements Player {
data.putLong("firstPlayed", this.getFirstPlayed());
data.putLong("lastPlayed", System.currentTimeMillis());
data.putString("lastKnownName", handle.getScoreboardName());