DayZ 1.30
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 ( g_Game.IsServer() && g_Game.IsMultiplayer() )
16 return true;
17
18 vector playerPosition = player.GetPosition();
19 vector playerHeadPos = MiscGameplayFunctions.GetPlayerHeadPosition(player);
20 vector cursorHitPosition = target.GetCursorHitPos();
21
22 float distanceRoot = vector.DistanceSq(cursorHitPosition, playerPosition);
23 float distanceHead = vector.DistanceSq(cursorHitPosition, playerHeadPos);
24
25 return (distanceRoot <= m_MaximalActionDistanceSq || distanceHead <= m_MaximalActionDistanceSq);
26 }
27}
void ActionTarget(Object object, Object parent, int componentIndex, vector cursorHitPos, float utility, string surfaceName="")
Определения ActionTargets.c:125
DayZGame g_Game
Определения DayZGame.c:4074
Определения 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:119