diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 95f67a636..15af7bb09 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -16905,18 +16905,27 @@ void Unit::RestoreDisplayId() // first forced transform auras, then shapeshifts, then normal transform // transform aura was found if (handledAuraForced) + { handledAuraForced->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; + } } else if (handledAura) + { handledAura->HandleEffect(this, AURA_EFFECT_HANDLE_SEND_FOR_CLIENT, true); + return; + } + // no auras found - set modelid to default - else - SetDisplayId(GetNativeDisplayId()); + SetDisplayId(GetNativeDisplayId()); } void Unit::AddComboPoints(Unit* target, int8 count)