Arma Reforger Explorer
1.7.0.54
Arma Reforger Code Explorer by Zeroy - Thanks to MisterOutofTime
Toggle main menu visibility
Loading...
Searching...
No Matches
SCR_AIAnimation_Base.c
Go to the documentation of this file.
1
//------------------------------------------------------------------------------------------------
2
// all AI re-gistered animations, must specify In and Out to be possible to use in "AnimationWaypoint"
3
4
[
BaseContainerProps
()]
5
class
SCR_AIAnimation_Base
6
{
7
bool
StartAnimation(
IEntity
pUserEntity,
vector
vAnimationTransform[4]);
8
bool
StopAnimation(
IEntity
pUserEntity,
bool
performFast);
9
}
10
11
//----------------------------------------------------------------------------------------------------
12
[
BaseContainerProps
()]
13
class
SCR_AIAnimation_Sitting :
SCR_AIAnimation_Base
14
{
15
//------------------------------------------------------------------------------------------------
16
override
bool
StartAnimation(
IEntity
pUserEntity,
vector
vAnimationTransform[4])
17
{
18
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
19
if
(!character)
20
return
false
;
21
22
SCR_CharacterControllerComponent
controller =
SCR_CharacterControllerComponent
.Cast(character.GetCharacterController());
23
if
(!controller)
24
return
false
;
25
26
controller.
StartLoitering
(null,
ELoiteringType
.SIT,
false
,
true
,
true
, vAnimationTransform);
27
return
true
;
28
}
29
30
//------------------------------------------------------------------------------------------------
31
override
bool
StopAnimation(
IEntity
pUserEntity,
bool
performFast)
32
{
33
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
34
if
(!character)
35
return
false
;
36
37
SCR_CharacterControllerComponent controller = SCR_CharacterControllerComponent.Cast(character.GetCharacterController());
38
if
(!controller)
39
return
false
;
40
41
controller.
StopLoitering
(performFast);
42
return
true
;
43
}
44
}
45
46
[
BaseContainerProps
()]
47
class
SCR_AIAnimation_Pushups :
SCR_AIAnimation_Base
48
{
49
//------------------------------------------------------------------------------------------------
50
override
bool
StartAnimation(
IEntity
pUserEntity, vector vAnimationTransform[4])
51
{
52
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
53
if
(!character)
54
return
false
;
55
56
SCR_CharacterControllerComponent controller = SCR_CharacterControllerComponent.Cast(character.GetCharacterController());
57
if
(!controller)
58
return
false
;
59
60
controller.
StartLoitering
(null,
ELoiteringType
.PUSHUPS,
true
,
true
,
true
, vAnimationTransform);
61
return
true
;
62
}
63
64
//------------------------------------------------------------------------------------------------
65
override
bool
StopAnimation(
IEntity
pUserEntity,
bool
performFast)
66
{
67
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
68
if
(!character)
69
return
false
;
70
71
SCR_CharacterControllerComponent controller = SCR_CharacterControllerComponent.Cast(character.GetCharacterController());
72
if
(!controller)
73
return
false
;
74
75
controller.
StopLoitering
(performFast);
76
return
true
;
77
}
78
};
79
80
//----------------------------------------------------------------------------------------------------
81
[
BaseContainerProps
()]
82
class
SCR_AIAnimation_Loitering
:
SCR_AIAnimation_Base
83
{
84
//------------------------------------------------------------------------------------------------
85
override
bool
StartAnimation(
IEntity
pUserEntity,
vector
vAnimationTransform[4])
86
{
87
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
88
if
(!character)
89
return
false
;
90
91
SCR_CharacterControllerComponent
controller =
SCR_CharacterControllerComponent
.Cast(character.GetCharacterController());
92
if
(!controller)
93
return
false
;
94
95
controller.
StartLoitering
(null,
ELoiteringType
.LOITERING,
true
,
true
,
true
, vAnimationTransform);
96
return
true
;
97
}
98
99
//------------------------------------------------------------------------------------------------
100
override
bool
StopAnimation(
IEntity
pUserEntity,
bool
performFast)
101
{
102
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
103
if
(!character)
104
return
false
;
105
106
SCR_CharacterControllerComponent
controller =
SCR_CharacterControllerComponent
.Cast(character.GetCharacterController());
107
if
(!controller)
108
return
false
;
109
110
controller.
StopLoitering
(performFast);
111
return
true
;
112
}
113
};
114
115
//----------------------------------------------------------------------------------------------------
116
[
BaseContainerProps
()]
117
class
SCR_AIAnimation_OfficerMission_Table
:
SCR_AIAnimation_Base
118
{
119
//------------------------------------------------------------------------------------------------
120
override
bool
StartAnimation(
IEntity
pUserEntity,
vector
vAnimationTransform[4])
121
{
122
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
123
if
(!character)
124
return
false
;
125
126
SCR_CharacterControllerComponent
controller =
SCR_CharacterControllerComponent
.Cast(character.GetCharacterController());
127
if
(!controller)
128
return
false
;
129
130
CharacterAnimationComponent
animComp = controller.GetAnimationComponent();
131
if
(!animComp)
132
return
false
;
133
134
SCR_CharacterCommandHandlerComponent cmdHandler = SCR_CharacterCommandHandlerComponent.Cast(animComp.GetCommandHandler());
135
if
(!cmdHandler)
136
return
false
;
137
138
SCR_ScriptedCommandsStaticTable
staticTable = cmdHandler.GetScriptedStaticTable();
139
if
(!staticTable)
140
return
false
;
141
142
SCR_LoiterCustomAnimData
customAnimData =
new
SCR_LoiterCustomAnimData
();
143
144
animComp.SetVariableInt(staticTable.m_OfficerMissionSpeech,2);
145
146
customAnimData.m_CustomCommand = staticTable.m_CustomCinematicCommand;
147
customAnimData.m_GraphName =
"{312D2589E4BF5BC8}anims/anm/NPC/workspaces/Officier_Mission01.agr"
;
148
customAnimData.m_GraphInstanceName =
"{DC477052F8B60926}anims/anm/NPC/workspaces/Officier_Mission01.asi"
;
149
controller.
StartLoitering
(null,
ELoiteringType
.CUSTOM,
true
,
true
,
true
, vAnimationTransform,
true
, customAnimData);
150
151
return
true
;
152
}
153
154
//------------------------------------------------------------------------------------------------
155
override
bool
StopAnimation(
IEntity
pUserEntity,
bool
performFast)
156
{
157
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
158
if
(!character)
159
return
false
;
160
161
SCR_CharacterControllerComponent
controller =
SCR_CharacterControllerComponent
.Cast(character.GetCharacterController());
162
if
(!controller)
163
return
false
;
164
165
controller.
StopLoitering
(performFast);
166
return
true
;
167
}
168
};
169
170
//----------------------------------------------------------------------------------------------------
171
[
BaseContainerProps
()]
172
class
SCR_AIAnimation_OfficerMission_Walking
:
SCR_AIAnimation_Base
173
{
174
//------------------------------------------------------------------------------------------------
175
override
bool
StartAnimation(
IEntity
pUserEntity,
vector
vAnimationTransform[4])
176
{
177
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
178
if
(!character)
179
return
false
;
180
181
SCR_CharacterControllerComponent
controller =
SCR_CharacterControllerComponent
.Cast(character.GetCharacterController());
182
if
(!controller)
183
return
false
;
184
185
CharacterAnimationComponent
animComp = controller.GetAnimationComponent();
186
if
(!animComp)
187
return
false
;
188
189
SCR_CharacterCommandHandlerComponent cmdHandler = SCR_CharacterCommandHandlerComponent.Cast(animComp.GetCommandHandler());
190
if
(!cmdHandler)
191
return
false
;
192
193
SCR_ScriptedCommandsStaticTable
staticTable = cmdHandler.GetScriptedStaticTable();
194
if
(!staticTable)
195
return
false
;
196
197
SCR_LoiterCustomAnimData
customAnimData =
new
SCR_LoiterCustomAnimData
();
198
199
animComp.SetVariableInt(staticTable.m_OfficerMissionSpeech,1);
200
201
customAnimData.m_CustomCommand = staticTable.m_CustomCinematicCommand;
202
customAnimData.m_GraphName =
"{312D2589E4BF5BC8}anims/anm/NPC/workspaces/Officier_Mission01.agr"
;
203
customAnimData.m_GraphInstanceName =
"{DC477052F8B60926}anims/anm/NPC/workspaces/Officier_Mission01.asi"
;
204
controller.
StartLoitering
(null,
ELoiteringType
.CUSTOM,
true
,
true
,
true
, vAnimationTransform,
true
, customAnimData);
205
206
return
true
;
207
}
208
209
//------------------------------------------------------------------------------------------------
210
override
bool
StopAnimation(
IEntity
pUserEntity,
bool
performFast)
211
{
212
SCR_ChimeraCharacter character = SCR_ChimeraCharacter.Cast(pUserEntity);
213
if
(!character)
214
return
false
;
215
216
SCR_CharacterControllerComponent
controller =
SCR_CharacterControllerComponent
.Cast(character.GetCharacterController());
217
if
(!controller)
218
return
false
;
219
220
controller.
StopLoitering
(performFast);
221
return
true
;
222
}
223
};
BaseContainerProps
SCR_AIAnimation_Loitering BaseContainerProps
Commanding menu commanding element class.
Definition
SCR_AIAnimationWaypoint.c:14
ELoiteringType
ELoiteringType
Definition
SCR_LoiterUserAction.c:2
IEntity
enum EVehicleType IEntity
CharacterAnimationComponent
Definition
CharacterAnimationComponent.c:13
IEntity
Definition
IEntity.c:13
SCR_AIAnimation_Base
Definition
SCR_AIAnimation_Base.c:6
SCR_AIAnimation_Loitering
Definition
SCR_AIAnimation_Base.c:83
SCR_AIAnimation_OfficerMission_Table
Definition
SCR_AIAnimation_Base.c:118
SCR_AIAnimation_OfficerMission_Walking
Definition
SCR_AIAnimation_Base.c:173
SCR_CharacterControllerComponent
Definition
SCR_CharacterControllerComponent.c:36
SCR_CharacterControllerComponent::StartLoitering
void StartLoitering(IEntity loiterEntity, int loiteringType, bool holsterWeapon, bool allowRootMotion, bool alignToPosition, vector targetPosition[4]={ "1 0 0", "0 1 0", "0 0 1", "0 0 0" }, bool disableInput=false, SCR_LoiterCustomAnimData customAnimData=SCR_LoiterCustomAnimData.Default)
Definition
SCR_CharacterControllerComponent.c:1472
SCR_CharacterControllerComponent::StopLoitering
void StopLoitering(bool terminateFast)
Definition
SCR_CharacterControllerComponent.c:1634
SCR_LoiterCustomAnimData
Definition
SCR_CharacterCommandLoiter.c:202
SCR_ScriptedCommandsStaticTable
Definition
SCR_ScriptedCommandsStaticTable.c:2
vector
Definition
vector.c:13
scripts
Game
AI
Behavior
SCR_AIAnimation_Base.c
Generated by
1.17.0