Dayz 1.25
Dayz Code Explorer by KGB
Загрузка...
Поиск...
Не найдено
Класс ActionOpenDoors
+ Граф наследования:ActionOpenDoors:

Защищенные члены

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

Закрытые члены

void ActionOpenDoors ()
 
override void CreateConditionComponents ()
 

Закрытые данные

ref NoiseParams m_NoisePar
 

Подробное описание

Конструктор(ы)

◆ ActionOpenDoors()

void ActionOpenDoors ( )
inlineprivate
6 {
7 m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_OPENDOORFW;
8 m_StanceMask = DayZPlayerConstants.STANCEMASK_CROUCH | DayZPlayerConstants.STANCEMASK_ERECT;
9 m_Text = "#open";
10 }
string m_Text
Definition ActionBase.c:49
int m_StanceMask
Definition ActionBase.c:53
int m_CommandUID
Definition AnimatedActionBase.c:135
DayZPlayerConstants
defined in C++
Definition dayzplayer.c:602

Перекрестные ссылки AnimatedActionBase::m_CommandUID, m_StanceMask и m_Text.

Методы

◆ ActionCondition()

override bool ActionCondition ( PlayerBase player,
ActionTarget target,
ItemBase item )
inlineprotected
24 {
25 if (!target)
26 return false;
27
28 if (!IsBuilding(target))
29 return false;
30
31 Building building;
32 if (Class.CastTo(building, target.GetObject()))
33 {
34 int doorIndex = building.GetDoorIndex(target.GetComponentIndex());
35 if (doorIndex != -1)
36 {
38 return false;
39
40 return building.CanDoorBeOpened(doorIndex, CheckIfDoorIsLocked());
41
42 }
43 }
44
45 return false;
46 }
bool IsInReach(PlayerBase player, ActionTarget target, float maxDistance=1.0)
Definition ActionBase.c:928
bool IsBuilding(ActionTarget target)
Definition ActionBase.c:918
bool CheckIfDoorIsLocked()
Definition ActionOpenDoors.c:18
Super root of all classes in Enforce script.
Definition EnScript.c:11
Definition EntityAI.c:95
Definition ActionConstants.c:105
const float DEFAULT
Definition ActionConstants.c:107
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.

Перекрестные ссылки Class::CastTo(), CheckIfDoorIsLocked(), UAMaxDistances::DEFAULT, IsBuilding() и IsInReach().

◆ CheckIfDoorIsLocked()

bool CheckIfDoorIsLocked ( )
inlineprotected
19 {
20 return true;
21 }

Используется в ActionCondition() и OnStartServer().

◆ CreateConditionComponents()

override void CreateConditionComponents ( )
inlineprivate
13 {
16 }
ref CCIBase m_ConditionItem
Definition ActionBase.c:55
ref CCTBase m_ConditionTarget
Definition ActionBase.c:56
Definition CCINone.c:2
Definition CCTCursor.c:2

Перекрестные ссылки m_ConditionItem и m_ConditionTarget.

◆ OnEndServer()

override void OnEndServer ( ActionData action_data)
inlineprotected
65 {
66 m_NoisePar = new NoiseParams();
67 m_NoisePar.LoadFromPath("CfgVehicles SurvivorBase NoiseActionDefault");
68 NoiseSystem noise = GetGame().GetNoiseSystem();
69 if (noise)
70 {
71 if (action_data.m_Player)
72 noise.AddNoisePos(action_data.m_Player, action_data.m_Target.GetObject().GetPosition(), m_NoisePar);
73 }
74 }
class NoiseSystem NoiseParams()
Definition Noise.c:15
ref NoiseParams m_NoisePar
Definition ActionOpenDoors.c:3
Definition Noise.c:2
proto native CGame GetGame()

Перекрестные ссылки GetGame(), m_NoisePar и NoiseParams().

◆ OnStartServer()

override void OnStartServer ( ActionData action_data)
inlineprotected
49 {
50 Building building;
51 if (Class.CastTo(building, action_data.m_Target.GetObject()))
52 {
53 int doorIndex = building.GetDoorIndex(action_data.m_Target.GetComponentIndex());
54 if (doorIndex != -1)
55 {
56 if (building.CanDoorBeOpened(doorIndex, CheckIfDoorIsLocked()))
57 {
58 building.OpenDoor(doorIndex);
59 }
60 }
61 }
62 }

Перекрестные ссылки Class::CastTo() и CheckIfDoorIsLocked().

Поля

◆ m_NoisePar

ref NoiseParams m_NoisePar
private

Используется в OnEndServer().


Объявления и описания членов класса находятся в файле: