diff options
Diffstat (limited to 'src/game/Spell.cpp')
| -rw-r--r-- | src/game/Spell.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp index 115419245d0..99d568ee09a 100644 --- a/src/game/Spell.cpp +++ b/src/game/Spell.cpp @@ -48,6 +48,7 @@ #include "BattleGround.h" #include "Util.h" #include "TemporarySummon.h" +#include "Vehicle.h" #define SPELL_CHANNEL_UPDATE_INTERVAL (1 * IN_MILISECONDS) @@ -1728,6 +1729,15 @@ void Spell::SetTargetMap(uint32 i, uint32 cur) case TARGET_UNIT_RAID_CASTER: pushType = PUSH_CASTER_CENTER; break; + case TARGET_UNIT_VEHICLE: + if(Vehicle *vehicle = m_caster->m_Vehicle) + AddUnitTarget(vehicle, i); + break; + case TARGET_UNIT_PASSENGER: + if(m_caster->GetTypeId() == TYPEID_UNIT && ((Creature*)m_caster)->isVehicle()) + if(Unit *unit = ((Vehicle*)m_caster)->GetPassenger(1)) // maybe not right + AddUnitTarget(unit, i); + break; } break; } |
