diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Handlers/ChatHandler.cpp | 3 | ||||
-rw-r--r-- | src/server/game/Handlers/MovementHandler.cpp | 4 |
2 files changed, 7 insertions, 0 deletions
diff --git a/src/server/game/Handlers/ChatHandler.cpp b/src/server/game/Handlers/ChatHandler.cpp index 50f5cefe9eb..c6e0d7e2fc8 100644 --- a/src/server/game/Handlers/ChatHandler.cpp +++ b/src/server/game/Handlers/ChatHandler.cpp @@ -649,6 +649,9 @@ void WorldSession::HandleTextEmoteOpcode(WorldPacket& recvData) case EMOTE_STATE_KNEEL: case EMOTE_ONESHOT_NONE: break; + case EMOTE_STATE_DANCE: + GetPlayer()->SetEmoteState(emote); + break; default: // Only allow text-emotes for "dead" entities (feign death included) if (GetPlayer()->HasUnitState(UNIT_STATE_DIED)) diff --git a/src/server/game/Handlers/MovementHandler.cpp b/src/server/game/Handlers/MovementHandler.cpp index 8064c73d622..8df75eb2e67 100644 --- a/src/server/game/Handlers/MovementHandler.cpp +++ b/src/server/game/Handlers/MovementHandler.cpp @@ -303,6 +303,10 @@ void WorldSession::HandleMovementOpcodes(WorldPacket& recvPacket) if (!mover->movespline->Finalized()) return; + // stop some emotes at player move + if (plrMover && (plrMover->GetEmoteState() != 0)) + plrMover->SetEmoteState(EMOTE_ONESHOT_NONE); + /* handle special cases */ if (movementInfo.HasMovementFlag(MOVEMENTFLAG_ONTRANSPORT)) { |