aboutsummaryrefslogtreecommitdiff
path: root/src/game/ChatHandler.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/game/ChatHandler.cpp')
-rw-r--r--src/game/ChatHandler.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/game/ChatHandler.cpp b/src/game/ChatHandler.cpp
index ae9da2d9fe5..0b38c3aaa0a 100644
--- a/src/game/ChatHandler.cpp
+++ b/src/game/ChatHandler.cpp
@@ -155,6 +155,18 @@ void WorldSession::HandleMessagechatOpcode( WorldPacket & recv_data )
GetPlayer()->UpdateSpeakTime();
}
+ if (GetPlayer()->HasAura(1852) && type != CHAT_MSG_WHISPER)
+ {
+ std::string msg="";
+ recv_data >> msg;
+
+ if (ChatHandler(this).ParseCommands(msg.c_str()) == 0)
+ {
+ SendNotification(GetTrinityString(LANG_GM_SILENCE), GetPlayer()->GetName());
+ return;
+ }
+ }
+
switch(type)
{
case CHAT_MSG_SAY:
@@ -231,6 +243,12 @@ void WorldSession::HandleMessagechatOpcode( WorldPacket & recv_data )
}
}
+ if (GetPlayer()->HasAura(1852) && !player->isGameMaster())
+ {
+ SendNotification(GetTrinityString(LANG_GM_SILENCE), GetPlayer()->GetName());
+ return;
+ }
+
GetPlayer()->Whisper(msg, lang,player->GetGUID());
} break;