aboutsummaryrefslogtreecommitdiff
path: root/src/game/Spell.cpp
diff options
context:
space:
mode:
authorQAston <none@none>2010-01-25 12:40:03 +0100
committerQAston <none@none>2010-01-25 12:40:03 +0100
commit3f6999f7442ca1ccf4388b14b71c92898f2e8a17 (patch)
tree2a1dab392045d4489025e483d784400d0b140759 /src/game/Spell.cpp
parent83c2b6a4d0e15999aa8bd6acbe36786a3d1b782b (diff)
*Some cleanup in SharedDefines
*Implement spell target modes 96-103, 91, 92 --HG-- branch : trunk
Diffstat (limited to 'src/game/Spell.cpp')
-rw-r--r--src/game/Spell.cpp14
1 files changed, 11 insertions, 3 deletions
diff --git a/src/game/Spell.cpp b/src/game/Spell.cpp
index 1cc530f5ada..3e7b2519224 100644
--- a/src/game/Spell.cpp
+++ b/src/game/Spell.cpp
@@ -1864,9 +1864,16 @@ void Spell::SelectEffectTargets(uint32 i, uint32 cur)
if(Unit *vehicle = m_caster->GetVehicleBase())
AddUnitTarget(vehicle, i);
break;
- case TARGET_UNIT_PASSENGER:
+ case TARGET_UNIT_PASSENGER_0:
+ case TARGET_UNIT_PASSENGER_1:
+ case TARGET_UNIT_PASSENGER_2:
+ case TARGET_UNIT_PASSENGER_3:
+ case TARGET_UNIT_PASSENGER_4:
+ case TARGET_UNIT_PASSENGER_5:
+ case TARGET_UNIT_PASSENGER_6:
+ case TARGET_UNIT_PASSENGER_7:
if(m_caster->GetTypeId() == TYPEID_UNIT && ((Creature*)m_caster)->IsVehicle())
- if(Unit *unit = m_caster->GetVehicleKit()->GetPassenger(1)) // maybe not right
+ if(Unit *unit = m_caster->GetVehicleKit()->GetPassenger(cur - TARGET_UNIT_PASSENGER_0))
AddUnitTarget(unit, i);
break;
}
@@ -1904,6 +1911,7 @@ void Spell::SelectEffectTargets(uint32 i, uint32 cur)
case TARGET_UNIT_TARGET_RAID:
case TARGET_UNIT_TARGET_PARTY:
case TARGET_UNIT_MINIPET:
+ case TARGET_UNIT_UNK_92:
AddUnitTarget(target, i);
break;
case TARGET_UNIT_PARTY_TARGET:
@@ -2090,7 +2098,7 @@ void Spell::SelectEffectTargets(uint32 i, uint32 cur)
float dist;
dist = GetSpellRadiusForFriend(sSpellRadiusStore.LookupEntry(m_spellInfo->EffectRadiusIndex[i]));
- if (cur == TARGET_DEST_DEST_RANDOM)
+ if (cur == TARGET_DEST_DEST_RANDOM || cur == TARGET_DEST_DEST_RANDOM_DIR_DIST)
dist *= rand_norm();
// must has dst, no need to set flag