diff options
author | QAston <none@none> | 2010-08-21 21:00:06 +0200 |
---|---|---|
committer | QAston <none@none> | 2010-08-21 21:00:06 +0200 |
commit | 77bd968c63cc0381c92d4c9e5c8fa4000dadd9dd (patch) | |
tree | 4d13653396e3c8bc844fde6707ecc61caeece6cf /src | |
parent | c3343638cb99865e27c916ba3315aa62ad654e81 (diff) |
*Remove some unused containers from Spell class.
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/server/game/Entities/Unit/Unit.cpp | 2 | ||||
-rw-r--r-- | src/server/game/Spells/Spell.cpp | 18 | ||||
-rw-r--r-- | src/server/game/Spells/Spell.h | 7 | ||||
-rw-r--r-- | src/server/game/Spells/SpellEffects.cpp | 5 |
4 files changed, 5 insertions, 27 deletions
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp index 3c0fdf04f70..85b1836a329 100644 --- a/src/server/game/Entities/Unit/Unit.cpp +++ b/src/server/game/Entities/Unit/Unit.cpp @@ -3412,7 +3412,7 @@ void Unit::_UpdateAutoRepeatSpell() } // we want to shoot - Spell* spell = new Spell(this, m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo, true, 0); + Spell* spell = new Spell(this, m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_spellInfo, true); spell->prepare(&(m_currentSpells[CURRENT_AUTOREPEAT_SPELL]->m_targets)); // all went good, reset attack diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp index f3d0ad77710..9ccba54abae 100644 --- a/src/server/game/Spells/Spell.cpp +++ b/src/server/game/Spells/Spell.cpp @@ -421,14 +421,13 @@ void SpellCastTargets::write (ByteBuffer & data) data << m_strTarget; } -Spell::Spell(Unit* Caster, SpellEntry const *info, bool triggered, uint64 originalCasterGUID, Spell** triggeringContainer, bool skipCheck): +Spell::Spell(Unit* Caster, SpellEntry const *info, bool triggered, uint64 originalCasterGUID, bool skipCheck): m_spellInfo(sSpellMgr.GetSpellForDifficultyFromSpell(info, Caster)), m_caster(Caster), m_spellValue(new SpellValue(m_spellInfo)) { m_customAttr = sSpellMgr.GetSpellCustomAttr(m_spellInfo->Id); m_skipCheck = skipCheck; m_selfContainer = NULL; - m_triggeringContainer = triggeringContainer; m_referencedFromCurrentSpell = false; m_executedCurrently = false; m_needComboPoints = NeedsComboPoints(m_spellInfo); @@ -493,7 +492,6 @@ m_caster(Caster), m_spellValue(new SpellValue(m_spellInfo)) m_spellState = SPELL_STATE_NULL; - m_TriggerSpells.clear(); m_IsTriggeredSpell = triggered; m_CastItem = NULL; @@ -3752,11 +3750,6 @@ void Spell::finish(bool ok) m_caster->ToPlayer()->SetSpellModTakingSpell(this, true); } - // call triggered spell only at successful cast (after clear combo points -> for add some if need) - // I assume what he means is that some triggered spells may add combo points - if (!m_TriggerSpells.empty()) - TriggerSpell(); - // Take mods after trigger spell (needed for 14177 to affect 48664) // mods are taken only on succesfull cast and independantly from targets of the spell if (m_caster->GetTypeId() == TYPEID_PLAYER) @@ -4703,15 +4696,6 @@ void Spell::HandleEffects(Unit *pUnitTarget,Item *pItemTarget,GameObject *pGOTar } } -void Spell::TriggerSpell() -{ - for (TriggerSpells::iterator si=m_TriggerSpells.begin(); si != m_TriggerSpells.end(); ++si) - { - Spell* spell = new Spell(m_caster, (*si), true, m_originalCasterGUID, m_selfContainer, true); - spell->prepare(&m_targets); // use original spell original targets - } -} - SpellCastResult Spell::CheckCast(bool strict) { // check cooldowns to prevent cheating diff --git a/src/server/game/Spells/Spell.h b/src/server/game/Spells/Spell.h index d53ec85ce77..56d788d0104 100644 --- a/src/server/game/Spells/Spell.h +++ b/src/server/game/Spells/Spell.h @@ -415,7 +415,7 @@ class Spell typedef std::set<Aura *> UsedSpellMods; - Spell(Unit* Caster, SpellEntry const *info, bool triggered, uint64 originalCasterGUID = 0, Spell** triggeringContainer = NULL, bool skipCheck = false); + Spell(Unit* Caster, SpellEntry const *info, bool triggered, uint64 originalCasterGUID = 0, bool skipCheck = false); ~Spell(); void prepare(SpellCastTargets const* targets, AuraEffect const * triggeredByAura = NULL); @@ -429,7 +429,6 @@ class Spell void TakeRunePower(); void TakeReagents(); void TakeCastItem(); - void TriggerSpell(); SpellCastResult CheckCast(bool strict); SpellCastResult CheckPetCast(Unit* target); @@ -531,8 +530,6 @@ class Spell bool CheckTargetCreatureType(Unit* target) const; - void AddTriggeredSpell(SpellEntry const* spell) { m_TriggerSpells.push_back(spell); } - void CleanupTargetList(); void SetSpellValue(SpellValueMod mod, int32 value); @@ -688,8 +685,6 @@ class Spell // ------------------------------------------- //List For Triggered Spells - typedef std::vector<SpellEntry const*> TriggerSpells; - TriggerSpells m_TriggerSpells; typedef std::vector< std::pair<SpellEntry const*, int32> > ChanceTriggerSpells; ChanceTriggerSpells m_ChanceTriggerSpells; diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp index 46e01b38958..bb634d62442 100644 --- a/src/server/game/Spells/SpellEffects.cpp +++ b/src/server/game/Spells/SpellEffects.cpp @@ -1773,7 +1773,7 @@ void Spell::EffectDummy(uint32 i) } targets.setUnitTarget(unitTarget); - Spell* spell = new Spell(m_caster, spellInfo, triggered, m_originalCasterGUID, NULL, true); + Spell* spell = new Spell(m_caster, spellInfo, triggered, m_originalCasterGUID, true); if (bp) spell->m_currentBasePoints[0] = SpellMgr::CalculateSpellEffectBaseAmount(bp, spellInfo, 0); spell->prepare(&targets); } @@ -1957,8 +1957,7 @@ void Spell::EffectTriggerSpell(uint32 effIndex) if (unitTarget->ToPlayer()->HasSpellCooldown(spellId)) unitTarget->ToPlayer()->RemoveSpellCooldown(spellId); - // Push stealth to list because it must be handled after combat remove - m_TriggerSpells.push_back(spellInfo); + triggered_spell_id = spellId; return; } // Demonic Empowerment -- succubus |