Core/Spells: Remove OriginalVictim parameter from Unit::CastSpell(x,y,z) - setting unit target was enough for all spells which used it, there's never a need to cast with both unit and dest target on retail (in such cases unit target + DEST_TARGET target types are used).

This commit is contained in:
QAston
2011-08-16 16:53:29 +02:00
parent 73bbc3aca8
commit d4b90d1f86
5 changed files with 5 additions and 9 deletions
+1 -3
View File
@@ -978,7 +978,7 @@ void Unit::CastCustomSpell(uint32 spellId, CustomSpellValues const& value, Unit*
} }
// used for scripting // used for scripting
void Unit::CastSpell(float x, float y, float z, uint32 spellId, bool triggered, Item* castItem, AuraEffect const* triggeredByAura, uint64 originalCaster, Unit* OriginalVictim) void Unit::CastSpell(float x, float y, float z, uint32 spellId, bool triggered, Item* castItem, AuraEffect const* triggeredByAura, uint64 originalCaster)
{ {
SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(spellId); SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(spellId);
@@ -998,8 +998,6 @@ void Unit::CastSpell(float x, float y, float z, uint32 spellId, bool triggered,
SpellCastTargets targets; SpellCastTargets targets;
targets.SetDst(x, y, z, GetOrientation()); targets.SetDst(x, y, z, GetOrientation());
if (OriginalVictim)
targets.SetUnitTarget(OriginalVictim);
spell->m_CastItem = castItem; spell->m_CastItem = castItem;
spell->prepare(&targets, triggeredByAura); spell->prepare(&targets, triggeredByAura);
} }
+1 -1
View File
@@ -1563,7 +1563,7 @@ class Unit : public WorldObject
void CastSpell(Unit* victim, uint32 spellId, TriggerCastFlags triggerFlags = TRIGGERED_NONE, Item* castItem = NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0); void CastSpell(Unit* victim, uint32 spellId, TriggerCastFlags triggerFlags = TRIGGERED_NONE, Item* castItem = NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0);
void CastSpell(Unit* victim, SpellInfo const *spellInfo, bool triggered, Item *castItem= NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0); void CastSpell(Unit* victim, SpellInfo const *spellInfo, bool triggered, Item *castItem= NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0);
void CastSpell(Unit* victim, SpellInfo const *spellInfo, TriggerCastFlags triggerFlags, Item *castItem= NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0); void CastSpell(Unit* victim, SpellInfo const *spellInfo, TriggerCastFlags triggerFlags, Item *castItem= NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0);
void CastSpell(float x, float y, float z, uint32 spellId, bool triggered, Item *castItem = NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0, Unit* originalVictim = 0); void CastSpell(float x, float y, float z, uint32 spellId, bool triggered, Item *castItem = NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0);
void CastCustomSpell(Unit* Victim, uint32 spellId, int32 const* bp0, int32 const* bp1, int32 const* bp2, bool triggered, Item *castItem= NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0); void CastCustomSpell(Unit* Victim, uint32 spellId, int32 const* bp0, int32 const* bp1, int32 const* bp2, bool triggered, Item *castItem= NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0);
void CastCustomSpell(uint32 spellId, SpellValueMod mod, int32 value, Unit* Victim = NULL, bool triggered = true, Item *castItem = NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0); void CastCustomSpell(uint32 spellId, SpellValueMod mod, int32 value, Unit* Victim = NULL, bool triggered = true, Item *castItem = NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0);
void CastCustomSpell(uint32 spellId, CustomSpellValues const &value, Unit* Victim = NULL, bool triggered = true, Item *castItem = NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0); void CastCustomSpell(uint32 spellId, CustomSpellValues const &value, Unit* Victim = NULL, bool triggered = true, Item *castItem = NULL, AuraEffect const* triggeredByAura = NULL, uint64 originalCaster = 0);
@@ -1006,7 +1006,7 @@ class spell_putricide_ooze_summon : public SpellScriptLoader
z = GetTarget()->GetMap()->GetHeight(x, y, z, true, 25.0f); z = GetTarget()->GetMap()->GetHeight(x, y, z, true, 25.0f);
x += 10.0f * cosf(caster->GetOrientation()); x += 10.0f * cosf(caster->GetOrientation());
y += 10.0f * sinf(caster->GetOrientation()); y += 10.0f * sinf(caster->GetOrientation());
caster->CastSpell(x, y, z, triggerSpellId, true, NULL, NULL, GetCasterGUID(), caster); caster->CastSpell(x, y, z, triggerSpellId, true, NULL, NULL, GetCasterGUID());
} }
} }
@@ -664,12 +664,10 @@ class spell_rotface_unstable_ooze_explosion : public SpellScriptLoader
uint32 triggered_spell_id = GetSpellInfo()->Effects[effIndex].TriggerSpell; uint32 triggered_spell_id = GetSpellInfo()->Effects[effIndex].TriggerSpell;
float x, y, z;
GetTargetUnit()->GetPosition(x, y, z);
// let Rotface handle the cast - caster dies before this executes // let Rotface handle the cast - caster dies before this executes
if (InstanceScript* script = GetTargetUnit()->GetInstanceScript()) if (InstanceScript* script = GetTargetUnit()->GetInstanceScript())
if (Creature* rotface = script->instance->GetCreature(script->GetData64(DATA_ROTFACE))) if (Creature* rotface = script->instance->GetCreature(script->GetData64(DATA_ROTFACE)))
rotface->CastSpell(x, y, z, triggered_spell_id, true, NULL, NULL, GetCaster()->GetGUID(), GetTargetUnit()); rotface->CastSpell(GetTargetUnit(), triggered_spell_id, true, NULL, NULL, GetCaster()->GetGUID());
} }
void Register() void Register()
@@ -138,7 +138,7 @@ class boss_void_reaver : public CreatureScript
target = me->getVictim(); target = me->getVictim();
if (target) if (target)
me->CastSpell(target->GetPositionX(), target->GetPositionY(), target->GetPositionZ(), SPELL_ARCANE_ORB, false, NULL, NULL, 0, target); me->CastSpell(target, SPELL_ARCANE_ORB, false, NULL, NULL, 0);
ArcaneOrb_Timer = 3000; ArcaneOrb_Timer = 3000;
} }
else else