Dayz 1.25
Dayz Code Explorer by KGB
Загрузка...
Поиск...
Не найдено
Файл ActionOpenDoors.c

См. исходные тексты.

Структуры данных

class  ActionOpenDoors
 

Функции

ActionOpenDoors ActionInteractBase CheckIfDoorIsLocked ()
 
void ActionOpenDoors ()
 
override void CreateConditionComponents ()
 
override bool ActionCondition (PlayerBase player, ActionTarget target, ItemBase item)
 
override void OnStartServer (ActionData action_data)
 
override void OnEndServer (ActionData action_data)
 

Переменные

ref NoiseParams m_NoisePar
 

Функции

◆ ActionCondition()

override bool ActionCondition ( PlayerBase player,
ActionTarget target,
ItemBase item )
protected

◆ ActionOpenDoors()

void ActionOpenDoors ( )
85 {
87 //super.OnEndServer(action_data);

◆ CheckIfDoorIsLocked()

bool CheckIfDoorIsLocked ( )
80 {
81 return false;
82 }

◆ CreateConditionComponents()

override void CreateConditionComponents ( )

◆ OnEndServer()

override void OnEndServer ( ActionData action_data)
protected

Original action didn't add any noise to the NoiseSystem

142{
144
145 void ActionOpenDoors()
146 {
147 m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_OPENDOORFW;
148 m_StanceMask = DayZPlayerConstants.STANCEMASK_CROUCH | DayZPlayerConstants.STANCEMASK_ERECT;
149 m_Text = "#open";
150 }
151
152 override void CreateConditionComponents()
153 {
154 m_ConditionItem = new CCINone();
156 }
157
158 protected bool CheckIfDoorIsLocked()
159 {
160 return true;
161 }
162
163 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
164 {
165 if (!target)
166 return false;
167
168 if (!IsBuilding(target))
169 return false;
170
171 Building building;
172 if (Class.CastTo(building, target.GetObject()))
173 {
174 int doorIndex = building.GetDoorIndex(target.GetComponentIndex());
175 if (doorIndex != -1)
176 {
178 return false;
179
180 return building.CanDoorBeOpened(doorIndex, CheckIfDoorIsLocked());
181
182 }
183 }
184
185 return false;
186 }
187
189 {
190 Building building;
191 if (Class.CastTo(building, action_data.m_Target.GetObject()))
192 {
193 int doorIndex = building.GetDoorIndex(action_data.m_Target.GetComponentIndex());
194 if (doorIndex != -1)
195 {
196 if (building.CanDoorBeOpened(doorIndex, CheckIfDoorIsLocked()))
197 {
198 building.OpenDoor(doorIndex);
199 }
200 }
201 }
202 }
203
204 override void OnEndServer(ActionData action_data)
205 {
206 m_NoisePar = new NoiseParams();
207 m_NoisePar.LoadFromPath("CfgVehicles SurvivorBase NoiseActionDefault");
208 NoiseSystem noise = GetGame().GetNoiseSystem();
209 if (noise)
210 {
211 if (action_data.m_Player)
212 noise.AddNoisePos(action_data.m_Player, action_data.m_Target.GetObject().GetPosition(), m_NoisePar);
213 }
214 }
215}
216
218{
219 override bool CheckIfDoorIsLocked()
220 {
221 return false;
222 }
223
224 override void OnEndServer(ActionData action_data)
225 {
227 //super.OnEndServer(action_data);
228 }
229};
string m_Text
Definition ActionBase.c:49
bool IsInReach(PlayerBase player, ActionTarget target, float maxDistance=1.0)
Definition ActionBase.c:928
void OnEndServer(ActionData action_data)
Definition ActionBase.c:1039
bool IsBuilding(ActionTarget target)
Definition ActionBase.c:918
ref CCIBase m_ConditionItem
Definition ActionBase.c:55
ref CCTBase m_ConditionTarget
Definition ActionBase.c:56
int m_StanceMask
Definition ActionBase.c:53
void ActionOpenDoors()
Definition ActionOpenDoors.c:82
override void OnEndServer(ActionData action_data)
Definition ActionOpenDoors.c:141
ref NoiseParams m_NoisePar
Definition ActionOpenDoors.c:80
override void CreateConditionComponents()
Definition ActionOpenDoors.c:89
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition ActionOpenDoors.c:100
ActionOpenDoors ActionInteractBase CheckIfDoorIsLocked()
Definition ActionOpenDoors.c:79
override void OnStartServer(ActionData action_data)
Definition ActionOpenDoors.c:125
class NoiseSystem NoiseParams()
Definition Noise.c:15
Definition ActionBase.c:21
Definition ActionInteractBase.c:55
Definition ActionOpenDoors.c:2
Definition CCINone.c:2
Definition CCTCursor.c:2
Super root of all classes in Enforce script.
Definition EnScript.c:11
Definition InventoryItem.c:731
Definition Noise.c:2
Definition EntityAI.c:95
Definition PlayerBaseClient.c:2
Definition ActionConstants.c:105
const float DEFAULT
Definition ActionConstants.c:107
DayZPlayerConstants
defined in C++
Definition dayzplayer.c:602
proto native CGame GetGame()
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.

◆ OnStartServer()

override void OnStartServer ( ActionData action_data)
protected
126{
128
129 void ActionOpenDoors()
130 {
131 m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_OPENDOORFW;
132 m_StanceMask = DayZPlayerConstants.STANCEMASK_CROUCH | DayZPlayerConstants.STANCEMASK_ERECT;
133 m_Text = "#open";
134 }
135
136 override void CreateConditionComponents()
137 {
138 m_ConditionItem = new CCINone();
140 }
141
142 protected bool CheckIfDoorIsLocked()
143 {
144 return true;
145 }
146
147 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
148 {
149 if (!target)
150 return false;
151
152 if (!IsBuilding(target))
153 return false;
154
155 Building building;
156 if (Class.CastTo(building, target.GetObject()))
157 {
158 int doorIndex = building.GetDoorIndex(target.GetComponentIndex());
159 if (doorIndex != -1)
160 {
162 return false;
163
164 return building.CanDoorBeOpened(doorIndex, CheckIfDoorIsLocked());
165
166 }
167 }
168
169 return false;
170 }
171
173 {
174 Building building;
175 if (Class.CastTo(building, action_data.m_Target.GetObject()))
176 {
177 int doorIndex = building.GetDoorIndex(action_data.m_Target.GetComponentIndex());
178 if (doorIndex != -1)
179 {
180 if (building.CanDoorBeOpened(doorIndex, CheckIfDoorIsLocked()))
181 {
182 building.OpenDoor(doorIndex);
183 }
184 }
185 }
186 }
187
188 override void OnEndServer(ActionData action_data)
189 {
190 m_NoisePar = new NoiseParams();
191 m_NoisePar.LoadFromPath("CfgVehicles SurvivorBase NoiseActionDefault");
192 NoiseSystem noise = GetGame().GetNoiseSystem();
193 if (noise)
194 {
195 if (action_data.m_Player)
196 noise.AddNoisePos(action_data.m_Player, action_data.m_Target.GetObject().GetPosition(), m_NoisePar);
197 }
198 }
199}
200
202{
203 override bool CheckIfDoorIsLocked()
204 {
205 return false;
206 }
207
208 override void OnEndServer(ActionData action_data)
209 {
211 //super.OnEndServer(action_data);
212 }
213};

Переменные

◆ m_NoisePar