diff options
| author | QAston <none@none> | 2009-06-29 20:50:38 +0200 |
|---|---|---|
| committer | QAston <none@none> | 2009-06-29 20:50:38 +0200 |
| commit | 8609527066dfa0a3999e88851645473f2df772ea (patch) | |
| tree | 548d245f3f34fa0329033703811ea3fef90778f3 /src/game/PetHandler.cpp | |
| parent | 40679890962457c6c85adad6b93f5f6bda73a635 (diff) | |
*Fix the issue of water elemental GCD preventing freeze to be casted - by Larva
*Correct a typo in prev commit.
--HG--
branch : trunk
Diffstat (limited to 'src/game/PetHandler.cpp')
| -rw-r--r-- | src/game/PetHandler.cpp | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/src/game/PetHandler.cpp b/src/game/PetHandler.cpp index 3dc7c6d4ff1..67e6576c25b 100644 --- a/src/game/PetHandler.cpp +++ b/src/game/PetHandler.cpp @@ -615,12 +615,6 @@ void WorldSession::HandlePetCastSpellOpcode( WorldPacket& recvPacket ) return; } - if (caster->GetTypeId() == TYPEID_UNIT && ((Creature*)caster)->GetGlobalCooldown() > 0) - { - caster->SendPetCastFail(spellid, SPELL_FAILED_NOT_READY); - return; - } - SpellEntry const *spellInfo = sSpellStore.LookupEntry(spellid); if(!spellInfo) { @@ -628,6 +622,13 @@ void WorldSession::HandlePetCastSpellOpcode( WorldPacket& recvPacket ) return; } + if (spellInfo->StartRecoveryCategory > 0) //Check if spell is affected by GCD + if (caster->GetTypeId() == TYPEID_UNIT && ((Creature*)caster)->GetGlobalCooldown() > 0) + { + caster->SendPetCastFail(spellid, SPELL_FAILED_NOT_READY); + return; + } + // do not cast not learned spells if(!caster->HasSpell(spellid) || IsPassiveSpell(spellid)) return; |
