aboutsummaryrefslogtreecommitdiff
path: root/src/server/game
diff options
context:
space:
mode:
Diffstat (limited to 'src/server/game')
-rw-r--r--src/server/game/Spells/Auras/SpellAuraEffects.cpp34
1 files changed, 17 insertions, 17 deletions
diff --git a/src/server/game/Spells/Auras/SpellAuraEffects.cpp b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
index 186cdb8c552..18128660436 100644
--- a/src/server/game/Spells/Auras/SpellAuraEffects.cpp
+++ b/src/server/game/Spells/Auras/SpellAuraEffects.cpp
@@ -2774,6 +2774,8 @@ void AuraEffect::HandleAuraMounted(AuraApplication const* aurApp, uint8 mode, bo
if (apply)
{
uint32 creatureEntry = GetMiscValue();
+ uint32 displayId = 0;
+ uint32 vehicleId = 0;
// Festive Holiday Mount
if (target->HasAura(62061))
@@ -2784,30 +2786,28 @@ void AuraEffect::HandleAuraMounted(AuraApplication const* aurApp, uint8 mode, bo
creatureEntry = 15665;
}
- CreatureTemplate const* ci = sObjectMgr->GetCreatureTemplate(creatureEntry);
- if (!ci)
+ if (CreatureTemplate const* ci = sObjectMgr->GetCreatureTemplate(creatureEntry))
{
- sLog->outError(LOG_FILTER_SQL, "AuraMounted: `creature_template`='%u' not found in database (only need its modelid)", GetMiscValue());
- return;
- }
+ uint32 team = 0;
+ if (target->GetTypeId() == TYPEID_PLAYER)
+ team = target->ToPlayer()->GetTeam();
- uint32 team = 0;
- if (target->GetTypeId() == TYPEID_PLAYER)
- team = target->ToPlayer()->GetTeam();
+ displayId = ObjectMgr::ChooseDisplayId(team, ci);
+ sObjectMgr->GetCreatureModelRandomGender(&displayId);
- uint32 displayID = ObjectMgr::ChooseDisplayId(team, ci);
- sObjectMgr->GetCreatureModelRandomGender(&displayID);
+ vehicleId = ci->VehicleId;
- //some spell has one aura of mount and one of vehicle
- for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
- if (GetSpellInfo()->Effects[i].Effect == SPELL_EFFECT_SUMMON
- && GetSpellInfo()->Effects[i].MiscValue == GetMiscValue())
- displayID = 0;
+ //some spell has one aura of mount and one of vehicle
+ for (uint32 i = 0; i < MAX_SPELL_EFFECTS; ++i)
+ if (GetSpellInfo()->Effects[i].Effect == SPELL_EFFECT_SUMMON
+ && GetSpellInfo()->Effects[i].MiscValue == GetMiscValue())
+ displayId = 0;
+ }
- target->Mount(displayID, ci->VehicleId, GetMiscValue());
+ target->Mount(displayId, vehicleId, creatureEntry);
// cast speed aura
- if (MountCapabilityEntry const* mountCapability = target->GetMountCapability(uint32(GetMiscValueB())))
+ if (MountCapabilityEntry const* mountCapability = sMountCapabilityStore.LookupEntry(GetAmount()))
target->CastSpell(target, mountCapability->SpeedModSpell, true);
}
else