Fix offline players not having their disguises removed
This commit is contained in:
parent
88bc7f5784
commit
0d7370cc81
@ -190,7 +190,9 @@ public abstract class Disguise {
|
|||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
// If entity is no longer valid. Remove it.
|
// If entity is no longer valid. Remove it.
|
||||||
if (!getEntity().isValid()) {
|
if (getEntity() instanceof Player && !((Player) getEntity()).isOnline())
|
||||||
|
removeDisguise();
|
||||||
|
else if (!getEntity().isValid()) {
|
||||||
// If it has been dead for 30+ ticks
|
// If it has been dead for 30+ ticks
|
||||||
// This is to ensure that this disguise isn't removed while clients think its the real entity
|
// This is to ensure that this disguise isn't removed while clients think its the real entity
|
||||||
// The delay is because if it sends the destroy entity packets straight away, then it means no
|
// The delay is because if it sends the destroy entity packets straight away, then it means no
|
||||||
@ -531,7 +533,7 @@ public abstract class Disguise {
|
|||||||
if (isHidePlayer() && getEntity() instanceof Player && ((Player) getEntity()).isOnline()) {
|
if (isHidePlayer() && getEntity() instanceof Player && ((Player) getEntity()).isOnline()) {
|
||||||
PlayerInfoData playerInfo = new PlayerInfoData(
|
PlayerInfoData playerInfo = new PlayerInfoData(
|
||||||
ReflectionManager.getGameProfile((Player) getEntity()), 0,
|
ReflectionManager.getGameProfile((Player) getEntity()), 0,
|
||||||
NativeGameMode.SURVIVAL, WrappedChatComponent
|
NativeGameMode.fromBukkit(((Player) getEntity()).getGameMode()), WrappedChatComponent
|
||||||
.fromText(DisguiseUtilities.getPlayerListName((Player) getEntity())));
|
.fromText(DisguiseUtilities.getPlayerListName((Player) getEntity())));
|
||||||
|
|
||||||
PacketContainer addTab = new PacketContainer(PacketType.Play.Server.PLAYER_INFO);
|
PacketContainer addTab = new PacketContainer(PacketType.Play.Server.PLAYER_INFO);
|
||||||
|
Loading…
Reference in New Issue
Block a user