diff options
| author | joschiwald <joschiwald@online.de> | 2012-11-24 02:45:48 +0100 |
|---|---|---|
| committer | joschiwald <joschiwald@online.de> | 2012-11-24 02:45:48 +0100 |
| commit | e83c5d1a0f830b18bf0fdbace21c6c55cbf6b3a7 (patch) | |
| tree | 51f32865b915c3317c28af9eebf229c619315843 /src/server/scripts | |
| parent | fc974d6fbef152faf2f3e025afe6303f6780c0ea (diff) | |
Core/Conditions: use proper SpellCastResult instead of Notification when CONDITION_SOURCE_TYPE_SPELL fails
Diffstat (limited to 'src/server/scripts')
| -rw-r--r-- | src/server/scripts/Commands/cs_misc.cpp | 22 |
1 files changed, 10 insertions, 12 deletions
diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp index 5e54778b14a..c701c4f350c 100644 --- a/src/server/scripts/Commands/cs_misc.cpp +++ b/src/server/scripts/Commands/cs_misc.cpp @@ -937,16 +937,9 @@ public: //No args required for players if (handler->GetSession() && AccountMgr::IsPlayerAccount(handler->GetSession()->GetSecurity())) { - Player* player = handler->GetSession()->GetPlayer(); - if (player->isInFlight() || player->isInCombat()) - { - handler->SendSysMessage(LANG_CANT_DO_NOW); - handler->SetSentErrorMessage(true); - return false; - } - - //7355: "Stuck" - player->CastSpell(player, 7355, false); + // 7355: "Stuck" + if (Player* player = handler->GetSession()->GetPlayer()) + player->CastSpell(player, 7355, false); return true; } @@ -967,8 +960,13 @@ public: if (player->isInFlight() || player->isInCombat()) { - handler->SendSysMessage(LANG_CANT_DO_NOW); - handler->SetSentErrorMessage(true); + SpellInfo const* spellInfo = sSpellMgr->GetSpellInfo(7355); + if (!spellInfo) + return false; + + if (Player* caster = handler->GetSession()->GetPlayer()) + Spell::SendCastResult(caster, spellInfo, 0, SPELL_FAILED_CANT_DO_THAT_RIGHT_NOW); + return false; } |
