aboutsummaryrefslogtreecommitdiff
path: root/src/game/ChatHandler.cpp
diff options
context:
space:
mode:
authorNevan <none@none>2009-08-01 12:06:06 +0200
committerNevan <none@none>2009-08-01 12:06:06 +0200
commit03604a25670b9dbbe91537d1af21f2b5a06bbe07 (patch)
treedd96aa88737102ec0888dfd6700aa71c35490944 /src/game/ChatHandler.cpp
parent452eb463988cd6f4c39ed9682606995d95826702 (diff)
*Fix Spell 1852 (This is a GM tool for silencing players.)
--HG-- branch : trunk
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;