DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
CCTCursorNoObject.c
См. документацию.
2{
3 protected float m_MaximalActionDistanceSq;
4
5 void CCTCursorNoObject ( float maximal_target_distance )
6 {
7 m_MaximalActionDistanceSq = maximal_target_distance * maximal_target_distance;
8 }
9
10 override bool Can( PlayerBase player, ActionTarget target )
11 {
12 if ( !target )
13 return false;
14
15 if ( GetGame().IsServer() && GetGame().IsMultiplayer() )
16 return true;
17
18 vector playerHeadPos;
19 MiscGameplayFunctions.GetHeadBonePos(player, playerHeadPos);
20
21 float distanceRoot = vector.DistanceSq(target.GetCursorHitPos(), player.GetPosition());
22 float distanceHead = vector.DistanceSq(target.GetCursorHitPos(), playerHeadPos);
23
24 return ( distanceRoot <= m_MaximalActionDistanceSq || distanceHead <= m_MaximalActionDistanceSq );
25 }
26};
class ActionTargets ActionTarget
Определения CCTBase.c:2
float m_MaximalActionDistanceSq
Определения CCTCursorNoObject.c:3
override bool Can(PlayerBase player, ActionTarget target)
Определения CCTCursorNoObject.c:10
void CCTCursorNoObject(float maximal_target_distance)
Определения CCTCursorNoObject.c:5
Определения PlayerBaseClient.c:2
static proto native float DistanceSq(vector v1, vector v2)
Returns the square distance between tips of two 3D vectors.
Определения EnConvert.c:106
proto native CGame GetGame()