Dayz
Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Toggle main menu visibility
Loading...
Searching...
No Matches
actionunlockdoors.c
Go to the documentation of this file.
1
class
ActionUnlockDoorsCB
:
ActionContinuousBaseCB
2
{
3
override
void
CreateActionComponent
()
4
{
5
m_ActionData
.m_ActionComponent =
new
CAContinuousTime
(
UATimeSpent
.
UNLOCK
);
6
}
7
};
8
9
class
ActionUnlockDoors
:
ActionContinuousBase
10
{
11
protected
const
float
APPLIED_DMG
= 6;
12
13
void
ActionUnlockDoors
()
14
{
15
m_CallbackClass
=
ActionUnlockDoorsCB
;
16
m_CommandUID
=
DayZPlayerConstants
.CMD_ACTIONFB_INTERACT;
17
m_FullBody
=
true
;
18
m_StanceMask
=
DayZPlayerConstants
.STANCEMASK_ERECT |
DayZPlayerConstants
.STANCEMASK_CROUCH;
19
m_Text
=
"#unlock"
;
20
}
21
22
override
void
CreateConditionComponents
()
23
{
24
m_ConditionItem
=
new
CCINonRuined
;
25
m_ConditionTarget
=
new
CCTCursor
;
26
}
27
28
override
bool
ActionCondition
(
PlayerBase
player,
ActionTarget
target,
ItemBase
item )
29
{
30
if
( !
IsBuilding
(target) )
return
false
;
31
if
( !
IsInReach
(player, target,
UAMaxDistances
.
DEFAULT
) )
return
false
;
32
33
Building
building;
34
ToolBase
tool;
35
if
(
Class
.
CastTo
(building, target.GetObject())&&
Class
.
CastTo
(tool, item))
36
{
37
int
doorIndex = building.
GetDoorIndex
(target.GetComponentIndex());
38
if
(doorIndex != -1 && tool.GetKeyCompatibilityType() & building.
GetLockCompatibilityType
(doorIndex))
39
return
building.
IsDoorLocked
(doorIndex);
40
}
41
return
false
;
42
}
43
44
protected
void
UnlockDoor
(
ActionTarget
target)
45
{
46
Building
building;
47
48
if
(
Class
.
CastTo
(building, target.GetObject()) )
49
{
50
int
doorIndex = building.
GetDoorIndex
(target.GetComponentIndex());
51
if
( doorIndex != -1 )
52
{
53
building.
UnlockDoor
(doorIndex);
54
}
55
}
56
}
57
58
override
void
OnFinishProgressServer
(
ActionData
action_data )
59
{
60
UnlockDoor
(action_data.m_Target);
61
62
//Damage the Lockpick
63
MiscGameplayFunctions.DealAbsoluteDmg(action_data.m_MainItem,
APPLIED_DMG
);
64
65
}
66
67
override
bool
IsLockTargetOnUse
()
68
{
69
return
false
;
70
}
71
};
ActionData
ActionBase ActionData
Definition
actionbase.c:30
ActionTarget
class ActionTargets ActionTarget
ActionBaseCB::m_ActionData
ActionData m_ActionData
Definition
animatedactionbase.c:3
ActionBase::m_FullBody
bool m_FullBody
Definition
actionbase.c:67
ActionBase::m_Text
string m_Text
Definition
actionbase.c:64
ActionBase::IsInReach
bool IsInReach(PlayerBase player, ActionTarget target, float maxDistance=1.0)
Definition
actionbase.c:1181
ActionBase::IsBuilding
bool IsBuilding(ActionTarget target)
Definition
actionbase.c:1171
ActionBase::m_ConditionItem
ref CCIBase m_ConditionItem
Definition
actionbase.c:70
ActionBase::m_ConditionTarget
ref CCTBase m_ConditionTarget
Definition
actionbase.c:71
ActionBase::m_StanceMask
int m_StanceMask
Definition
actionbase.c:68
ActionContinuousBaseCB
Definition
actioncontinuousbase.c:2
ActionContinuousBase::ActionContinuousBase
void ActionContinuousBase()
Definition
actioncontinuousbase.c:124
ActionUnlockDoorsCB
Definition
actionunlockdoors.c:2
ActionUnlockDoorsCB::CreateActionComponent
override void CreateActionComponent()
Definition
actionunlockdoors.c:3
ActionUnlockDoors::OnFinishProgressServer
override void OnFinishProgressServer(ActionData action_data)
Definition
actionunlockdoors.c:58
ActionUnlockDoors::UnlockDoor
void UnlockDoor(ActionTarget target)
Definition
actionunlockdoors.c:44
ActionUnlockDoors::CreateConditionComponents
override void CreateConditionComponents()
Definition
actionunlockdoors.c:22
ActionUnlockDoors::APPLIED_DMG
const float APPLIED_DMG
Definition
actionunlockdoors.c:11
ActionUnlockDoors::ActionCondition
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition
actionunlockdoors.c:28
ActionUnlockDoors::IsLockTargetOnUse
override bool IsLockTargetOnUse()
Definition
actionunlockdoors.c:67
ActionUnlockDoors::ActionUnlockDoors
void ActionUnlockDoors()
Definition
actionunlockdoors.c:13
AnimatedActionBase::m_CommandUID
int m_CommandUID
Definition
animatedactionbase.c:143
AnimatedActionBase::m_CallbackClass
m_CallbackClass
Definition
animatedactionbase.c:145
Building
Definition
building.c:11
Building::GetDoorIndex
proto native int GetDoorIndex(int componentIndex)
Gets the index of the door based on the view geometry component index.
Building::IsDoorLocked
proto native bool IsDoorLocked(int index)
When the door is locked.
Building::GetLockCompatibilityType
int GetLockCompatibilityType(int doorIdx)
Which door is compatible with which key (door idx supplied).
Definition
building.c:167
Building::UnlockDoor
proto native void UnlockDoor(int index, bool animate=true)
Unlocks the door if locked, AJAR animation optional.
CAContinuousTime
Definition
cacontinuoustime.c:2
CCINonRuined
Definition
ccinonruined.c:2
CCTCursor
Definition
cctcursor.c:2
Class
Super root of all classes in Enforce script.
Definition
enscript.c:11
ItemBase
Definition
inventoryitem.c:742
PlayerBase
Definition
playerbaseclient.c:2
ToolBase
Definition
boneknife.c:2
UAMaxDistances
Definition
actionconstants.c:110
UAMaxDistances::DEFAULT
const float DEFAULT
Definition
actionconstants.c:112
UATimeSpent
Definition
actionconstants.c:28
UATimeSpent::UNLOCK
const float UNLOCK
Definition
actionconstants.c:85
DayZPlayerConstants
DayZPlayerConstants
defined in C++
Definition
dayzplayer.c:602
Class::CastTo
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
Games
Dayz
scripts
4_world
classes
useractionscomponent
actions
continuous
actionunlockdoors.c
Generated by
1.17.0