aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorthenecromancer <none@none>2010-01-13 10:03:09 +0100
committerthenecromancer <none@none>2010-01-13 10:03:09 +0100
commitac4bab545197f9fb393d7225d5c3d6597871978a (patch)
tree2f507b516b986f19add9b5cb3b7ed9e14b79b549 /src
parentd8d346ef1f32e9648c41bc3158b6d68259735b8a (diff)
Allow pet cast spells unaffected by global cooldown, while global cooldown is active
--HG-- branch : trunk
Diffstat (limited to 'src')
-rw-r--r--src/game/PetHandler.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/game/PetHandler.cpp b/src/game/PetHandler.cpp
index ee8c02dfb43..1ffe4bc1632 100644
--- a/src/game/PetHandler.cpp
+++ b/src/game/PetHandler.cpp
@@ -224,8 +224,6 @@ void WorldSession::HandlePetActionHelper(Unit *pet, uint64 guid1, uint16 spellid
case ACT_ENABLED: // 0xC1 spell
{
Unit* unit_target = NULL;
- if (((Creature*)pet)->GetGlobalCooldown() > 0)
- return;
if(guid2)
unit_target = ObjectAccessor::GetUnit(*_player,guid2);
@@ -238,6 +236,10 @@ void WorldSession::HandlePetActionHelper(Unit *pet, uint64 guid1, uint16 spellid
return;
}
+ if (spellInfo->StartRecoveryCategory > 0)
+ if (((Creature*)pet)->GetGlobalCooldown() > 0)
+ return;
+
for (uint32 i = 0; i < 3; ++i)
{
if(spellInfo->EffectImplicitTargetA[i] == TARGET_UNIT_AREA_ENEMY_SRC || spellInfo->EffectImplicitTargetA[i] == TARGET_UNIT_AREA_ENEMY_DST || spellInfo->EffectImplicitTargetA[i] == TARGET_DEST_DYNOBJ_ENEMY)