aboutsummaryrefslogtreecommitdiff
path: root/src/game/Spell.h
diff options
context:
space:
mode:
authorQAston <none@none>2009-06-06 08:27:36 +0200
committerQAston <none@none>2009-06-06 08:27:36 +0200
commit39548d6822ce2a8cea49e4467f8329335aa0d85d (patch)
treeca1055ea31b1b8b994c693ab713626a3d00c405c /src/game/Spell.h
parent00582cf9d4bebbf812f2cccb14be8dce288c2f07 (diff)
*Update spellmod system
*Implement SPELL_ATTR_EX6_IGNORE_CASTER_AURAS *Fix some bugs with traps proc flags --HG-- branch : trunk
Diffstat (limited to 'src/game/Spell.h')
-rw-r--r--src/game/Spell.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/game/Spell.h b/src/game/Spell.h
index 7d9163f4a0b..5edb414e6ec 100644
--- a/src/game/Spell.h
+++ b/src/game/Spell.h
@@ -366,6 +366,8 @@ class Spell
void EffectTitanGrip(uint32 i);
void EffectEnchantItemPrismatic(uint32 i);
+ typedef std::set<Aura *> UsedSpellMods;
+
Spell( Unit* Caster, SpellEntry const *info, bool triggered, uint64 originalCasterGUID = 0, Spell** triggeringContainer = NULL, bool skipCheck = false );
~Spell();
@@ -445,6 +447,8 @@ class Spell
uint32 m_preCastSpell;
SpellCastTargets m_targets;
+ UsedSpellMods m_appliedMods;
+
int32 GetCastTime() const { return m_casttime; }
bool IsAutoRepeat() const { return m_autoRepeat; }
void SetAutoRepeat(bool rep) { m_autoRepeat = rep; }
@@ -453,6 +457,7 @@ class Spell
{
return m_spellInfo->Attributes & SPELL_ATTR_ON_NEXT_SWING;
}
+ bool IsTriggered() const {return m_IsTriggeredSpell;};
bool IsChannelActive() const { return m_caster->GetUInt32Value(UNIT_CHANNEL_SPELL) != 0; }
bool IsMeleeAttackResetSpell() const { return !m_IsTriggeredSpell && (m_spellInfo->InterruptFlags & SPELL_INTERRUPT_FLAG_AUTOATTACK); }
bool IsRangedAttackResetSpell() const { return !m_IsTriggeredSpell && /*IsRangedSpell() &&*/ !(m_spellInfo->AttributesEx2 & SPELL_ATTR_EX2_NOT_RESET_AUTOSHOT); }