Dayz
Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Toggle main menu visibility
Loading...
Searching...
No Matches
actiondisarmexplosive.c
Go to the documentation of this file.
1
class
ActionDisarmExplosiveCB
:
ActionContinuousBaseCB
2
{
3
override
void
CreateActionComponent
()
4
{
5
m_ActionData
.m_ActionComponent =
new
CAContinuousTime
(
UATimeSpent
.
DISARM_MINE
);
6
}
7
}
8
9
class
ActionDisarmExplosive
:
ActionContinuousBase
10
{
11
void
ActionDisarmExplosive
()
12
{
13
m_CallbackClass =
ActionDisarmExplosiveCB
;
14
m_CommandUID
=
DayZPlayerConstants
.CMD_ACTIONFB_INTERACT;
15
m_StanceMask
=
DayZPlayerConstants
.STANCEMASK_CROUCH;
16
m_FullBody =
true
;
17
18
m_Text =
"#disarm"
;
19
}
20
21
override
void
CreateConditionComponents
()
22
{
23
m_ConditionItem =
new
CCINonRuined
();
24
m_ConditionTarget =
new
CCTCursor
();
25
}
26
27
override
bool
ActionCondition
(
PlayerBase
player,
ActionTarget
target,
ItemBase
item)
28
{
29
if
(!target)
30
{
31
return
false
;
32
}
33
34
ExplosivesBase
explosive;
35
if
(
Class
.
CastTo
(explosive, target.GetObject()) && item)
36
{
37
return
explosive.GetArmed() && explosive.CanBeDisarmed();
38
}
39
40
return
false
;
41
}
42
43
override
void
OnStartServer
(
ActionData
action_data)
44
{
45
super.OnStartServer(action_data);
46
47
ExplosivesBase
item =
ExplosivesBase
.Cast(action_data.m_Target.GetObject());
48
if
(item.GetDisarmSoundset() !=
string
.Empty)
49
item.StartItemSoundServer(SoundConstants.ITEM_EXPLOSIVE_DISARM);
50
}
51
52
override
void
OnEndServer
(
ActionData
action_data)
53
{
54
super.OnEndServer(action_data);
55
56
ExplosivesBase
item =
ExplosivesBase
.Cast(action_data.m_Target.GetObject());
57
if
(item.GetDisarmSoundset() !=
string
.Empty)
58
item.StopItemSoundServer(SoundConstants.ITEM_EXPLOSIVE_DISARM);
59
}
60
61
override
void
OnFinishProgressServer
(
ActionData
action_data)
62
{
63
ExplosivesBase
explosive =
ExplosivesBase
.Cast(action_data.m_Target.GetObject());
64
ToolBase
tool =
ToolBase
.Cast(action_data.m_MainItem);
65
66
if
(
Math
.
RandomIntInclusive
(0, 100) < tool.GetDisarmRate())
67
{
68
explosive.OnBeforeDisarm();
69
explosive.Disarm(
true
);
70
}
71
else
72
{
73
explosive.SetHealth(
""
,
""
, 0.0);
74
}
75
76
MiscGameplayFunctions.DealAbsoluteDmg(action_data.m_MainItem,
UADamageApplied
.
DEFUSE_TOOLS
);
77
}
78
}
m_CommandUID
int m_CommandUID
Definition
actionbase.c:31
m_StanceMask
int m_StanceMask
Definition
actionbase.c:33
ActionData
ActionBase ActionData
Definition
actionbase.c:30
ActionDisarmExplosive
ActionDisarmExplosiveCB ActionContinuousBaseCB ActionDisarmExplosive()
Definition
actiondisarmexplosive.c:11
ActionTarget
class ActionTargets ActionTarget
ActionBaseCB::m_ActionData
ActionData m_ActionData
Definition
animatedactionbase.c:3
ActionBase::CreateConditionComponents
void CreateConditionComponents()
Definition
actionbase.c:236
ActionContinuousBaseCB
Definition
actioncontinuousbase.c:2
ActionContinuousBase
Definition
actioncontinuousbase.c:121
ActionContinuousBase::OnFinishProgressServer
void OnFinishProgressServer(ActionData action_data)
Definition
actioncontinuousbase.c:283
ActionDisarmExplosiveCB
Definition
actiondisarmexplosive.c:2
ActionDisarmExplosiveCB::CreateActionComponent
override void CreateActionComponent()
Definition
actiondisarmexplosive.c:3
AnimatedActionBase::OnEndServer
override void OnEndServer(ActionData action_data)
Definition
animatedactionbase.c:497
AnimatedActionBase::ActionCondition
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition
animatedactionbase.c:240
AnimatedActionBase::OnStartServer
override void OnStartServer(ActionData action_data)
Definition
animatedactionbase.c:489
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
Math
Definition
enmath.c:7
PlayerBase
Definition
playerbaseclient.c:2
ToolBase
Definition
boneknife.c:2
UADamageApplied
Definition
actionconstants.c:147
UADamageApplied::DEFUSE_TOOLS
const float DEFUSE_TOOLS
Definition
actionconstants.c:155
UATimeSpent
Definition
actionconstants.c:28
UATimeSpent::DISARM_MINE
const float DISARM_MINE
Definition
actionconstants.c:89
DayZPlayerConstants
DayZPlayerConstants
defined in C++
Definition
dayzplayer.c:602
ExplosivesBase
void ExplosivesBase()
Definition
explosivesbase.c:42
Class::CastTo
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
Math::RandomIntInclusive
static int RandomIntInclusive(int min, int max)
Returns a random int number between and min [inclusive] and max [inclusive].
Definition
enmath.c:54
Games
Dayz
scripts
4_world
classes
useractionscomponent
actions
continuous
actiondisarmexplosive.c
Generated by
1.17.0