Handle vanished players in tab list
This commit is contained in:
parent
57e025bb17
commit
4f6246addd
1 changed files with 15 additions and 9 deletions
|
@ -1,19 +1,19 @@
|
||||||
From e7125d3278b8ad21a2cac6f397ba835c5a76b41d Mon Sep 17 00:00:00 2001
|
From 7881af03e717e19de1c71b4b7f30618ebc7b2f54 Mon Sep 17 00:00:00 2001
|
||||||
From: md_5 <md_5@live.com.au>
|
From: md_5 <md_5@live.com.au>
|
||||||
Date: Sat, 16 Feb 2013 19:05:15 +1100
|
Date: Sat, 16 Feb 2013 19:05:15 +1100
|
||||||
Subject: [PATCH] Infrequently send tab list updates.
|
Subject: [PATCH] Infrequently send tab list updates.
|
||||||
|
|
||||||
---
|
---
|
||||||
src/main/java/net/minecraft/server/PlayerList.java | 6 ++----
|
src/main/java/net/minecraft/server/PlayerList.java | 13 ++++++++-----
|
||||||
src/main/java/org/bukkit/craftbukkit/Spigot.java | 2 ++
|
src/main/java/org/bukkit/craftbukkit/Spigot.java | 2 ++
|
||||||
src/main/resources/configurations/bukkit.yml | 1 +
|
src/main/resources/configurations/bukkit.yml | 1 +
|
||||||
3 files changed, 5 insertions(+), 4 deletions(-)
|
3 files changed, 11 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
diff --git a/src/main/java/net/minecraft/server/PlayerList.java b/src/main/java/net/minecraft/server/PlayerList.java
|
||||||
index d13fa19..8d07a76 100644
|
index d13fa19..3fc66aa 100644
|
||||||
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
--- a/src/main/java/net/minecraft/server/PlayerList.java
|
||||||
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
+++ b/src/main/java/net/minecraft/server/PlayerList.java
|
||||||
@@ -655,13 +655,11 @@ public abstract class PlayerList {
|
@@ -655,13 +655,16 @@ public abstract class PlayerList {
|
||||||
this.o = 0;
|
this.o = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -21,9 +21,15 @@ index d13fa19..8d07a76 100644
|
||||||
- if (this.o < this.players.size()) {
|
- if (this.o < this.players.size()) {
|
||||||
+ if (org.bukkit.craftbukkit.Spigot.tabPing && this.o < this.players.size()) {
|
+ if (org.bukkit.craftbukkit.Spigot.tabPing && this.o < this.players.size()) {
|
||||||
EntityPlayer entityplayer = (EntityPlayer) this.players.get(this.o);
|
EntityPlayer entityplayer = (EntityPlayer) this.players.get(this.o);
|
||||||
|
-
|
||||||
- this.sendAll(new Packet201PlayerInfo(entityplayer.name, true, entityplayer.ping));
|
- this.sendAll(new Packet201PlayerInfo(entityplayer.name, true, entityplayer.ping));
|
||||||
+ this.sendAll(new Packet201PlayerInfo(entityplayer.listName, true, entityplayer.ping));
|
+ Packet packet = new Packet201PlayerInfo(entityplayer.listName, true, entityplayer.ping);
|
||||||
|
+ for (int i = 0; i < this.players.size(); ++i) {
|
||||||
|
+ PlayerConnection con = ((EntityPlayer) this.players.get(i)).playerConnection;
|
||||||
|
+ if (con.getPlayer().canSee(entityplayer.getBukkitEntity())) {
|
||||||
|
+ con.sendPacket(packet);
|
||||||
|
+ }
|
||||||
|
+ }
|
||||||
}
|
}
|
||||||
- // CraftBukkit end */
|
- // CraftBukkit end */
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue