aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorShauren <shauren.trinity@gmail.com>2016-07-16 11:15:23 +0200
committerShauren <shauren.trinity@gmail.com>2016-07-16 11:15:23 +0200
commit9509aac38b29cf47ee2ea99e41e73b82b22cff7a (patch)
tree0bdbc0cdd2e12cfe55b03d95da10057a02d9551c /src
parent236547435ab62902fbdfbcae297695b5ccdeba26 (diff)
Core/Commands: Allow .cooldown command to work on player pets
Diffstat (limited to 'src')
-rw-r--r--src/server/scripts/Commands/cs_misc.cpp16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp
index d22ebca8336..2db21420f16 100644
--- a/src/server/scripts/Commands/cs_misc.cpp
+++ b/src/server/scripts/Commands/cs_misc.cpp
@@ -703,7 +703,7 @@ public:
static bool HandleCooldownCommand(ChatHandler* handler, char const* args)
{
- Player* target = handler->getSelectedPlayerOrSelf();
+ Unit* target = handler->getSelectedUnit();
if (!target)
{
handler->SendSysMessage(LANG_PLAYER_NOT_FOUND);
@@ -711,7 +711,15 @@ public:
return false;
}
- std::string nameLink = handler->GetNameLink(target);
+ Player* owner = target->GetCharmerOrOwnerPlayerOrPlayerItself();
+ if (!owner)
+ {
+ handler->SendSysMessage(LANG_PLAYER_NOT_FOUND);
+ handler->SetSentErrorMessage(true);
+ return false;
+ }
+
+ std::string nameLink = handler->GetNameLink(owner);
if (!*args)
{
@@ -728,13 +736,13 @@ public:
SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(spellIid);
if (!spellInfo)
{
- handler->PSendSysMessage(LANG_UNKNOWN_SPELL, target == handler->GetSession()->GetPlayer() ? handler->GetTrinityString(LANG_YOU) : nameLink.c_str());
+ handler->PSendSysMessage(LANG_UNKNOWN_SPELL, owner == handler->GetSession()->GetPlayer() ? handler->GetTrinityString(LANG_YOU) : nameLink.c_str());
handler->SetSentErrorMessage(true);
return false;
}
target->GetSpellHistory()->ResetCooldown(spellIid, true);
- handler->PSendSysMessage(LANG_REMOVE_COOLDOWN, spellIid, target == handler->GetSession()->GetPlayer() ? handler->GetTrinityString(LANG_YOU) : nameLink.c_str());
+ handler->PSendSysMessage(LANG_REMOVE_COOLDOWN, spellIid, owner == handler->GetSession()->GetPlayer() ? handler->GetTrinityString(LANG_YOU) : nameLink.c_str());
}
return true;
}