mirror of
https://github.com/Minestom/Minestom.git
synced 2025-02-01 13:01:32 +01:00
Fix FakePlayer not being removed from the tablist
This commit is contained in:
parent
52d0ef7f53
commit
6764d040c3
@ -124,17 +124,22 @@ public class FakePlayer extends Player implements NavigableEntity {
|
|||||||
super.setInstance(instance);
|
super.setInstance(instance);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean addViewer0(@NotNull Player player) {
|
||||||
|
final boolean result = super.addViewer0(player);
|
||||||
|
if (result) {
|
||||||
|
handleTabList(player.getPlayerConnection());
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* {@inheritDoc}
|
* {@inheritDoc}
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
protected void showPlayer(@NotNull PlayerConnection connection) {
|
protected void showPlayer(@NotNull PlayerConnection connection) {
|
||||||
super.showPlayer(connection);
|
super.showPlayer(connection);
|
||||||
if (!option.isInTabList()) {
|
handleTabList(connection);
|
||||||
// Remove from tab-list
|
|
||||||
MinecraftServer.getSchedulerManager().buildTask(() -> connection.sendPacket(getRemovePlayerToList())).delay(20, TimeUnit.TICK).schedule();
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@NotNull
|
@NotNull
|
||||||
@ -142,4 +147,11 @@ public class FakePlayer extends Player implements NavigableEntity {
|
|||||||
public Navigator getNavigator() {
|
public Navigator getNavigator() {
|
||||||
return navigator;
|
return navigator;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void handleTabList(PlayerConnection connection) {
|
||||||
|
if (!option.isInTabList()) {
|
||||||
|
// Remove from tab-list
|
||||||
|
MinecraftServer.getSchedulerManager().buildTask(() -> connection.sendPacket(getRemovePlayerToList())).delay(2, TimeUnit.TICK).schedule();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user