diff --git a/src/game/ChatHandler.cpp b/src/game/ChatHandler.cpp index 45e1104ea..d2de87fdc 100644 --- a/src/game/ChatHandler.cpp +++ b/src/game/ChatHandler.cpp @@ -494,7 +494,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; @@ -567,8 +567,14 @@ void WorldSession::HandleTextEmoteOpcode( WorldPacket & recv_data ) case EMOTE_ONESHOT_NONE: break; default: + { + // in feign death state allowed only text emotes. + if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) + break; + GetPlayer()->HandleEmoteCommand(emote_id); break; + } } Unit* unit = ObjectAccessor::GetUnit(*_player, guid); diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index 8b5e91d4b..ba8cabcf8 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "10517" + #define REVISION_NR "10518" #endif // __REVISION_NR_H__