diff options
author | ariel- <ariel-@users.noreply.github.com> | 2017-03-17 12:35:10 -0300 |
---|---|---|
committer | ariel- <ariel-@users.noreply.github.com> | 2017-03-17 12:35:10 -0300 |
commit | 7a38eaa5a1fe23d8fedb2bfce518abb972b823f7 (patch) | |
tree | 618e7a59965fb98e961e4b9f29df044b352c534c /src | |
parent | 3d43a92fb3aa6de3109581b04ed3795eb14b5354 (diff) |
Core/Unit: properly reset displayIds when having a shapeshift aura active
Closes #19309
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 108396fdf68..78f4179086e 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -11463,16 +11463,22 @@ void Unit::RestoreDisplayId() // transform aura was found if (handledAura) + { handledAura->HandleEffect(this, AURA_EFFECT_HANDLE_SEND_FOR_CLIENT, true); + return; + } else if (!shapeshiftAura.empty()) // we've found shapeshift { // only one such aura possible at a time if (uint32 modelId = GetModelForForm(GetShapeshiftForm(), shapeshiftAura.front()->GetId())) + { SetDisplayId(modelId); + return; + } } + // no auras found - set modelid to default - else - SetDisplayId(GetNativeDisplayId()); + SetDisplayId(GetNativeDisplayId()); } void Unit::ClearComboPointHolders() |