diff options
author | Shauren <shauren.trinity@gmail.com> | 2019-10-27 10:54:22 +0100 |
---|---|---|
committer | Shauren <shauren.trinity@gmail.com> | 2019-10-27 10:54:22 +0100 |
commit | 369cfc29d9f984f3b3c619c974493b7d272676a2 (patch) | |
tree | 94d43aa4b9a39cf4db18ba29202a69fa94943dbb | |
parent | a58ed271c963643f19ec9ebff0dbadd6f46e4eb8 (diff) |
Core/PacketIO: Restrict CMSG_EMOTE to only allow emotes that are hardcoded in client
-rw-r--r-- | src/server/game/Handlers/ChatHandler.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp index bd1e730dfdd..4f9155ebc97 100644 --- a/src/server/game/Handlers/ChatHandler.cpp +++ b/src/server/game/Handlers/ChatHandler.cpp @@ -266,7 +266,7 @@ void WorldSession::HandleMessagechatOpcode(WorldPacket& recvData) GetPlayer()->GetGUID().GetCounter()); return; } - + // collapse multiple spaces into one if (sWorld->getBoolConfig(CONFIG_CHAT_FAKE_MESSAGE_PREVENTING)) { @@ -576,6 +576,11 @@ void WorldSession::HandleEmoteOpcode(WorldPacket& recvData) uint32 emote; recvData >> emote; + + // restrict to the only emotes hardcoded in client + if (emote != EMOTE_ONESHOT_NONE && emote != EMOTE_ONESHOT_WAVE) + return; + sScriptMgr->OnPlayerEmote(GetPlayer(), emote); GetPlayer()->HandleEmoteCommand(emote); } |