DayZ Scripts
v1.21.156300 ยท Jun 20, 2023
 
Loading...
Searching...
No Matches
CCTSurface.c
Go to the documentation of this file.
2{
3 protected float m_MaximalActionDistanceSq;
4
5 void CCTSurface ( float maximal_target_distance = UAMaxDistances.DEFAULT )
6 {
7 m_MaximalActionDistanceSq = maximal_target_distance * maximal_target_distance;
8 }
9
10 override bool Can( PlayerBase player, ActionTarget target )
11 {
12 if( !target || (target && target.GetObject()) )
13 return false;
14
15 if ( GetGame().IsServer() && GetGame().IsMultiplayer() )
16 return true;
17
18 vector hit_pos = target.GetCursorHitPos();
19 if (hit_pos == vector.Zero)
20 return false;
21
22 return ( vector.DistanceSq(hit_pos, player.GetPosition()) <= m_MaximalActionDistanceSq );
23 }
24};
class ActionTargets ActionTarget
void CCTSurface(float maximal_target_distance=UAMaxDistances.DEFAULT)
Definition CCTSurface.c:5
protected float m_MaximalActionDistanceSq
Definition CCTSurface.c:3
override bool Can(PlayerBase player, ActionTarget target)
Definition CCTSurface.c:10
const float DEFAULT
static const vector Zero
Definition EnConvert.c:110
static proto native float DistanceSq(vector v1, vector v2)
Returns the square distance between tips of two 3D vectors.
proto native CGame GetGame()