From 378cd6fe289a418e637f1dbc2750b06ed07c168a Mon Sep 17 00:00:00 2001 From: "Amin.MasterkinG" Date: Sat, 4 Apr 2020 13:31:11 +0430 Subject: [PATCH] fix(core): "Silenced - You can only chat with GMs" spell (#2716) --- src/server/game/Handlers/ChatHandler.cpp | 19 +++++++++---------- 1 file changed, 9 insertions(+), 10 deletions(-) diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp index 96147c1f5..32afa6ef0 100644 --- a/src/server/game/Handlers/ChatHandler.cpp +++ b/src/server/game/Handlers/ChatHandler.cpp @@ -97,6 +97,13 @@ void WorldSession::HandleMessagechatOpcode(WorldPacket & recvData) return; } } + + if (sender->HasAura(1852) && type != CHAT_MSG_WHISPER) + { + SendNotification(GetAcoreString(LANG_GM_SILENCE), sender->GetName().c_str()); + recvData.rfinish(); + return; + } // prevent talking at unknown language (cheating) LanguageDesc const* langDesc = GetLanguageDescByID(lang); @@ -236,14 +243,6 @@ void WorldSession::HandleMessagechatOpcode(WorldPacket & recvData) sender->UpdateSpeakTime(specialMessageLimit); } - // pussywizard: optimization - /*if (sender->HasAura(1852) && type != CHAT_MSG_WHISPER) - { - SendNotification(GetAcoreString(LANG_GM_SILENCE), sender->GetName().c_str()); - recvData.rfinish(); - return; - }*/ - std::string to, channel, msg; bool ignoreChecks = false; switch (type) @@ -386,11 +385,11 @@ void WorldSession::HandleMessagechatOpcode(WorldPacket & recvData) } // pussywizard: optimization - /*if (GetPlayer()->HasAura(1852) && !receiver->IsGameMaster()) + if (GetPlayer()->HasAura(1852) && !receiver->IsGameMaster()) { SendNotification(GetAcoreString(LANG_GM_SILENCE), GetPlayer()->GetName().c_str()); return; - }*/ + } // If player is a Gamemaster and doesn't accept whisper, we auto-whitelist every player that the Gamemaster is talking to if (!senderIsPlayer && !sender->isAcceptWhispers() && !sender->IsInWhisperWhiteList(receiver->GetGUID()))