123456789101112131415161718192021222324 |
- class CCTTree : CCTBase
- {
- protected float m_MaximalActionDistanceSq;
-
- void CCTTree ( float maximal_target_distance )
- {
- m_MaximalActionDistanceSq = maximal_target_distance * maximal_target_distance;
- }
-
- override bool Can( PlayerBase player, ActionTarget target )
- {
- if( !target )
- return false;
- Object targetObject = target.GetObject();
- if ( !player || !targetObject || targetObject.IsDamageDestroyed() )
- return false;
-
- if ( GetGame().IsServer() && GetGame().IsMultiplayer() )
- return true;
- return ( vector.DistanceSq(target.GetCursorHitPos(), player.GetPosition()) <= m_MaximalActionDistanceSq );
- }
- };
|