diff options
author | megamage <none@none> | 2009-06-05 13:16:54 -0500 |
---|---|---|
committer | megamage <none@none> | 2009-06-05 13:16:54 -0500 |
commit | 95bde24500f04636efb4f67e23effb13f900945d (patch) | |
tree | 0bb457debf900de6584fcbdbb3338b6b3e216554 /src | |
parent | 5041839918bf108bc7e83bc843d06664918bb470 (diff) |
*Allow traps without a spell be triggered. This fixes the bug that Sapphiron cannot be summoned.
--HG--
branch : trunk
Diffstat (limited to 'src')
-rw-r--r-- | src/game/GameObject.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/src/game/GameObject.cpp b/src/game/GameObject.cpp index 7065a4d3513..c8021c8bb8b 100644 --- a/src/game/GameObject.cpp +++ b/src/game/GameObject.cpp @@ -303,9 +303,6 @@ void GameObject::Update(uint32 /*p_time*/) if(m_cooldownTime >= time(NULL)) return; - if(!goInfo->trap.spellId) - return; - bool IsBattleGroundTrap = false; //FIXME: this is activation radius (in different casting radius that must be selected from spell data) //TODO: move activated state code (cast itself) to GO_ACTIVATED, in this place only check activating and set state @@ -351,10 +348,12 @@ void GameObject::Update(uint32 /*p_time*/) if (ok) { + // some traps do not have spell but should be triggered + if(goInfo->trap.spellId) + CastSpell(ok, goInfo->trap.spellId); //Unit *caster = owner ? owner : ok; - - CastSpell(ok, goInfo->trap.spellId); //caster->CastSpell(ok, goInfo->trap.spellId, true, 0, 0, GetGUID()); + if(goInfo->trap.cooldown) m_cooldownTime = time(NULL) + goInfo->trap.cooldown; else |