geforkt von Mirrors/Paper
Ursprung
4668201606
Commit
a1eebfea96
@ -1576,7 +1576,7 @@ index c8384da69af61e1970f254a3a9c206ee81d7a989..992d1025ca02020e87a9ab5db83d2494
|
||||
|
||||
/**
|
||||
diff --git a/src/main/java/org/bukkit/event/player/PlayerJoinEvent.java b/src/main/java/org/bukkit/event/player/PlayerJoinEvent.java
|
||||
index d06684aba7688ce06777dbd837a46856a9d7767f..fda3a43f1eac6c660f75a77acb882a9e6753a3f0 100644
|
||||
index d06684aba7688ce06777dbd837a46856a9d7767f..4af1d064fcb57773dfa8f6ad40d6482973f8e1a8 100644
|
||||
--- a/src/main/java/org/bukkit/event/player/PlayerJoinEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/player/PlayerJoinEvent.java
|
||||
@@ -10,30 +10,60 @@ import org.jetbrains.annotations.Nullable;
|
||||
@ -1594,7 +1594,7 @@ index d06684aba7688ce06777dbd837a46856a9d7767f..fda3a43f1eac6c660f75a77acb882a9e
|
||||
+ @Deprecated // Paper end
|
||||
public PlayerJoinEvent(@NotNull final Player playerJoined, @Nullable final String joinMessage) {
|
||||
super(playerJoined);
|
||||
+ this.joinMessage = joinMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(joinMessage) : net.kyori.adventure.text.Component.empty(); // Paper end
|
||||
+ this.joinMessage = joinMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(joinMessage) : null; // Paper end
|
||||
+ }
|
||||
+
|
||||
+ // Paper start
|
||||
@ -1639,7 +1639,7 @@ index d06684aba7688ce06777dbd837a46856a9d7767f..fda3a43f1eac6c660f75a77acb882a9e
|
||||
+ @Deprecated // Paper
|
||||
public void setJoinMessage(@Nullable String joinMessage) {
|
||||
- this.joinMessage = joinMessage;
|
||||
+ this.joinMessage = joinMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(joinMessage) : net.kyori.adventure.text.Component.empty(); // Paper
|
||||
+ this.joinMessage = joinMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(joinMessage) : null; // Paper
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@ -2029,7 +2029,7 @@ index fb066251f793ec3b41bfc075b9478901b15ee549..6800132c6288b4588fd02b08d26f016c
|
||||
|
||||
/**
|
||||
diff --git a/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java b/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java
|
||||
index d70c25f404e994766a9ebce89a917c8d0719777c..9b43bb24055b94328c569f7e0df6bd24c8ebfd2b 100644
|
||||
index d70c25f404e994766a9ebce89a917c8d0719777c..0395ca85a466f6356259078d3bad48b2ce6e57b7 100644
|
||||
--- a/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java
|
||||
@@ -10,30 +10,59 @@ import org.jetbrains.annotations.Nullable;
|
||||
@ -2042,7 +2042,7 @@ index d70c25f404e994766a9ebce89a917c8d0719777c..9b43bb24055b94328c569f7e0df6bd24
|
||||
+ @Deprecated // Paper
|
||||
public PlayerQuitEvent(@NotNull final Player who, @Nullable final String quitMessage) {
|
||||
super(who);
|
||||
+ this.quitMessage = quitMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(quitMessage) : net.kyori.adventure.text.Component.empty(); // Paper
|
||||
+ this.quitMessage = quitMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(quitMessage) : null; // Paper
|
||||
+ }
|
||||
+ // Paper start
|
||||
+ public PlayerQuitEvent(@NotNull final Player who, @Nullable final net.kyori.adventure.text.Component quitMessage) {
|
||||
@ -2091,7 +2091,7 @@ index d70c25f404e994766a9ebce89a917c8d0719777c..9b43bb24055b94328c569f7e0df6bd24
|
||||
+ @Deprecated // Paper
|
||||
public void setQuitMessage(@Nullable String quitMessage) {
|
||||
- this.quitMessage = quitMessage;
|
||||
+ this.quitMessage = quitMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(quitMessage) : net.kyori.adventure.text.Component.empty(); // Paper
|
||||
+ this.quitMessage = quitMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(quitMessage) : null; // Paper
|
||||
}
|
||||
|
||||
@NotNull
|
||||
|
@ -5,7 +5,7 @@ Subject: [PATCH] Add API for quit reason
|
||||
|
||||
|
||||
diff --git a/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java b/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java
|
||||
index 9b43bb24055b94328c569f7e0df6bd24c8ebfd2b..876cdce63a362f9cc208f767c10169e75a798a09 100644
|
||||
index 0395ca85a466f6356259078d3bad48b2ce6e57b7..6e9205024ca9d3000a371bd0eb723dcd6c662bce 100644
|
||||
--- a/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java
|
||||
+++ b/src/main/java/org/bukkit/event/player/PlayerQuitEvent.java
|
||||
@@ -11,16 +11,28 @@ import org.jetbrains.annotations.Nullable;
|
||||
@ -22,7 +22,7 @@ index 9b43bb24055b94328c569f7e0df6bd24c8ebfd2b..876cdce63a362f9cc208f767c10169e7
|
||||
+ @Deprecated // Paper
|
||||
+ public PlayerQuitEvent(@NotNull final Player who, @Nullable final String quitMessage, @Nullable QuitReason quitReason) {
|
||||
super(who);
|
||||
this.quitMessage = quitMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(quitMessage) : net.kyori.adventure.text.Component.empty(); // Paper
|
||||
this.quitMessage = quitMessage != null ? net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer.legacySection().deserialize(quitMessage) : null; // Paper
|
||||
+ this.reason = quitReason == null ? QuitReason.DISCONNECTED : quitReason;
|
||||
}
|
||||
// Paper start
|
||||
|
@ -1096,7 +1096,7 @@ index 055555cb5ce63d41cb9a7f4114341b0685879b9e..7875d4c08969b3adc6f95504686cc9fe
|
||||
|
||||
@Override
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index d34e91887cd73009bf852fb849e495a8affed7a9..287d1c6abd407dc8f1e5b29a95579ff9875bdaec 100644
|
||||
index d34e91887cd73009bf852fb849e495a8affed7a9..b7346242ab1df88d33f33109aff6d21ebae052c6 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -25,6 +25,8 @@ import org.apache.logging.log4j.LogManager;
|
||||
@ -1156,7 +1156,7 @@ index d34e91887cd73009bf852fb849e495a8affed7a9..287d1c6abd407dc8f1e5b29a95579ff9
|
||||
- this.minecraftServer.getPlayerList().sendMessage(CraftChatMessage.fromString(quitMessage));
|
||||
+ // Paper start - Adventure
|
||||
+ net.kyori.adventure.text.Component quitMessage = this.minecraftServer.getPlayerList().disconnect(this.player);
|
||||
+ if ((quitMessage != null) && (quitMessage.equals(net.kyori.adventure.text.Component.empty()))) {
|
||||
+ if ((quitMessage != null) && !quitMessage.equals(net.kyori.adventure.text.Component.empty())) {
|
||||
+ this.minecraftServer.getPlayerList().sendMessage(PaperAdventure.asVanilla(quitMessage));
|
||||
+ // Paper end
|
||||
}
|
||||
@ -1243,7 +1243,7 @@ index d34e91887cd73009bf852fb849e495a8affed7a9..287d1c6abd407dc8f1e5b29a95579ff9
|
||||
}
|
||||
// CraftBukkit end
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 5b49047b820dbe1f326320b71445ac216bf688b5..1b0fe4f27a7346a1466db97e796c4a65b11e1ab8 100644
|
||||
index 5b49047b820dbe1f326320b71445ac216bf688b5..04d0749287803063c3cb3e92e44da873ceb044c0 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -8,6 +8,7 @@ import com.mojang.authlib.GameProfile;
|
||||
@ -1271,7 +1271,7 @@ index 5b49047b820dbe1f326320b71445ac216bf688b5..1b0fe4f27a7346a1466db97e796c4a65
|
||||
|
||||
playerconnection.a(entityplayer.locX(), entityplayer.locY(), entityplayer.locZ(), entityplayer.yaw, entityplayer.pitch);
|
||||
this.players.add(entityplayer);
|
||||
@@ -197,19 +199,17 @@ public abstract class PlayerList {
|
||||
@@ -197,19 +199,18 @@ public abstract class PlayerList {
|
||||
// this.sendAll(new PacketPlayOutPlayerInfo(PacketPlayOutPlayerInfo.EnumPlayerInfoAction.ADD_PLAYER, new EntityPlayer[]{entityplayer})); // CraftBukkit - replaced with loop below
|
||||
|
||||
// CraftBukkit start
|
||||
@ -1284,18 +1284,19 @@ index 5b49047b820dbe1f326320b71445ac216bf688b5..1b0fe4f27a7346a1466db97e796c4a65
|
||||
}
|
||||
|
||||
- joinMessage = playerJoinEvent.getJoinMessage();
|
||||
+ joinMessage = PaperAdventure.asVanilla(playerJoinEvent.joinMessage()); // Paper - Adventure
|
||||
+ final net.kyori.adventure.text.Component jm = playerJoinEvent.joinMessage();
|
||||
|
||||
- if (joinMessage != null && joinMessage.length() > 0) {
|
||||
- for (IChatBaseComponent line : org.bukkit.craftbukkit.util.CraftChatMessage.fromString(joinMessage)) {
|
||||
- server.getPlayerList().sendAll(new PacketPlayOutChat(line, ChatMessageType.SYSTEM, SystemUtils.b));
|
||||
- }
|
||||
+ if (playerJoinEvent.joinMessage() != net.kyori.adventure.text.Component.empty()) { // Paper - Adventure
|
||||
+ if (jm != null && !jm.equals(net.kyori.adventure.text.Component.empty())) { // Paper - Adventure
|
||||
+ joinMessage = PaperAdventure.asVanilla(playerJoinEvent.joinMessage()); // Paper - Adventure
|
||||
+ server.getPlayerList().sendAll(new PacketPlayOutChat(joinMessage, ChatMessageType.SYSTEM, SystemUtils.b)); // Paper - Adventure
|
||||
}
|
||||
// CraftBukkit end
|
||||
|
||||
@@ -406,7 +406,7 @@ public abstract class PlayerList {
|
||||
@@ -406,7 +407,7 @@ public abstract class PlayerList {
|
||||
|
||||
}
|
||||
|
||||
@ -1304,7 +1305,7 @@ index 5b49047b820dbe1f326320b71445ac216bf688b5..1b0fe4f27a7346a1466db97e796c4a65
|
||||
WorldServer worldserver = entityplayer.getWorldServer();
|
||||
|
||||
entityplayer.a(StatisticList.LEAVE_GAME);
|
||||
@@ -417,7 +417,7 @@ public abstract class PlayerList {
|
||||
@@ -417,7 +418,7 @@ public abstract class PlayerList {
|
||||
entityplayer.closeInventory();
|
||||
}
|
||||
|
||||
@ -1313,7 +1314,7 @@ index 5b49047b820dbe1f326320b71445ac216bf688b5..1b0fe4f27a7346a1466db97e796c4a65
|
||||
cserver.getPluginManager().callEvent(playerQuitEvent);
|
||||
entityplayer.getBukkitEntity().disconnect(playerQuitEvent.getQuitMessage());
|
||||
|
||||
@@ -478,7 +478,7 @@ public abstract class PlayerList {
|
||||
@@ -478,7 +479,7 @@ public abstract class PlayerList {
|
||||
cserver.getScoreboardManager().removePlayer(entityplayer.getBukkitEntity());
|
||||
// CraftBukkit end
|
||||
|
||||
@ -1322,7 +1323,7 @@ index 5b49047b820dbe1f326320b71445ac216bf688b5..1b0fe4f27a7346a1466db97e796c4a65
|
||||
}
|
||||
|
||||
// CraftBukkit start - Whole method, SocketAddress to LoginListener, added hostname to signature, return EntityPlayer
|
||||
@@ -524,10 +524,10 @@ public abstract class PlayerList {
|
||||
@@ -524,10 +525,10 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
// return chatmessage;
|
||||
@ -1335,7 +1336,7 @@ index 5b49047b820dbe1f326320b71445ac216bf688b5..1b0fe4f27a7346a1466db97e796c4a65
|
||||
} else if (getIPBans().isBanned(socketaddress) && !getIPBans().get(socketaddress).hasExpired()) {
|
||||
IpBanEntry ipbanentry = this.l.get(socketaddress);
|
||||
|
||||
@@ -537,17 +537,17 @@ public abstract class PlayerList {
|
||||
@@ -537,17 +538,17 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
// return chatmessage;
|
||||
@ -1356,7 +1357,7 @@ index 5b49047b820dbe1f326320b71445ac216bf688b5..1b0fe4f27a7346a1466db97e796c4a65
|
||||
return null;
|
||||
}
|
||||
return entity;
|
||||
@@ -1068,7 +1068,7 @@ public abstract class PlayerList {
|
||||
@@ -1068,7 +1069,7 @@ public abstract class PlayerList {
|
||||
public void shutdown() {
|
||||
// CraftBukkit start - disconnect safely
|
||||
for (EntityPlayer player : this.players) {
|
||||
|
@ -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 430d86aba42de6de057a78d78e9d8c41bc6fd680..a1ec2ae7c3152019b3d01166547e6931d4bf2b57 100644
|
||||
index 4612e1d7adc6dad32dac7de040e0b8c45340be8d..e8ede86cab0bfcf1164fcdb6b19a60099b50e5eb 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -77,6 +77,7 @@ public abstract class PlayerList {
|
||||
@ -68,7 +68,7 @@ index 430d86aba42de6de057a78d78e9d8c41bc6fd680..a1ec2ae7c3152019b3d01166547e6931
|
||||
|
||||
public PlayerList(MinecraftServer minecraftserver, IRegistryCustom.Dimension iregistrycustom_dimension, WorldNBTStorage worldnbtstorage, int i) {
|
||||
this.cserver = minecraftserver.server = new CraftServer((DedicatedServer) minecraftserver, this);
|
||||
@@ -305,6 +306,13 @@ public abstract class PlayerList {
|
||||
@@ -306,6 +307,13 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
entityplayer.syncInventory();
|
||||
@ -82,7 +82,7 @@ index 430d86aba42de6de057a78d78e9d8c41bc6fd680..a1ec2ae7c3152019b3d01166547e6931
|
||||
// CraftBukkit - Moved from above, added world
|
||||
PlayerList.LOGGER.info("{}[{}] logged in with entity id {} at ([{}]{}, {}, {})", entityplayer.getDisplayName().getString(), s1, entityplayer.getId(), worldserver1.worldDataServer.getName(), entityplayer.locX(), entityplayer.locY(), entityplayer.locZ());
|
||||
}
|
||||
@@ -425,6 +433,16 @@ public abstract class PlayerList {
|
||||
@@ -426,6 +434,16 @@ public abstract class PlayerList {
|
||||
entityplayer.playerTick(); // SPIGOT-924
|
||||
// CraftBukkit end
|
||||
|
||||
@ -99,7 +99,7 @@ index 430d86aba42de6de057a78d78e9d8c41bc6fd680..a1ec2ae7c3152019b3d01166547e6931
|
||||
this.savePlayerFile(entityplayer);
|
||||
if (entityplayer.isPassenger()) {
|
||||
Entity entity = entityplayer.getRootVehicle();
|
||||
@@ -1073,6 +1091,13 @@ public abstract class PlayerList {
|
||||
@@ -1074,6 +1092,13 @@ public abstract class PlayerList {
|
||||
}
|
||||
// CraftBukkit end
|
||||
|
||||
|
@ -7,10 +7,10 @@ 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 a1ec2ae7c3152019b3d01166547e6931d4bf2b57..05ef12c3b90191a3998d1251221658c86af99654 100644
|
||||
index e8ede86cab0bfcf1164fcdb6b19a60099b50e5eb..fbb7424306d25b0c6dd69229e00c13c4c1a92fec 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -975,11 +975,13 @@ public abstract class PlayerList {
|
||||
@@ -976,11 +976,13 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
public void savePlayers() {
|
||||
|
@ -73,10 +73,10 @@ index 7e4a966b5748417223243344bf7c4483e997a237..c6b520f3f8872a0345f76a75f0b48fe1
|
||||
// Spigot Start
|
||||
private static double calcTps(double avg, double exp, double tps)
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 05ef12c3b90191a3998d1251221658c86af99654..7ecd5e3747fd8acbddcdf5b42285d7b6f3ffbac2 100644
|
||||
index fbb7424306d25b0c6dd69229e00c13c4c1a92fec..97cf3f1f4c19606f099de84745301b52295e2391 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -1086,9 +1086,15 @@ public abstract class PlayerList {
|
||||
@@ -1087,9 +1087,15 @@ public abstract class PlayerList {
|
||||
entityplayer.playerInteractManager.b(worldserver.worldDataServer.getGameType()); // CraftBukkit
|
||||
}
|
||||
|
||||
@ -92,7 +92,7 @@ index 05ef12c3b90191a3998d1251221658c86af99654..7ecd5e3747fd8acbddcdf5b42285d7b6
|
||||
player.playerConnection.disconnect(PaperAdventure.asVanilla(this.server.server.shutdownMessage())); // CraftBukkit - add custom shutdown message // Paper - Adventure
|
||||
}
|
||||
// CraftBukkit end
|
||||
@@ -1101,6 +1107,7 @@ public abstract class PlayerList {
|
||||
@@ -1102,6 +1108,7 @@ public abstract class PlayerList {
|
||||
}
|
||||
// Paper end
|
||||
}
|
||||
|
@ -5,10 +5,10 @@ Subject: [PATCH] ProfileWhitelistVerifyEvent
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 07ab0bf135a6903c936606296b6701b970ad48db..d574bc5755b3075aa8d4a566262ee391b463be19 100644
|
||||
index fa4a74a496d8b46b8b3a5e5d28a76c8e7bfb3bbb..872b780b337ba75448e679d544373df6d53c8fe4 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -543,9 +543,9 @@ public abstract class PlayerList {
|
||||
@@ -544,9 +544,9 @@ public abstract class PlayerList {
|
||||
|
||||
// return chatmessage;
|
||||
if (!gameprofilebanentry.hasExpired()) event.disallow(PlayerLoginEvent.Result.KICK_BANNED, PaperAdventure.asAdventure(chatmessage)); // Spigot // Paper - Adventure
|
||||
@ -21,7 +21,7 @@ index 07ab0bf135a6903c936606296b6701b970ad48db..d574bc5755b3075aa8d4a566262ee391
|
||||
} else if (getIPBans().isBanned(socketaddress) && !getIPBans().get(socketaddress).hasExpired()) {
|
||||
IpBanEntry ipbanentry = this.l.get(socketaddress);
|
||||
|
||||
@@ -937,9 +937,25 @@ public abstract class PlayerList {
|
||||
@@ -938,9 +938,25 @@ public abstract class PlayerList {
|
||||
this.server.getCommandDispatcher().a(entityplayer);
|
||||
}
|
||||
|
||||
|
@ -88,7 +88,7 @@ index 3f559918e85b6d5c2ab8ff593b69d40c1db8bb16..d606e3faaf7c58d89539b6bd997978c0
|
||||
this.o();
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index a6a9ee8f34a61fbabfb1643b41cfb5e3a72cdf78..77e0d5dde4f3a7c808df545fd8d3870d24c42a38 100644
|
||||
index 5b6216e496256e27e2b53e807e5c7bff18e71014..1873ab094f43255c9eca64b3c1c4c6e0fbfe70cf 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -45,6 +45,7 @@ import org.bukkit.event.inventory.ClickType;
|
||||
@ -117,10 +117,10 @@ index a6a9ee8f34a61fbabfb1643b41cfb5e3a72cdf78..77e0d5dde4f3a7c808df545fd8d3870d
|
||||
this.player.o();
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index d574bc5755b3075aa8d4a566262ee391b463be19..6c652849a24787a74e7eed16cb30d77e7b293ce9 100644
|
||||
index 872b780b337ba75448e679d544373df6d53c8fe4..cb6fa4be113d732ed93d9ccbef99c56f9044e7ee 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -422,7 +422,7 @@ public abstract class PlayerList {
|
||||
@@ -423,7 +423,7 @@ public abstract class PlayerList {
|
||||
// CraftBukkit start - Quitting must be before we do final save of data, in case plugins need to modify it
|
||||
// See SPIGOT-5799, SPIGOT-6145
|
||||
if (entityplayer.activeContainer != entityplayer.defaultContainer) {
|
||||
|
@ -122,10 +122,10 @@ index da21918ce0339a0eb8f65ce7791a04ceb12749b7..1fc0139cb9694ddea41f57d95774c3b4
|
||||
|
||||
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 6c652849a24787a74e7eed16cb30d77e7b293ce9..55427a0a8e420eb7eedd9dcc951c56ddc1ef4020 100644
|
||||
index cb6fa4be113d732ed93d9ccbef99c56f9044e7ee..ee56306b49224b5421b6d2870019c1aa053873d7 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -546,7 +546,7 @@ public abstract class PlayerList {
|
||||
@@ -547,7 +547,7 @@ public abstract class PlayerList {
|
||||
} else if (!this.isWhitelisted(gameprofile, event)) { // Paper
|
||||
//chatmessage = new ChatMessage("multiplayer.disconnect.not_whitelisted"); // Paper
|
||||
//event.disallow(PlayerLoginEvent.Result.KICK_WHITELIST, org.spigotmc.SpigotConfig.whitelistMessage); // Spigot // Paper - moved to isWhitelisted
|
||||
|
@ -11,10 +11,10 @@ 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 dbeb63de4fef480f5f4f3b967ddc93bb11616af5..ce62e3706bb69068d3baa875ea9d227a9c3a9465 100644
|
||||
index cdfa9359bbec27dcb59686019bbbffd5f43959c6..64fbe9f17d297fd71add78e72a8fa40ce52a3346 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -944,9 +944,9 @@ public abstract class PlayerList {
|
||||
@@ -945,9 +945,9 @@ public abstract class PlayerList {
|
||||
}
|
||||
public boolean isWhitelisted(GameProfile gameprofile, org.bukkit.event.player.PlayerLoginEvent loginEvent) {
|
||||
boolean isOp = this.operators.d(gameprofile);
|
||||
|
@ -5,10 +5,10 @@ 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 ce62e3706bb69068d3baa875ea9d227a9c3a9465..7e8178421c43fa3f555b1a30aa15512ab5b3b403 100644
|
||||
index 64fbe9f17d297fd71add78e72a8fa40ce52a3346..15f62a4e66b1a2f208019507f8adbaa1c316829c 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -1062,6 +1062,7 @@ public abstract class PlayerList {
|
||||
@@ -1063,6 +1063,7 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
public void setHasWhitelist(boolean flag) {
|
||||
|
@ -10,7 +10,7 @@ persistenting Living Entity, SPAWNER for spawners,
|
||||
or DEFAULT since data was not stored.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 8827ccfc77284020496046e755b3639de75c5903..3ba1ca223f689960c637245e1873a4aaa8672a22 100644
|
||||
index 00c57501f80fd0988573b36cd7e75a343c7e8e6e..1dbeda9fb385be29b3bb20c33a0487334c6e7c16 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -72,6 +72,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||
@ -71,10 +71,10 @@ index 1aecc84479b00a019a5b68f5e726d1c2965ae0f7..c3a5db97fd85b31c6b4bce93527b9d0e
|
||||
// Spigot Start
|
||||
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 7e8178421c43fa3f555b1a30aa15512ab5b3b403..b09b3c34eb77df164cbc87f2383dd8dd5517f33d 100644
|
||||
index 15f62a4e66b1a2f208019507f8adbaa1c316829c..a3b1e4911b247a493e53710883f8ef36328ab68c 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 {
|
||||
@@ -263,7 +263,7 @@ public abstract class PlayerList {
|
||||
// CraftBukkit start
|
||||
WorldServer finalWorldServer = worldserver1;
|
||||
Entity entity = EntityTypes.a(nbttagcompound1.getCompound("Entity"), finalWorldServer, (entity1) -> {
|
||||
@ -84,7 +84,7 @@ index 7e8178421c43fa3f555b1a30aa15512ab5b3b403..b09b3c34eb77df164cbc87f2383dd8dd
|
||||
});
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/WorldServer.java b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
index f047f07e768b77feb469c69166f36a3f6779f561..41d466bcd676e6988c4f754d0232d3addb3b6fc5 100644
|
||||
index f9d2228fb0543c60d2e0848afb4f927b6a7bce51..47229f73ede76176f884deb9ec623a684d6e81cd 100644
|
||||
--- a/src/main/java/net/minecraft/server/WorldServer.java
|
||||
+++ b/src/main/java/net/minecraft/server/WorldServer.java
|
||||
@@ -930,6 +930,7 @@ public class WorldServer extends World implements GeneratorAccessSeed {
|
||||
|
@ -5,10 +5,10 @@ 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 b09b3c34eb77df164cbc87f2383dd8dd5517f33d..46c7ad88af6f69347477ff96df5c522211d0a577 100644
|
||||
index a3b1e4911b247a493e53710883f8ef36328ab68c..ec9d1c98ec58ec6e938a18a1ec86ecc830f12d36 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -668,9 +668,14 @@ public abstract class PlayerList {
|
||||
@@ -669,9 +669,14 @@ public abstract class PlayerList {
|
||||
// this.a(entityplayer1, entityplayer, worldserver1); // CraftBukkit - removed
|
||||
boolean flag2 = false;
|
||||
|
||||
@ -24,7 +24,7 @@ index b09b3c34eb77df164cbc87f2383dd8dd5517f33d..46c7ad88af6f69347477ff96df5c5222
|
||||
WorldServer worldserver1 = this.server.getWorldServer(entityplayer.getSpawnDimension());
|
||||
if (worldserver1 != null) {
|
||||
Optional optional;
|
||||
@@ -721,6 +726,7 @@ public abstract class PlayerList {
|
||||
@@ -722,6 +727,7 @@ public abstract class PlayerList {
|
||||
|
||||
location = respawnEvent.getRespawnLocation();
|
||||
if (!flag) entityplayer.reset(); // SPIGOT-4785
|
||||
@ -32,7 +32,7 @@ index b09b3c34eb77df164cbc87f2383dd8dd5517f33d..46c7ad88af6f69347477ff96df5c5222
|
||||
} else {
|
||||
location.setWorld(worldserver.getWorld());
|
||||
}
|
||||
@@ -778,6 +784,13 @@ public abstract class PlayerList {
|
||||
@@ -779,6 +785,13 @@ public abstract class PlayerList {
|
||||
if (entityplayer.playerConnection.isDisconnected()) {
|
||||
this.savePlayerFile(entityplayer);
|
||||
}
|
||||
|
@ -7,10 +7,10 @@ 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 46c7ad88af6f69347477ff96df5c522211d0a577..a1f71569a6a0d0b69a52092f72fef23c888e636c 100644
|
||||
index ec9d1c98ec58ec6e938a18a1ec86ecc830f12d36..1b9781cc301aa09190cceaf9165500d044db5de4 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -534,8 +534,10 @@ public abstract class PlayerList {
|
||||
@@ -535,8 +535,10 @@ public abstract class PlayerList {
|
||||
Player player = entity.getBukkitEntity();
|
||||
PlayerLoginEvent event = new PlayerLoginEvent(player, hostname, ((java.net.InetSocketAddress) socketaddress).getAddress(), ((java.net.InetSocketAddress) loginlistener.networkManager.getRawAddress()).getAddress());
|
||||
|
||||
|
@ -18,10 +18,10 @@ index bf68562b08b8d8fecb25a469b4fb4dbc868b0f28..c71a2264438317d1d36ddf56813ccd1c
|
||||
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 a1f71569a6a0d0b69a52092f72fef23c888e636c..a02c51c25d698594281bbe317cd91a44aaf52ebc 100644
|
||||
index 1b9781cc301aa09190cceaf9165500d044db5de4..7534c8d31f08b80d77aff29ca4822bc07b1ad8eb 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -773,6 +773,8 @@ public abstract class PlayerList {
|
||||
@@ -774,6 +774,8 @@ public abstract class PlayerList {
|
||||
entityplayer.playerConnection.sendPacket(new PacketPlayOutEntityEffect(entityplayer.getId(), mobEffect));
|
||||
}
|
||||
|
||||
|
@ -14,7 +14,7 @@ movement will load only the chunk the player enters anyways and avoids loading
|
||||
massive amounts of surrounding chunks due to large AABB lookups.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/Entity.java b/src/main/java/net/minecraft/server/Entity.java
|
||||
index 0adeb46e1a82820df8744379829f6f7a68fa6d2d..3dc33c26150af672df19e3f78572e74ce65bdc79 100644
|
||||
index 874dddc5d70dc149c272855a98ed858867dd2bb6..7da08dd7c2396ae1048d857bfae4fee2a9f3b4d9 100644
|
||||
--- a/src/main/java/net/minecraft/server/Entity.java
|
||||
+++ b/src/main/java/net/minecraft/server/Entity.java
|
||||
@@ -80,6 +80,7 @@ public abstract class Entity implements INamableTileEntity, ICommandListener, Ke
|
||||
@ -40,10 +40,10 @@ index 7bb0843d76864fc10575532745eb63f9ca478354..25e54a1fadc5d31fb250a3f47524b4f3
|
||||
|
||||
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 a02c51c25d698594281bbe317cd91a44aaf52ebc..c52c6cc6ab0bed4fbd088f6d32455e1a58a70c16 100644
|
||||
index 7534c8d31f08b80d77aff29ca4822bc07b1ad8eb..d4bf928ccfb31903b2fe69e2c5d78127d7f77721 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -736,6 +736,7 @@ public abstract class PlayerList {
|
||||
@@ -737,6 +737,7 @@ public abstract class PlayerList {
|
||||
entityplayer1.forceSetPositionRotation(location.getX(), location.getY(), location.getZ(), location.getYaw(), location.getPitch());
|
||||
// CraftBukkit end
|
||||
|
||||
|
@ -287,10 +287,10 @@ index 87de764f74e8174da4c1a28238375caa6fdb4d5e..1b5c97c74b7224a8ac4d6e834925c050
|
||||
list.stream().map((playerchunk) -> {
|
||||
CompletableFuture completablefuture;
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index ce097978a072dd5499169277aa1143be97c3b4e1..a37e0330f95c00cc50b70ebbd6381c4acd671ed6 100644
|
||||
index 1f1a63a0a9b04aada2f4c66973c69beb9bb93e9d..ef7af4c6b9290ef18977e1aebd57621838685a5a 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -432,7 +432,7 @@ public abstract class PlayerList {
|
||||
@@ -433,7 +433,7 @@ public abstract class PlayerList {
|
||||
cserver.getPluginManager().callEvent(playerQuitEvent);
|
||||
entityplayer.getBukkitEntity().disconnect(playerQuitEvent.getQuitMessage());
|
||||
|
||||
|
@ -5,13 +5,13 @@ 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 a37e0330f95c00cc50b70ebbd6381c4acd671ed6..678c4d112a431148603144ff4210e101b989e4f0 100644
|
||||
index ef7af4c6b9290ef18977e1aebd57621838685a5a..80f549ab92e244478aa12e7113e8f6bf28729f7d 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -213,7 +213,9 @@ public abstract class PlayerList {
|
||||
joinMessage = PaperAdventure.asVanilla(playerJoinEvent.joinMessage()); // Paper - Adventure
|
||||
@@ -214,7 +214,9 @@ public abstract class PlayerList {
|
||||
|
||||
if (playerJoinEvent.joinMessage() != net.kyori.adventure.text.Component.empty()) { // Paper - Adventure
|
||||
if (jm != null && !jm.equals(net.kyori.adventure.text.Component.empty())) { // Paper - Adventure
|
||||
joinMessage = PaperAdventure.asVanilla(playerJoinEvent.joinMessage()); // Paper - Adventure
|
||||
- server.getPlayerList().sendAll(new PacketPlayOutChat(joinMessage, ChatMessageType.SYSTEM, SystemUtils.b)); // Paper - Adventure
|
||||
+ // Paper start - Removed sendAll for loop and broadcasted to console also
|
||||
+ server.getPlayerList().sendMessage(joinMessage); // Paper - Adventure
|
||||
|
@ -52,7 +52,7 @@ index 33e0a93917e67860704e08e639cca1dbdf3b2708..de9355914ec1dd4f2e5c3a9d9de881c9
|
||||
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 678c4d112a431148603144ff4210e101b989e4f0..69c8d2d57270bf4cff2d0678ebf4a4d4bc83ab4c 100644
|
||||
index 80f549ab92e244478aa12e7113e8f6bf28729f7d..a45390e8a8782dc4295515aab033ba93a3a5a34b 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -202,6 +202,12 @@ public abstract class PlayerList {
|
||||
@ -68,7 +68,7 @@ index 678c4d112a431148603144ff4210e101b989e4f0..69c8d2d57270bf4cff2d0678ebf4a4d4
|
||||
// CraftBukkit start
|
||||
PlayerJoinEvent playerJoinEvent = new org.bukkit.event.player.PlayerJoinEvent(cserver.getPlayer(entityplayer), PaperAdventure.asAdventure(chatmessage)); // Paper - Adventure
|
||||
cserver.getPluginManager().callEvent(playerJoinEvent);
|
||||
@@ -236,6 +242,8 @@ public abstract class PlayerList {
|
||||
@@ -237,6 +243,8 @@ public abstract class PlayerList {
|
||||
entityplayer.playerConnection.sendPacket(new PacketPlayOutPlayerInfo(PacketPlayOutPlayerInfo.EnumPlayerInfoAction.ADD_PLAYER, new EntityPlayer[] { entityplayer1}));
|
||||
}
|
||||
entityplayer.sentListPacket = true;
|
||||
@ -77,7 +77,7 @@ index 678c4d112a431148603144ff4210e101b989e4f0..69c8d2d57270bf4cff2d0678ebf4a4d4
|
||||
// CraftBukkit end
|
||||
|
||||
entityplayer.playerConnection.sendPacket(new PacketPlayOutEntityMetadata(entityplayer.getId(), entityplayer.datawatcher, true)); // CraftBukkit - BungeeCord#2321, send complete data to self on spawn
|
||||
@@ -261,6 +269,11 @@ public abstract class PlayerList {
|
||||
@@ -262,6 +270,11 @@ public abstract class PlayerList {
|
||||
playerconnection.sendPacket(new PacketPlayOutEntityEffect(entityplayer.getId(), mobeffect));
|
||||
}
|
||||
|
||||
@ -89,7 +89,7 @@ index 678c4d112a431148603144ff4210e101b989e4f0..69c8d2d57270bf4cff2d0678ebf4a4d4
|
||||
if (nbttagcompound != null && nbttagcompound.hasKeyOfType("RootVehicle", 10)) {
|
||||
NBTTagCompound nbttagcompound1 = nbttagcompound.getCompound("RootVehicle");
|
||||
// CraftBukkit start
|
||||
@@ -309,6 +322,10 @@ public abstract class PlayerList {
|
||||
@@ -310,6 +323,10 @@ public abstract class PlayerList {
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -73,7 +73,7 @@ index e5790c2aeaa380a3acc26434f5de78ac746c6d57..bdd4766976902e11411728e6faa93b7e
|
||||
if (entityplayer != null) {
|
||||
this.g = LoginListener.EnumProtocolState.DELAY_ACCEPT;
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 5b42d6ff29dfd7415a8b89b36e8522ab4f5494ca..bce167086d12b8b9b955a885ce86b33efa064a3c 100644
|
||||
index 503b090870c4307ab11ef5fb7e2692863d7dc9ea..11e63ee879fa8eaa502981bf3fe7fa4f5a6f5668 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -76,6 +76,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@ -110,7 +110,7 @@ index 5b42d6ff29dfd7415a8b89b36e8522ab4f5494ca..bce167086d12b8b9b955a885ce86b33e
|
||||
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 69c8d2d57270bf4cff2d0678ebf4a4d4bc83ab4c..dce3ec8c9cb0ebbf1c2a87cb3225fca95f120314 100644
|
||||
index a45390e8a8782dc4295515aab033ba93a3a5a34b..992e3e932133c60b448ec62a322e74ef8deb7599 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -56,11 +56,12 @@ public abstract class PlayerList {
|
||||
@ -200,7 +200,7 @@ index 69c8d2d57270bf4cff2d0678ebf4a4d4bc83ab4c..dce3ec8c9cb0ebbf1c2a87cb3225fca9
|
||||
ChatMessage chatmessage;
|
||||
|
||||
if (entityplayer.getProfile().getName().equalsIgnoreCase(s)) {
|
||||
@@ -421,6 +472,7 @@ public abstract class PlayerList {
|
||||
@@ -422,6 +473,7 @@ public abstract class PlayerList {
|
||||
|
||||
protected void savePlayerFile(EntityPlayer entityplayer) {
|
||||
if (!entityplayer.getBukkitEntity().isPersistent()) return; // CraftBukkit
|
||||
@ -208,7 +208,7 @@ index 69c8d2d57270bf4cff2d0678ebf4a4d4bc83ab4c..dce3ec8c9cb0ebbf1c2a87cb3225fca9
|
||||
this.playerFileData.save(entityplayer);
|
||||
ServerStatisticManager serverstatisticmanager = (ServerStatisticManager) entityplayer.getStatisticManager(); // CraftBukkit
|
||||
|
||||
@@ -448,7 +500,7 @@ public abstract class PlayerList {
|
||||
@@ -449,7 +501,7 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
PlayerQuitEvent playerQuitEvent = new PlayerQuitEvent(cserver.getPlayer(entityplayer), net.kyori.adventure.text.Component.translatable("multiplayer.player.left", net.kyori.adventure.text.format.NamedTextColor.YELLOW));
|
||||
@ -217,7 +217,7 @@ index 69c8d2d57270bf4cff2d0678ebf4a4d4bc83ab4c..dce3ec8c9cb0ebbf1c2a87cb3225fca9
|
||||
entityplayer.getBukkitEntity().disconnect(playerQuitEvent.getQuitMessage());
|
||||
|
||||
if (server.isMainThread()) entityplayer.playerTick(); // SPIGOT-924 // Paper - don't tick during emergency shutdowns (Watchdog)
|
||||
@@ -501,6 +553,13 @@ public abstract class PlayerList {
|
||||
@@ -502,6 +554,13 @@ public abstract class PlayerList {
|
||||
// this.p.remove(uuid);
|
||||
// CraftBukkit end
|
||||
}
|
||||
@ -231,7 +231,7 @@ index 69c8d2d57270bf4cff2d0678ebf4a4d4bc83ab4c..dce3ec8c9cb0ebbf1c2a87cb3225fca9
|
||||
|
||||
// CraftBukkit start
|
||||
// this.sendAll(new PacketPlayOutPlayerInfo(PacketPlayOutPlayerInfo.EnumPlayerInfoAction.REMOVE_PLAYER, new EntityPlayer[]{entityplayer}));
|
||||
@@ -518,7 +577,7 @@ public abstract class PlayerList {
|
||||
@@ -519,7 +578,7 @@ public abstract class PlayerList {
|
||||
cserver.getScoreboardManager().removePlayer(entityplayer.getBukkitEntity());
|
||||
// CraftBukkit end
|
||||
|
||||
@ -240,7 +240,7 @@ index 69c8d2d57270bf4cff2d0678ebf4a4d4bc83ab4c..dce3ec8c9cb0ebbf1c2a87cb3225fca9
|
||||
}
|
||||
|
||||
// CraftBukkit start - Whole method, SocketAddress to LoginListener, added hostname to signature, return EntityPlayer
|
||||
@@ -537,6 +596,13 @@ public abstract class PlayerList {
|
||||
@@ -538,6 +597,13 @@ public abstract class PlayerList {
|
||||
list.add(entityplayer);
|
||||
}
|
||||
}
|
||||
|
@ -577,7 +577,7 @@ index ebca5620f0bbd4173ca50f023f8333b853ab323a..025a5b24e259df04ee88cb251477c908
|
||||
}
|
||||
}
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index dce3ec8c9cb0ebbf1c2a87cb3225fca95f120314..778ceccf4c0ee6c56ead351ea9d4688d3fc9b041 100644
|
||||
index 992e3e932133c60b448ec62a322e74ef8deb7599..1dfd884d9b2dfb3b8c44afb8363019681ae49d84 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -177,7 +177,7 @@ public abstract class PlayerList {
|
||||
@ -589,7 +589,7 @@ index dce3ec8c9cb0ebbf1c2a87cb3225fca95f120314..778ceccf4c0ee6c56ead351ea9d4688d
|
||||
entityplayer.getBukkitEntity().sendSupportedChannels(); // CraftBukkit
|
||||
playerconnection.sendPacket(new PacketPlayOutCustomPayload(PacketPlayOutCustomPayload.a, (new PacketDataSerializer(Unpooled.buffer())).a(this.getServer().getServerModName())));
|
||||
playerconnection.sendPacket(new PacketPlayOutServerDifficulty(worlddata.getDifficulty(), worlddata.isDifficultyLocked()));
|
||||
@@ -830,7 +830,7 @@ public abstract class PlayerList {
|
||||
@@ -831,7 +831,7 @@ public abstract class PlayerList {
|
||||
// CraftBukkit start
|
||||
WorldData worlddata = worldserver1.getWorldData();
|
||||
entityplayer1.playerConnection.sendPacket(new PacketPlayOutRespawn(worldserver1.getDimensionManager(), worldserver1.getDimensionKey(), BiomeManager.a(worldserver1.getSeed()), entityplayer1.playerInteractManager.getGameMode(), entityplayer1.playerInteractManager.c(), worldserver1.isDebugWorld(), worldserver1.isFlatWorld(), flag));
|
||||
@ -598,7 +598,7 @@ index dce3ec8c9cb0ebbf1c2a87cb3225fca95f120314..778ceccf4c0ee6c56ead351ea9d4688d
|
||||
entityplayer1.spawnIn(worldserver1);
|
||||
entityplayer1.dead = false;
|
||||
entityplayer1.playerConnection.teleport(new Location(worldserver1.getWorld(), entityplayer1.locX(), entityplayer1.locY(), entityplayer1.locZ(), entityplayer1.yaw, entityplayer1.pitch));
|
||||
@@ -1298,7 +1298,7 @@ public abstract class PlayerList {
|
||||
@@ -1299,7 +1299,7 @@ public abstract class PlayerList {
|
||||
|
||||
public void a(int i) {
|
||||
this.viewDistance = i;
|
||||
|
@ -1146,7 +1146,7 @@ index e38c9a8f4bf017db9f296bffcd029f9603ee82f6..19a31536d40289cba25120d4cc4788e9
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 1570fc9490bfb776cfdfdf594d5b666563a3b342..9fe5c5109775f5d11bce47f88b78c20da971336e 100644
|
||||
index 6a3cd67816ee3cb79d00a2ea9e71af3d840b87c2..8e21c1d9bc47f5fc451bb0ff51480ca4cd1fff6e 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -1379,6 +1379,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@ -1158,7 +1158,7 @@ index 1570fc9490bfb776cfdfdf594d5b666563a3b342..9fe5c5109775f5d11bce47f88b78c20d
|
||||
}
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 778ceccf4c0ee6c56ead351ea9d4688d3fc9b041..4ff99bbe820948a6f6a04588fa5505edc9932f21 100644
|
||||
index 1dfd884d9b2dfb3b8c44afb8363019681ae49d84..4bf086ab2ee2514515ab8238a30b766e5c9d3ea9 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -198,8 +198,8 @@ public abstract class PlayerList {
|
||||
@ -1172,7 +1172,7 @@ index 778ceccf4c0ee6c56ead351ea9d4688d3fc9b041..4ff99bbe820948a6f6a04588fa5505ed
|
||||
PlayerChunk updatingChunk = playerChunkMap.getUpdatingChunk(pos.pair());
|
||||
if (updatingChunk != null) {
|
||||
return updatingChunk.getEntityTickingFuture();
|
||||
@@ -618,6 +618,7 @@ public abstract class PlayerList {
|
||||
@@ -619,6 +619,7 @@ public abstract class PlayerList {
|
||||
SocketAddress socketaddress = loginlistener.networkManager.getSocketAddress();
|
||||
|
||||
EntityPlayer entity = new EntityPlayer(this.server, this.server.getWorldServer(World.OVERWORLD), gameprofile, new PlayerInteractManager(this.server.getWorldServer(World.OVERWORLD)));
|
||||
@ -1180,7 +1180,7 @@ index 778ceccf4c0ee6c56ead351ea9d4688d3fc9b041..4ff99bbe820948a6f6a04588fa5505ed
|
||||
Player player = entity.getBukkitEntity();
|
||||
PlayerLoginEvent event = new PlayerLoginEvent(player, hostname, ((java.net.InetSocketAddress) socketaddress).getAddress(), ((java.net.InetSocketAddress) loginlistener.networkManager.getRawAddress()).getAddress());
|
||||
|
||||
@@ -824,6 +825,7 @@ public abstract class PlayerList {
|
||||
@@ -825,6 +826,7 @@ public abstract class PlayerList {
|
||||
// CraftBukkit end
|
||||
|
||||
worldserver1.getChunkProvider().addTicket(TicketType.POST_TELEPORT, new ChunkCoordIntPair(location.getBlockX() >> 4, location.getBlockZ() >> 4), 1, entityplayer.getId()); // Paper
|
||||
|
@ -11,10 +11,10 @@ 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 4ff99bbe820948a6f6a04588fa5505edc9932f21..e7900a3f5ef54108bfe8397d7ee096563a9f9fa1 100644
|
||||
index 4bf086ab2ee2514515ab8238a30b766e5c9d3ea9..336e95013d4ff50246d22893d0c89af0245c9109 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -1075,16 +1075,40 @@ public abstract class PlayerList {
|
||||
@@ -1076,16 +1076,40 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
public void sendPacketNearby(@Nullable EntityHuman entityhuman, double d0, double d1, double d2, double d3, ResourceKey<World> resourcekey, Packet<?> packet) {
|
||||
|
@ -10,10 +10,10 @@ This fixes that by checking if the modified spawn location is
|
||||
still at a respawn anchor.
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 1da28f6eb3cf7d31e0b491238ec234236afc5b5a..4e2892f36fbc0176cbd6a250c0d23248f693972c 100644
|
||||
index 3f18a8cbea821cb878e0b0d3dde3b3e89b80715f..5255f3b0209226ee09827a51bb8282a220184975 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -772,6 +772,7 @@ public abstract class PlayerList {
|
||||
@@ -773,6 +773,7 @@ public abstract class PlayerList {
|
||||
// Paper start
|
||||
boolean isBedSpawn = false;
|
||||
boolean isRespawn = false;
|
||||
@ -21,7 +21,7 @@ index 1da28f6eb3cf7d31e0b491238ec234236afc5b5a..4e2892f36fbc0176cbd6a250c0d23248
|
||||
// Paper end
|
||||
|
||||
// CraftBukkit start - fire PlayerRespawnEvent
|
||||
@@ -782,7 +783,7 @@ public abstract class PlayerList {
|
||||
@@ -783,7 +784,7 @@ public abstract class PlayerList {
|
||||
Optional optional;
|
||||
|
||||
if (blockposition != null) {
|
||||
@ -30,7 +30,7 @@ index 1da28f6eb3cf7d31e0b491238ec234236afc5b5a..4e2892f36fbc0176cbd6a250c0d23248
|
||||
} else {
|
||||
optional = Optional.empty();
|
||||
}
|
||||
@@ -825,7 +826,12 @@ public abstract class PlayerList {
|
||||
@@ -826,7 +827,12 @@ public abstract class PlayerList {
|
||||
}
|
||||
// Spigot End
|
||||
|
||||
@ -44,7 +44,7 @@ index 1da28f6eb3cf7d31e0b491238ec234236afc5b5a..4e2892f36fbc0176cbd6a250c0d23248
|
||||
if (!flag) entityplayer.reset(); // SPIGOT-4785
|
||||
isRespawn = true; // Paper
|
||||
} else {
|
||||
@@ -863,8 +869,12 @@ public abstract class PlayerList {
|
||||
@@ -864,8 +870,12 @@ public abstract class PlayerList {
|
||||
}
|
||||
// entityplayer1.syncInventory();
|
||||
entityplayer1.setHealth(entityplayer1.getHealth());
|
||||
|
@ -59,10 +59,10 @@ index ca417825eb0827caad817f65b5132f1de37e3679..69fcfff3f21168f334fd526cb65e63e0
|
||||
// Paper start
|
||||
for (WorldServer world : getWorlds()) {
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 4e2892f36fbc0176cbd6a250c0d23248f693972c..0592ee3511d5532440944af45fe5428077c88d7f 100644
|
||||
index 5255f3b0209226ee09827a51bb8282a220184975..f04b23b6ccf45701fc98dbbe9757181c94d82192 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -484,6 +484,7 @@ public abstract class PlayerList {
|
||||
@@ -485,6 +485,7 @@ public abstract class PlayerList {
|
||||
protected void savePlayerFile(EntityPlayer entityplayer) {
|
||||
if (!entityplayer.getBukkitEntity().isPersistent()) return; // CraftBukkit
|
||||
if (!entityplayer.didPlayerJoinEvent) return; // Paper - If we never fired PJE, we disconnected during login. Data has not changed, and additionally, our saved vehicle is not loaded! If we save now, we will lose our vehicle (CraftBukkit bug)
|
||||
@ -70,7 +70,7 @@ index 4e2892f36fbc0176cbd6a250c0d23248f693972c..0592ee3511d5532440944af45fe54280
|
||||
this.playerFileData.save(entityplayer);
|
||||
ServerStatisticManager serverstatisticmanager = (ServerStatisticManager) entityplayer.getStatisticManager(); // CraftBukkit
|
||||
|
||||
@@ -1143,10 +1144,21 @@ public abstract class PlayerList {
|
||||
@@ -1144,10 +1145,21 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
public void savePlayers() {
|
||||
|
@ -37,7 +37,7 @@ index fc4ad72ffaed5e747cfecc71e9ac8ee2b556ce31..fb1e3c705b8abee13695762cdfd0e9f1
|
||||
NetworkManager.LOGGER.debug("Failed to sent packet", throwable);
|
||||
this.sendPacket(new PacketPlayOutKickDisconnect(chatmessage), (future) -> {
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerConnection.java b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
index 0f27428757b1827a625a25ea8f6435882f7b5f8a..54b109777c4383cfb4bef8f8ea8e4a9f1cbc9c7c 100644
|
||||
index 618675689dc22303a8f52f976dd89f07a299b221..f66201c839c25c101977628ac4b6f0f7eda5b2ca 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerConnection.java
|
||||
@@ -298,6 +298,7 @@ public class PlayerConnection implements PacketListenerPlayIn {
|
||||
@ -49,10 +49,10 @@ index 0f27428757b1827a625a25ea8f6435882f7b5f8a..54b109777c4383cfb4bef8f8ea8e4a9f
|
||||
this.networkManager.close(ichatbasecomponent);
|
||||
});
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 9080f28d8c8ce20ea9934384bd14932145c64de0..c074f0b451b5bbaab977a7512045a6da9399ed32 100644
|
||||
index 38c20c3f7c8a602770aceb9b561b7fb2eb3c86aa..4378e81421b766219908e4e15ffe4ab774c65f0e 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -511,7 +511,7 @@ public abstract class PlayerList {
|
||||
@@ -512,7 +512,7 @@ public abstract class PlayerList {
|
||||
entityplayer.closeInventory(org.bukkit.event.inventory.InventoryCloseEvent.Reason.DISCONNECT); // Paper
|
||||
}
|
||||
|
||||
|
@ -5,10 +5,10 @@ Subject: [PATCH] Expose world spawn angle
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index c074f0b451b5bbaab977a7512045a6da9399ed32..43176569a34a4c6af7a3fe7acf0c00da2f6fc91c 100644
|
||||
index 4378e81421b766219908e4e15ffe4ab774c65f0e..643694ff776986fdbecadff57b9a9b49763dc50c 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -815,7 +815,7 @@ public abstract class PlayerList {
|
||||
@@ -816,7 +816,7 @@ public abstract class PlayerList {
|
||||
if (location == null) {
|
||||
worldserver1 = this.server.getWorldServer(World.OVERWORLD);
|
||||
blockposition = entityplayer1.getSpawnPoint(worldserver1);
|
||||
@ -30,7 +30,7 @@ index faf931785ea35df4525d4a429bdb2363e26e491b..14e1762bf8669ef9e8444f5a73952daa
|
||||
|
||||
long getTime();
|
||||
diff --git a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
index 1162bf553ff6e5c5faf688b080a202dc55650ced..597d7a36d7d0b19502d92cf13da53d96c6ede58a 100644
|
||||
index 13614705328e5ae4432b585fe94d04f87b147dae..fe21b612f9bd2cf85670eeffa25998130b543339 100644
|
||||
--- a/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
+++ b/src/main/java/org/bukkit/craftbukkit/CraftWorld.java
|
||||
@@ -379,7 +379,7 @@ public class CraftWorld implements World {
|
||||
|
@ -5,10 +5,10 @@ Subject: [PATCH] Fix villager boat exploit
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index 43176569a34a4c6af7a3fe7acf0c00da2f6fc91c..ab1c23c12619aaea67cf3a484af3046a3e7c4872 100644
|
||||
index 643694ff776986fdbecadff57b9a9b49763dc50c..ae2af6bbd62ba3487b82afe4948cb3b2aa16bf2d 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -542,6 +542,15 @@ public abstract class PlayerList {
|
||||
@@ -543,6 +543,15 @@ public abstract class PlayerList {
|
||||
|
||||
for (Iterator iterator = entity.getAllPassengers().iterator(); iterator.hasNext(); entity1.dead = true) {
|
||||
entity1 = (Entity) iterator.next();
|
||||
|
@ -5,10 +5,10 @@ Subject: [PATCH] Add sendOpLevel API
|
||||
|
||||
|
||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
index ab1c23c12619aaea67cf3a484af3046a3e7c4872..e1ab296811081a0d1449d48d16de065c070fde23 100644
|
||||
index ae2af6bbd62ba3487b82afe4948cb3b2aa16bf2d..4a20235f34dc272b0a7939b97cf3448919c4f753 100644
|
||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||
@@ -1058,6 +1058,11 @@ public abstract class PlayerList {
|
||||
@@ -1059,6 +1059,11 @@ public abstract class PlayerList {
|
||||
}
|
||||
|
||||
private void a(EntityPlayer entityplayer, int i) {
|
||||
@ -20,7 +20,7 @@ index ab1c23c12619aaea67cf3a484af3046a3e7c4872..e1ab296811081a0d1449d48d16de065c
|
||||
if (entityplayer.playerConnection != null) {
|
||||
byte b0;
|
||||
|
||||
@@ -1072,8 +1077,10 @@ public abstract class PlayerList {
|
||||
@@ -1073,8 +1078,10 @@ public abstract class PlayerList {
|
||||
entityplayer.playerConnection.sendPacket(new PacketPlayOutEntityStatus(entityplayer, b0));
|
||||
}
|
||||
|
||||
|
Laden…
In neuem Issue referenzieren
Einen Benutzer sperren