Dayz
Build 1.29.163047, Scripts Rev. 123548
Dayz Code Explorer by Zeroy
Toggle main menu visibility
Loading...
Searching...
No Matches
actionloadmagazine.c
Go to the documentation of this file.
1
class
ActionLoadMagazineCB
:
ActionContinuousBaseCB
2
{
3
override
void
CreateActionComponent
()
4
{
5
m_ActionData
.m_ActionComponent =
new
CAContinuousRepeat
(
UATimeSpent
.
MAG_LOAD
);
6
}
7
};
8
9
class
ActionLoadMagazine
:
ActionContinuousBase
10
{
11
void
ActionLoadMagazine
()
12
{
13
m_CallbackClass
=
ActionLoadMagazineCB
;
14
m_CommandUID
=
DayZPlayerConstants
.CMD_ACTIONMOD_FILLMAG;
15
m_CommandUIDProne
=
DayZPlayerConstants
.CMD_ACTIONFB_FILLMAG;
16
m_Text
=
"#load_magazine"
;
17
}
18
19
override
bool
HasProneException
()
20
{
21
return
true
;
22
}
23
24
override
void
CreateConditionComponents
()
25
{
26
m_ConditionItem
=
new
CCINonRuined
();
27
m_ConditionTarget
=
new
CCTNonRuined
(
UAMaxDistances
.
DEFAULT
);
28
}
29
30
bool
CanLoadMagazine
(
ActionTarget
target,
ItemBase
item)
31
{
32
Magazine trg;
33
Magazine itm;
34
return
(
Class
.
CastTo
(trg, target.GetObject()) &&
Class
.
CastTo
(itm, item) && itm.GetAmmoCount() < itm.GetAmmoMax() && trg.GetAmmoCount() != 0 && itm.IsCompatiableAmmo( trg ) );
35
}
36
37
override
bool
ActionConditionContinue
(
ActionData
action_data )
38
{
39
return
CanLoadMagazine
(action_data.m_Target, action_data.m_MainItem);
40
}
41
42
override
bool
ActionCondition
(
PlayerBase
player,
ActionTarget
target,
ItemBase
item )
43
{
44
return
CanLoadMagazine
(target, item);
45
}
46
47
override
bool
CanBePerformedFromQuickbar
()
48
{
49
return
true
;
50
}
51
52
override
void
OnExecuteServer
(
ActionData
action_data )
53
{
54
//Param1<float> timeSpendParam;
55
//if( !Class.CastTo(timeSpendParam, action_data.m_ActionComponent.GetACData()) ) return;
56
57
Magazine trg;
58
Magazine itm;
59
if
(
Class
.
CastTo
(trg, action_data.m_Target.GetObject()) &&
Class
.
CastTo
(itm, action_data.m_MainItem) )
60
{
61
float
dmg;
62
string
ammoType;
63
64
if
( trg.ServerAcquireCartridge(dmg, ammoType) )
65
{
66
if
( !itm.ServerStoreCartridge(dmg, ammoType) )
67
trg.ServerStoreCartridge(dmg, ammoType);
68
else
69
itm.ApplyManipulationDamage();
//damages magazine
70
}
71
72
trg.SetSynchDirty();
73
itm.SetSynchDirty();
74
}
75
}
76
};
77
78
class
ActionLoadMagazineQuickCB
:
ActionContinuousBaseCB
79
{
80
override
void
CreateActionComponent
()
81
{
82
m_ActionData
.m_ActionComponent =
new
CAContinuousRepeat
(
UATimeSpent
.
MAG_LOAD
);
83
}
84
};
85
86
class
ActionLoadMagazineQuick
:
ActionContinuousBase
87
{
88
void
ActionLoadMagazineQuick
()
89
{
90
m_CallbackClass
=
ActionLoadMagazineQuickCB
;
91
m_CommandUID
=
DayZPlayerConstants
.CMD_ACTIONMOD_FILLMAG;
92
m_CommandUIDProne
=
DayZPlayerConstants
.CMD_ACTIONFB_FILLMAG;
93
}
94
95
override
bool
HasProneException
()
96
{
97
return
true
;
98
}
99
100
override
typename
GetInputType
()
101
{
102
return
ContinuousWeaponManipulationActionInput
;
103
}
104
105
override
void
CreateConditionComponents
()
106
{
107
m_ConditionItem
=
new
CCINonRuined
();
108
m_ConditionTarget
=
new
CCTSelf
;
109
}
110
111
override
bool
HasTarget
()
112
{
113
return
false
;
114
}
115
116
bool
CanLoadMagazine
(
PlayerBase
player,
ItemBase
item )
117
{
118
Magazine mag = Magazine.Cast( item );
119
120
return
mag && player.GetWeaponManager().GetPreparedMagazine() != null && mag.GetAmmoCount() < mag.GetAmmoMax();
121
}
122
123
override
bool
ActionConditionContinue
(
ActionData
action_data )
124
{
125
return
CanLoadMagazine
(action_data.m_Player, action_data.m_MainItem);
126
}
127
128
override
bool
ActionCondition
(
PlayerBase
player,
ActionTarget
target,
ItemBase
item )
129
{
130
return
CanLoadMagazine
(player, item);
131
}
132
133
override
void
OnExecuteServer
(
ActionData
action_data )
134
{
135
//Param1<float> timeSpendParam;
136
//if( !Class.CastTo(timeSpendParam, action_data.m_ActionComponent.GetACData()) ) return;
137
138
Magazine itm = Magazine.Cast(action_data.m_MainItem);
139
Magazine trg = action_data.m_Player.GetWeaponManager().GetPreparedMagazine();
140
141
if
( !itm || !trg )
142
return
;
143
144
float
dmg;
145
string
ammoType;
146
147
if
( trg.ServerAcquireCartridge(dmg, ammoType) )
148
{
149
if
( !itm.ServerStoreCartridge(dmg, ammoType) )
150
trg.ServerStoreCartridge(dmg, ammoType);
151
else
152
itm.ApplyManipulationDamage();
//damages magazine
153
}
154
155
trg.SetSynchDirty();
156
itm.SetSynchDirty();
157
//manipulationDamage
158
//if(trg.GetAmmoCount() > 0 )
159
//trg.SetSynchDirty();
160
//itm.SetSynchDirty();
161
}
162
};
ActionData
ActionBase ActionData
Definition
actionbase.c:30
ActionTarget
class ActionTargets ActionTarget
ActionBaseCB::m_ActionData
ActionData m_ActionData
Definition
animatedactionbase.c:3
ActionBase::m_Text
string m_Text
Definition
actionbase.c:64
ActionBase::m_ConditionItem
ref CCIBase m_ConditionItem
Definition
actionbase.c:70
ActionBase::m_ConditionTarget
ref CCTBase m_ConditionTarget
Definition
actionbase.c:71
ActionContinuousBaseCB
Definition
actioncontinuousbase.c:2
ActionContinuousBase::ActionContinuousBase
void ActionContinuousBase()
Definition
actioncontinuousbase.c:124
ActionLoadMagazineCB
Definition
actionloadmagazine.c:2
ActionLoadMagazineCB::CreateActionComponent
override void CreateActionComponent()
Definition
actionloadmagazine.c:3
ActionLoadMagazine::ActionConditionContinue
override bool ActionConditionContinue(ActionData action_data)
Definition
actionloadmagazine.c:37
ActionLoadMagazine::OnExecuteServer
override void OnExecuteServer(ActionData action_data)
Definition
actionloadmagazine.c:52
ActionLoadMagazine::CanBePerformedFromQuickbar
override bool CanBePerformedFromQuickbar()
Definition
actionloadmagazine.c:47
ActionLoadMagazine::CreateConditionComponents
override void CreateConditionComponents()
Definition
actionloadmagazine.c:24
ActionLoadMagazine::CanLoadMagazine
bool CanLoadMagazine(ActionTarget target, ItemBase item)
Definition
actionloadmagazine.c:30
ActionLoadMagazine::ActionCondition
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition
actionloadmagazine.c:42
ActionLoadMagazine::ActionLoadMagazine
void ActionLoadMagazine()
Definition
actionloadmagazine.c:11
ActionLoadMagazine::HasProneException
override bool HasProneException()
Definition
actionloadmagazine.c:19
ActionLoadMagazineQuickCB
Definition
actionloadmagazine.c:79
ActionLoadMagazineQuickCB::CreateActionComponent
override void CreateActionComponent()
Definition
actionloadmagazine.c:80
ActionLoadMagazineQuick::ActionConditionContinue
override bool ActionConditionContinue(ActionData action_data)
Definition
actionloadmagazine.c:123
ActionLoadMagazineQuick::OnExecuteServer
override void OnExecuteServer(ActionData action_data)
Definition
actionloadmagazine.c:133
ActionLoadMagazineQuick::ActionLoadMagazineQuick
void ActionLoadMagazineQuick()
Definition
actionloadmagazine.c:88
ActionLoadMagazineQuick::CreateConditionComponents
override void CreateConditionComponents()
Definition
actionloadmagazine.c:105
ActionLoadMagazineQuick::CanLoadMagazine
bool CanLoadMagazine(PlayerBase player, ItemBase item)
Definition
actionloadmagazine.c:116
ActionLoadMagazineQuick::ActionCondition
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Definition
actionloadmagazine.c:128
ActionLoadMagazineQuick::GetInputType
override GetInputType()
Definition
actionloadmagazine.c:100
ActionLoadMagazineQuick::HasTarget
override bool HasTarget()
Definition
actionloadmagazine.c:111
ActionLoadMagazineQuick::HasProneException
override bool HasProneException()
Definition
actionloadmagazine.c:95
AnimatedActionBase::m_CommandUIDProne
int m_CommandUIDProne
Definition
animatedactionbase.c:144
AnimatedActionBase::m_CommandUID
int m_CommandUID
Definition
animatedactionbase.c:143
AnimatedActionBase::m_CallbackClass
m_CallbackClass
Definition
animatedactionbase.c:145
CAContinuousRepeat
Definition
cacontinuousrepeat.c:2
CCINonRuined
Definition
ccinonruined.c:2
CCTNonRuined
Definition
cctnonruined.c:2
CCTSelf
Definition
cctself.c:2
Class
Super root of all classes in Enforce script.
Definition
enscript.c:11
ContinuousWeaponManipulationActionInput
Definition
actioninput.c:913
ItemBase
Definition
inventoryitem.c:742
PlayerBase
Definition
playerbaseclient.c:2
UAMaxDistances
Definition
actionconstants.c:110
UAMaxDistances::DEFAULT
const float DEFAULT
Definition
actionconstants.c:112
UATimeSpent
Definition
actionconstants.c:28
UATimeSpent::MAG_LOAD
const float MAG_LOAD
Definition
actionconstants.c:94
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
actionloadmagazine.c
Generated by
1.17.0