aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xsrc/server/game/Entities/Player/Player.cpp13
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)