diff options
-rw-r--r-- | src/server/game/Entities/Creature/Creature.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/server/game/Entities/Creature/Creature.cpp b/src/server/game/Entities/Creature/Creature.cpp index 5e7df4ab3c1..b1fa769ae99 100644 --- a/src/server/game/Entities/Creature/Creature.cpp +++ b/src/server/game/Entities/Creature/Creature.cpp @@ -1050,9 +1050,12 @@ bool Creature::Create(ObjectGuid::LowType guidlow, Map* map, uint32 entry, float CreatureModelInfo const* minfo = sObjectMgr->GetCreatureModelRandomGender(&display, cinfo); if (minfo && !IsTotem()) // Cancel load if no model defined or if totem { - SetDisplayId(display.CreatureDisplayID, display.DisplayScale); SetNativeDisplayId(display.CreatureDisplayID, display.DisplayScale); - SetGender(minfo->gender); + + Unit::AuraEffectList const& transformAuras = GetAuraEffectsByType(SPELL_AURA_TRANSFORM); + Unit::AuraEffectList const& shapeshiftAuras = GetAuraEffectsByType(SPELL_AURA_MOD_SHAPESHIFT); + if (transformAuras.empty() && shapeshiftAuras.empty()) + SetDisplayId(display.CreatureDisplayID, display.DisplayScale); } LastUsedScriptID = GetScriptId(); |