Dayz
Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Toggle main menu visibility
Loading...
Searching...
No Matches
aitargetcallbacksplayer.c
Go to the documentation of this file.
1
class
AITargetCallbacksPlayer
:
AITargetCallbacks
2
{
3
private
int
m_iChestBoneIndex
;
4
5
private
PlayerBase
m_Player
;
6
7
void
AITargetCallbacksPlayer
(
PlayerBase
pPlayer)
8
{
9
m_Player
= pPlayer;
10
11
m_iChestBoneIndex
=
m_Player
.GetBoneIndexByName(
"Spine3"
);
12
}
13
14
override
vector
GetHeadPositionWS
()
15
{
16
vector
position;
17
MiscGameplayFunctions.GetHeadBonePos(
m_Player
, position);
18
19
return
position;
20
}
21
22
override
vector
GetVisionPointPositionWS
(
EntityAI
pApplicant)
23
{
24
DayZInfected
infected =
DayZInfected
.Cast(pApplicant);
25
if
(infected)
26
{
27
DayZInfectedInputController
ic = infected.GetInputController();
28
if
(ic)
29
{
30
int
mindState = ic.
GetMindState
();
31
if
(mindState >=
DayZInfectedConstants
.MINDSTATE_ALERTED)
32
{
33
return
GetHeadPositionWS
();
34
}
35
else
36
{
37
if
(
m_iChestBoneIndex
!= -1)
38
return
m_Player
.GetBonePositionWS(
m_iChestBoneIndex
);
39
}
40
}
41
}
42
43
return
m_Player
.GetPosition() +
"0 1 0"
;
44
}
45
46
override
float
GetMaxVisionRangeModifier
(
EntityAI
pApplicant)
47
{
48
HumanMovementState
state =
new
HumanMovementState
();
49
m_Player
.GetMovementState(state);
50
51
float
mod = 1.0;
52
float
speedCoef =
PlayerConstants
.
AI_VISIBILITY_RUN
;
53
float
stanceCoef =
PlayerConstants
.
AI_VISIBILITY_STANDING
;
54
56
switch
(
AITargetCallbacksPlayer
.StanceToMovementIdxTranslation(state))
57
{
58
case
DayZPlayerConstants
.MOVEMENTIDX_WALK:
59
speedCoef =
PlayerConstants
.
AI_VISIBILITY_WALK
;
60
break
;
61
62
case
DayZPlayerConstants
.MOVEMENTIDX_IDLE:
63
speedCoef =
PlayerConstants
.
AI_VISIBILITY_IDLE
;
64
break
;
65
}
66
68
switch
(state.
m_iStanceIdx
)
69
{
70
case
DayZPlayerConstants
.STANCEIDX_CROUCH:
71
case
DayZPlayerConstants
.STANCEIDX_RAISEDCROUCH:
72
stanceCoef =
PlayerConstants
.
AI_VISIBILITY_CROUCH
;
73
break
;
74
75
case
DayZPlayerConstants
.STANCEIDX_PRONE:
76
case
DayZPlayerConstants
.STANCEIDX_RAISEDPRONE:
77
stanceCoef =
PlayerConstants
.
AI_VISIBILITY_PRONE
;
78
break
;
79
}
80
82
mod = (speedCoef + stanceCoef) / 2;
83
84
return
mod;
85
}
86
89
static
int
StanceToMovementIdxTranslation
(
HumanMovementState
pState)
90
{
91
int
movementSpeed = 0;
92
93
switch
(pState.
m_iStanceIdx
)
94
{
95
case
DayZPlayerConstants
.STANCEIDX_CROUCH:
96
case
DayZPlayerConstants
.STANCEIDX_RAISEDCROUCH:
97
switch
(pState.
m_iMovement
)
98
{
99
case
DayZPlayerConstants
.MOVEMENTIDX_IDLE:
100
movementSpeed =
DayZPlayerConstants
.MOVEMENTIDX_IDLE;
101
break
;
102
103
case
DayZPlayerConstants
.MOVEMENTIDX_WALK:
104
case
DayZPlayerConstants
.MOVEMENTIDX_RUN:
105
movementSpeed =
DayZPlayerConstants
.MOVEMENTIDX_WALK;
106
break
;
107
108
case
DayZPlayerConstants
.MOVEMENTIDX_SPRINT:
109
movementSpeed =
DayZPlayerConstants
.MOVEMENTIDX_CROUCH_RUN;
110
break
;
111
}
112
break
;
113
114
case
DayZPlayerConstants
.STANCEIDX_PRONE:
115
case
DayZPlayerConstants
.STANCEIDX_RAISEDPRONE:
116
switch
(pState.
m_iMovement
)
117
{
118
case
DayZPlayerConstants
.MOVEMENTIDX_IDLE:
119
movementSpeed =
DayZPlayerConstants
.MOVEMENTIDX_IDLE;
120
break
;
121
122
default
:
123
movementSpeed =
DayZPlayerConstants
.MOVEMENTIDX_WALK;
124
break
;
125
}
126
break
;
127
128
default
:
129
movementSpeed = pState.
m_iMovement
;
130
}
131
132
return
movementSpeed;
133
}
134
136
private
int
m_iHeadBoneIndex
;
137
}
AITargetCallbacks
Definition
aitarget_callbacks.c:9
AITargetCallbacksPlayer::GetHeadPositionWS
override vector GetHeadPositionWS()
Definition
aitargetcallbacksplayer.c:14
AITargetCallbacksPlayer::StanceToMovementIdxTranslation
static int StanceToMovementIdxTranslation(HumanMovementState pState)
Translates players speed (idx) and corrects it by current stance used mainly for visibility/audibilit...
Definition
aitargetcallbacksplayer.c:89
AITargetCallbacksPlayer::m_iChestBoneIndex
int m_iChestBoneIndex
Definition
aitargetcallbacksplayer.c:3
AITargetCallbacksPlayer::m_Player
PlayerBase m_Player
Definition
aitargetcallbacksplayer.c:5
AITargetCallbacksPlayer::m_iHeadBoneIndex
int m_iHeadBoneIndex
DEPRECATED.
Definition
aitargetcallbacksplayer.c:136
AITargetCallbacksPlayer::AITargetCallbacksPlayer
void AITargetCallbacksPlayer(PlayerBase pPlayer)
Definition
aitargetcallbacksplayer.c:7
AITargetCallbacksPlayer::GetVisionPointPositionWS
override vector GetVisionPointPositionWS(EntityAI pApplicant)
Definition
aitargetcallbacksplayer.c:22
AITargetCallbacksPlayer::GetMaxVisionRangeModifier
override float GetMaxVisionRangeModifier(EntityAI pApplicant)
Definition
aitargetcallbacksplayer.c:46
DayZInfected
Definition
zombiebase.c:2
DayZInfectedInputController
Definition
dayzinfectedinputcontroller.c:2
DayZInfectedInputController::GetMindState
proto native int GetMindState()
EntityAI
Definition
inventoryitem.c:2
HumanMovementState
Definition
human.c:1154
HumanMovementState::m_iStanceIdx
int m_iStanceIdx
current command's id
Definition
human.c:1156
HumanMovementState::m_iMovement
int m_iMovement
current stance (DayZPlayerConstants.STANCEIDX_ERECT, ...), only if the command has a stance
Definition
human.c:1157
PlayerBase
Definition
playerbaseclient.c:2
PlayerConstants
Definition
playerconstants.c:2
PlayerConstants::AI_VISIBILITY_CROUCH
static const float AI_VISIBILITY_CROUCH
Definition
playerconstants.c:252
PlayerConstants::AI_VISIBILITY_STANDING
static const float AI_VISIBILITY_STANDING
Definition
playerconstants.c:251
PlayerConstants::AI_VISIBILITY_RUN
static const float AI_VISIBILITY_RUN
Definition
playerconstants.c:248
PlayerConstants::AI_VISIBILITY_PRONE
static const float AI_VISIBILITY_PRONE
Definition
playerconstants.c:253
PlayerConstants::AI_VISIBILITY_IDLE
static const float AI_VISIBILITY_IDLE
Definition
playerconstants.c:250
PlayerConstants::AI_VISIBILITY_WALK
static const float AI_VISIBILITY_WALK
Definition
playerconstants.c:249
vector
Definition
enconvert.c:119
DayZInfectedConstants
DayZInfectedConstants
Definition
dayzinfected.c:2
DayZPlayerConstants
DayZPlayerConstants
defined in C++
Definition
dayzplayer.c:602
Games
Dayz
scripts
4_world
entities
manbase
playerbase
aitargetcallbacksplayer.c
Generated by
1.17.0