diff options
author | Machiavelli <machiavelli.trinity@gmail.com> | 2012-02-21 10:17:32 +0100 |
---|---|---|
committer | Machiavelli <machiavelli.trinity@gmail.com> | 2012-02-21 10:17:32 +0100 |
commit | 44195689b9da3cace087e5e3eb01c4fc8bafc85a (patch) | |
tree | 5682aeea505b77ac3dd7a9eb8cfd1d8edaea9a53 /src | |
parent | 4e8218025ed88fc5e47ddd9f9134ed4bdfb051e5 (diff) |
Core/Units: Use spellclick conditions in Player::canSeeSpellClickOn
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Entities/Player/Player.cpp | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp index 25076c0cfbf..fde4f4c6959 100755 --- a/src/server/game/Entities/Player/Player.cpp +++ b/src/server/game/Entities/Player/Player.cpp @@ -24152,10 +24152,17 @@ bool Player::canSeeSpellClickOn(Creature const* c) const return true; for (SpellClickInfoContainer::const_iterator itr = clickPair.first; itr != clickPair.second; ++itr) - if (itr->second.IsFitToRequirements(this, c)) - return true; + { + if (!itr->second.IsFitToRequirements(this, c)) + return false; - return false; + ConditionList conds = sConditionMgr->GetConditionsForSpellClickEvent(c->GetEntry(), itr->second.spellId); + ConditionSourceInfo info = ConditionSourceInfo(const_cast<Player*>(this), const_cast<Creature*>(c)); + if (!sConditionMgr->IsObjectMeetToConditions(info, conds)) + return false; + } + + return true; } void Player::BuildPlayerTalentsInfoData(WorldPacket* data) |