diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index ba8ad1c2a..50109b15e 100644 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -2239,21 +2239,17 @@ void Player::SetGMVisible(bool on) if (on) { - if (HasAura(VISUAL_AURA)) - RemoveAurasDueToSpell(VISUAL_AURA); - - m_ExtraFlags &= ~PLAYER_EXTRA_GM_INVISIBLE; //remove flag + RemoveAurasDueToSpell(VISUAL_AURA); + m_ExtraFlags &= ~PLAYER_EXTRA_GM_INVISIBLE; m_serverSideVisibility.SetValue(SERVERSIDE_VISIBILITY_GM, SEC_PLAYER); + + getHostileRefMgr().setOnlineOfflineState(false); + CombatStopWithPets(); } else { AddAura(VISUAL_AURA, this); - - m_ExtraFlags |= PLAYER_EXTRA_GM_INVISIBLE; //add flag - - SetAcceptWhispers(false); - SetGameMaster(true); - + m_ExtraFlags |= PLAYER_EXTRA_GM_INVISIBLE; m_serverSideVisibility.SetValue(SERVERSIDE_VISIBILITY_GM, GetSession()->GetSecurity()); } }