From 3fccb2b7bfcbc819988c2f8aa435a810f3707c82 Mon Sep 17 00:00:00 2001 From: click Date: Sun, 28 Nov 2010 20:12:33 +0100 Subject: Core/Chat: Disallow visual emotes when an entity is in dead-state (thanks to Vladimir) Closes issue 4942. --HG-- branch : trunk --- src/server/game/Server/Protocol/Handlers/ChatHandler.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'src/server') diff --git a/src/server/game/Server/Protocol/Handlers/ChatHandler.cpp b/src/server/game/Server/Protocol/Handlers/ChatHandler.cpp index 5caa120ec0c..958f26598e4 100755 --- a/src/server/game/Server/Protocol/Handlers/ChatHandler.cpp +++ b/src/server/game/Server/Protocol/Handlers/ChatHandler.cpp @@ -580,7 +580,7 @@ void WorldSession::HandleMessagechatOpcode(WorldPacket & recv_data) void WorldSession::HandleEmoteOpcode(WorldPacket & recv_data) { - if (!GetPlayer()->isAlive()) + if (!GetPlayer()->isAlive() || GetPlayer()->hasUnitState(UNIT_STAT_DIED)) return; uint32 emote; @@ -656,8 +656,11 @@ void WorldSession::HandleTextEmoteOpcode(WorldPacket & recv_data) case EMOTE_ONESHOT_NONE: break; default: - GetPlayer()->HandleEmoteCommand(emote_anim); - break; + // Only allow text-emotes for "dead" entities (feign death included) + if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) + break; + GetPlayer()->HandleEmoteCommand(emote_anim); + break; } Unit* unit = ObjectAccessor::GetUnit(*_player, guid); -- cgit v1.2.3