Always remove disguise and update if necessary

This commit is contained in:
YukonAppleGeek 2013-12-20 00:09:33 -06:00
parent 7bb0008b42
commit 36f9f25116

@ -379,14 +379,15 @@ public abstract class Disguise {
HashMap<Integer, HashSet<TargetedDisguise>> disguises = DisguiseUtilities.getDisguises(); HashMap<Integer, HashSet<TargetedDisguise>> disguises = DisguiseUtilities.getDisguises();
// If this disguise has a entity set // If this disguise has a entity set
if (getEntity() != null) { if (getEntity() != null) {
// If the entity is valid
if (getEntity().isValid()) {
// If this disguise is active // If this disguise is active
// Remove the disguise from the current disguises. // Remove the disguise from the current disguises.
if (DisguiseUtilities.removeDisguise((TargetedDisguise) this)) { if (DisguiseUtilities.removeDisguise((TargetedDisguise) this)) {
if (getEntity() instanceof Player) { if (getEntity() instanceof Player) {
DisguiseUtilities.removeSelfDisguise((Player) getEntity()); DisguiseUtilities.removeSelfDisguise((Player) getEntity());
} }
// If the entity is not dead
if (getEntity().isValid()) {
// Better refresh the entity to undisguise it // Better refresh the entity to undisguise it
DisguiseUtilities.refreshTrackers((TargetedDisguise) this); DisguiseUtilities.refreshTrackers((TargetedDisguise) this);
} }