aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGildor <gildor55@gmail.com>2021-11-20 20:49:30 +0100
committerGitHub <noreply@github.com>2021-11-20 21:49:30 +0200
commita5b8e167dda0697f88b16ce0892912afda4c3e4b (patch)
treeda8726ff84e0b42da157444d389edc8dfafafa83 /src
parent04d54a000fd2629155dfb43db79e5e2023bc84ac (diff)
Core/Auras: Set proper displayId for mounts that changes depending on your Riding skill and location with more than one modelId (#27207)
Closes #27199
Diffstat (limited to 'src')
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index 470964e0c35..3dbaf996478 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -2610,7 +2610,10 @@ void AuraEffect::HandleAuraMounted(AuraApplication const* aurApp, uint8 mode, bo
if (CreatureTemplate const* creatureInfo = sObjectMgr->GetCreatureTemplate(creatureEntry))
{
- displayId = ObjectMgr::ChooseDisplayId(creatureInfo);
+ if (GetMiscValueB() > 0) // Choose proper modelid
+ displayId = GetMiscValueB() == 2 && creatureInfo->Modelid2 > 0 ? creatureInfo->Modelid2 : creatureInfo->Modelid1;
+ else // Should we choose random modelid in this case?
+ displayId = ObjectMgr::ChooseDisplayId(creatureInfo);
sObjectMgr->GetCreatureModelRandomGender(&displayId);
vehicleId = creatureInfo->VehicleId;