From 7277ddd1140d388939ae135f135d5bf58871dacf Mon Sep 17 00:00:00 2001 From: megamage Date: Fri, 8 May 2009 18:49:07 -0500 Subject: [7797] Use DBC data for mount model selection in more cases. Author: VladimirMangos * Use alt.team mount data for take player team model id if DB not provide own team creature id in spell taxi call case. * Remove unddeded hacks for model ids from Spell::EffectSendTaxi * Provide spell target for SPELL_EFFECT_SEND_TAXI for spell with target mode 0 for this effect. --HG-- branch : trunk --- src/game/ObjectMgr.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'src/game/ObjectMgr.cpp') diff --git a/src/game/ObjectMgr.cpp b/src/game/ObjectMgr.cpp index 12fb26f0ad8..a448a73f1dc 100644 --- a/src/game/ObjectMgr.cpp +++ b/src/game/ObjectMgr.cpp @@ -4837,7 +4837,7 @@ void ObjectMgr::GetTaxiPath( uint32 source, uint32 destination, uint32 &path, ui path = dest_i->second.ID; } -uint16 ObjectMgr::GetTaxiMount( uint32 id, uint32 team ) +uint16 ObjectMgr::GetTaxiMount( uint32 id, uint32 team, bool allowed_alt_team /* = false */) { uint16 mount_entry = 0; uint16 mount_id = 0; @@ -4848,6 +4848,9 @@ uint16 ObjectMgr::GetTaxiMount( uint32 id, uint32 team ) if (team == ALLIANCE) { mount_entry = node->MountCreatureID[1]; + if(!mount_entry && allowed_alt_team) + mount_entry = node->MountCreatureID[0]; + CreatureInfo const *ci = GetCreatureTemplate(mount_entry); if(ci) mount_id = ci->Modelid_A1; @@ -4855,6 +4858,10 @@ uint16 ObjectMgr::GetTaxiMount( uint32 id, uint32 team ) if (team == HORDE) { mount_entry = node->MountCreatureID[0]; + + if(!mount_entry && allowed_alt_team) + mount_entry = node->MountCreatureID[1]; + CreatureInfo const *ci = GetCreatureTemplate(mount_entry); if(ci) mount_id = ci->Modelid_H1; -- cgit v1.2.3