mirror of
https://github.com/TrinityCore/TrinityCore.git
synced 2026-01-19 08:55:32 +01:00
*Implement SPELL_EFFECT_REMOVE_AURA(164)
*Rename SPELL_EFFECT_KNOCK_BACK_2 to SPELL_EFFECT_KNOCK_BACK_DEST --HG-- branch : trunk
This commit is contained in:
@@ -47,6 +47,7 @@ Vehicle::Vehicle(Unit *unit, VehicleEntry const *vehInfo) : me(unit), m_vehicleI
|
||||
case 160:
|
||||
me->SetControlled(true, UNIT_STAT_ROOT);
|
||||
me->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_KNOCK_BACK, true);
|
||||
me->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_KNOCK_BACK_DEST, true);
|
||||
case 158:
|
||||
me->ApplySpellImmune(0, IMMUNITY_EFFECT, SPELL_EFFECT_HEAL, true);
|
||||
me->ApplySpellImmune(0, IMMUNITY_STATE, SPELL_AURA_MOD_FEAR, true);
|
||||
|
||||
@@ -745,7 +745,7 @@ enum SpellEffects
|
||||
SPELL_EFFECT_141 = 141,
|
||||
SPELL_EFFECT_TRIGGER_SPELL_WITH_VALUE = 142,
|
||||
SPELL_EFFECT_APPLY_AREA_AURA_OWNER = 143,
|
||||
SPELL_EFFECT_KNOCK_BACK_2 = 144,
|
||||
SPELL_EFFECT_KNOCK_BACK_DEST = 144,
|
||||
SPELL_EFFECT_145 = 145,
|
||||
SPELL_EFFECT_ACTIVATE_RUNE = 146,
|
||||
SPELL_EFFECT_QUEST_FAIL = 147,
|
||||
@@ -765,7 +765,7 @@ enum SpellEffects
|
||||
SPELL_EFFECT_TALENT_SPEC_COUNT = 161,
|
||||
SPELL_EFFECT_TALENT_SPEC_SELECT = 162,
|
||||
SPELL_EFFECT_163 = 163,
|
||||
SPELL_EFFECT_164 = 164,
|
||||
SPELL_EFFECT_REMOVE_AURA = 164,
|
||||
TOTAL_SPELL_EFFECTS = 165
|
||||
};
|
||||
|
||||
|
||||
@@ -209,7 +209,7 @@ pEffect SpellEffects[TOTAL_SPELL_EFFECTS]=
|
||||
&Spell::EffectForceCastWithValue, //141 SPELL_EFFECT_FORCE_CAST_WITH_VALUE
|
||||
&Spell::EffectTriggerSpellWithValue, //142 SPELL_EFFECT_TRIGGER_SPELL_WITH_VALUE
|
||||
&Spell::EffectApplyAreaAura, //143 SPELL_EFFECT_APPLY_AREA_AURA_OWNER
|
||||
&Spell::EffectKnockBack, //144 SPELL_EFFECT_KNOCK_BACK_2 Spectral Blast
|
||||
&Spell::EffectKnockBack, //144 SPELL_EFFECT_KNOCK_BACK_DEST
|
||||
&Spell::EffectPlayerPull, //145 SPELL_EFFECT_145 Black Hole Effect
|
||||
&Spell::EffectActivateRune, //146 SPELL_EFFECT_ACTIVATE_RUNE
|
||||
&Spell::EffectQuestFail, //147 SPELL_EFFECT_QUEST_FAIL quest fail
|
||||
@@ -229,7 +229,7 @@ pEffect SpellEffects[TOTAL_SPELL_EFFECTS]=
|
||||
&Spell::EffectSpecCount, //161 SPELL_EFFECT_TALENT_SPEC_COUNT second talent spec (learn/revert)
|
||||
&Spell::EffectActivateSpec, //162 SPELL_EFFECT_TALENT_SPEC_SELECT activate primary/secondary spec
|
||||
&Spell::EffectNULL, //163
|
||||
&Spell::EffectNULL, //164 cancel's some aura...
|
||||
&Spell::EffectRemoveAura, //164 SPELL_EFFECT_REMOVE_AURA
|
||||
};
|
||||
|
||||
void Spell::EffectNULL(uint32 /*i*/)
|
||||
@@ -7211,10 +7211,17 @@ void Spell::EffectKnockBack(uint32 i)
|
||||
return;
|
||||
|
||||
float x, y;
|
||||
if (m_targets.HasDst() && !m_targets.HasTraj())
|
||||
m_targets.m_dstPos.GetPosition(x, y);
|
||||
else
|
||||
if (m_spellInfo->Effect[i] == SPELL_EFFECT_KNOCK_BACK_DEST)
|
||||
{
|
||||
if (m_targets.HasDst())
|
||||
m_targets.m_dstPos.GetPosition(x, y);
|
||||
else
|
||||
return;
|
||||
}
|
||||
else //if (m_spellInfo->Effect[i] == SPELL_EFFECT_KNOCK_BACK)
|
||||
{
|
||||
m_caster->GetPosition(x, y);
|
||||
}
|
||||
|
||||
unitTarget->KnockbackFrom(x, y, speedxy, speedz);
|
||||
}
|
||||
@@ -8035,6 +8042,14 @@ void Spell::EffectPlayerNotification(uint32 /*eff_idx*/)
|
||||
}
|
||||
}
|
||||
|
||||
void Spell::EffectRemoveAura(uint32 i)
|
||||
{
|
||||
if (!unitTarget)
|
||||
return;
|
||||
// there may be need of specifying casterguid of removed auras
|
||||
unitTarget->RemoveAurasDueToSpell(m_spellInfo->EffectTriggerSpell[i]);
|
||||
}
|
||||
|
||||
void Spell::EffectCastButtons(uint32 i)
|
||||
{
|
||||
if (!unitTarget || m_caster->GetTypeId() != TYPEID_PLAYER)
|
||||
|
||||
@@ -388,6 +388,7 @@ class Spell
|
||||
void EffectSpecCount(uint32 i);
|
||||
void EffectActivateSpec(uint32 i);
|
||||
void EffectPlayerNotification(uint32 i);
|
||||
void EffectRemoveAura(uint32 i);
|
||||
void EffectCastButtons(uint32 i);
|
||||
void EffectRechargeManaGem(uint32 i);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user