[7630] Implement MSG_BATTLEGROUND_PLAYER_POSITIONS sending for AB and AV battleground. Author: Triply

--HG--
branch : trunk
This commit is contained in:
megamage
2009-04-08 16:28:58 -05:00
parent 5f3947b62a
commit f48b123ebe
2 changed files with 56 additions and 31 deletions
+5 -2
View File
@@ -19648,14 +19648,17 @@ WorldObject* Player::GetViewpoint() const
bool Player::CanUseBattleGroundObject()
{
// TODO : some spells gives player ForceReaction to one faction (ReputationMgr::ApplyForceReaction)
// maybe gameobject code should handle that ForceReaction usage
// BUG: sometimes when player clicks on flag in AB - client won't send gameobject_use, only gameobject_report_use packet
return ( //InBattleGround() && // in battleground - not need, check in other cases
//!IsMounted() && - not correct, player is dismounted when he clicks on flag
//i'm not sure if these two are correct, because invisible players should get visible when they click on flag
//player cannot use object when he is invulnerable (immune)
!isTotalImmune() && // not totally immune
//i'm not sure if these two are correct, because invisible players should get visible when they click on flag
!HasStealthAura() && // not stealthed
!HasInvisibilityAura() && // not invisible
!HasAura(SPELL_RECENTLY_DROPPED_FLAG) && // can't pickup
//TODO player cannot use object when he is invulnerable (immune) - (ice block, divine shield, divine protection, divine intervention ...)
isAlive() // live player
);
}