More latency handling fixes.
Fixed Clientside rendering issues of the PlayerInfo window if max players > 126. Limited PlayerInfo packets to 126 at a time as it cannot render anymore than 126.
Dieser Commit ist enthalten in:
Ursprung
76493f9c76
Commit
456ce51711
@ -101,7 +101,13 @@ public class NetLoginHandler extends NetHandler {
|
|||||||
byte b1 = (byte) worldserver.spawnMonsters;
|
byte b1 = (byte) worldserver.spawnMonsters;
|
||||||
|
|
||||||
worldserver.getClass();
|
worldserver.getClass();
|
||||||
Packet1Login packet1login1 = new Packet1Login("", i, j, k, b0, b1, (byte) -128, (byte) this.server.serverConfigurationManager.h());
|
// CraftBukkit start -- Don't send a higher than 126 MaxPlayer size, otherwise the PlayerInfo window won't render correctly.
|
||||||
|
int maxPlayers = this.server.serverConfigurationManager.h();
|
||||||
|
if (maxPlayers > 126) {
|
||||||
|
maxPlayers = 126;
|
||||||
|
}
|
||||||
|
Packet1Login packet1login1 = new Packet1Login("", i, j, k, b0, b1, (byte) -128, (byte) maxPlayers);
|
||||||
|
// CraftBukkit end
|
||||||
|
|
||||||
netserverhandler.sendPacket(packet1login1);
|
netserverhandler.sendPacket(packet1login1);
|
||||||
netserverhandler.sendPacket(new Packet6SpawnPosition(chunkcoordinates.x, chunkcoordinates.y, chunkcoordinates.z));
|
netserverhandler.sendPacket(new Packet6SpawnPosition(chunkcoordinates.x, chunkcoordinates.y, chunkcoordinates.z));
|
||||||
|
@ -320,6 +320,11 @@ public class ServerConfigurationManager {
|
|||||||
|
|
||||||
if (this.p-- <= 0) {
|
if (this.p-- <= 0) {
|
||||||
for (i = 0; i < this.players.size(); ++i) {
|
for (i = 0; i < this.players.size(); ++i) {
|
||||||
|
// CraftBukkit start -- Client cannot render anymore than 126 Players so there's no point sending anymore packets.
|
||||||
|
if (i > 126) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
// CraftBukkit end
|
||||||
EntityPlayer entityplayer = (EntityPlayer) this.players.get(i);
|
EntityPlayer entityplayer = (EntityPlayer) this.players.get(i);
|
||||||
|
|
||||||
this.sendAll(new Packet201PlayerInfo(entityplayer.name, true, entityplayer.i));
|
this.sendAll(new Packet201PlayerInfo(entityplayer.name, true, entityplayer.i));
|
||||||
|
In neuem Issue referenzieren
Einen Benutzer sperren