mirror of
https://github.com/mangosfour/server.git
synced 2025-12-12 19:37:03 +00:00
[8019] Prevent npc spell click when player or target in combat.
This commit is contained in:
parent
5350dbafd9
commit
2061939428
2 changed files with 6 additions and 4 deletions
|
|
@ -518,15 +518,17 @@ void WorldSession::HandleSpellClick( WorldPacket & recv_data )
|
|||
uint64 guid;
|
||||
recv_data >> guid;
|
||||
|
||||
Creature *unit = ObjectAccessor::GetCreatureOrPetOrVehicle(*_player, guid);
|
||||
if (_player->isInCombat()) // client prevent click and set different icon at combat state
|
||||
return;
|
||||
|
||||
if(!unit)
|
||||
Creature *unit = ObjectAccessor::GetCreatureOrPetOrVehicle(*_player, guid);
|
||||
if (!unit || unit->isInCombat()) // client prevent click and set different icon at combat state
|
||||
return;
|
||||
|
||||
SpellClickInfoMapBounds clickPair = objmgr.GetSpellClickInfoMapBounds(unit->GetEntry());
|
||||
for(SpellClickInfoMap::const_iterator itr = clickPair.first; itr != clickPair.second; ++itr)
|
||||
{
|
||||
if(itr->second.IsFitToRequirements(_player))
|
||||
if (itr->second.IsFitToRequirements(_player))
|
||||
{
|
||||
Unit *caster = (itr->second.castFlags & 0x1) ? (Unit*)_player : (Unit*)unit;
|
||||
Unit *target = (itr->second.castFlags & 0x2) ? (Unit*)_player : (Unit*)unit;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue