DayZ Scripts
v1.21.156300 ยท Jun 20, 2023
 
Loading...
Searching...
No Matches
ActionArmExplosive.c
Go to the documentation of this file.
2{
3 override void CreateActionComponent()
4 {
6 }
7
8 override void InitActionComponent()
9 {
10 super.InitActionComponent();
11
12 RegisterAnimationEvent("CraftingAction", UA_IN_CRAFTING);
13 }
14};
15
17{
19 {
21 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_CRAFTING;
22 m_FullBody = true;
24 m_Text = "#STR_ArmExplosive";
25 m_Sound = "craft_universal_0";
26 }
27
29 {
32 }
33
34 override typename GetInputType()
35 {
37 }
38
39 override bool HasProgress()
40 {
41 return true;
42 }
43
44 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
45 {
46 if (target.GetParent())
47 {
48 return false;
49 }
50
51 ItemBase tgt_item = ItemBase.Cast(target.GetObject());
52 if (tgt_item && tgt_item.IsBeingPlaced())
53 {
54 return false;
55 }
56
57 ExplosivesBase explosive = ExplosivesBase.Cast(target.GetObject());
58
59 return explosive && !explosive.GetArmed();
60 }
61
62 override void OnFinishProgressServer(ActionData action_data)
63 {
64 ExplosivesBase explosive = ExplosivesBase.Cast(action_data.m_Target.GetObject());
65 if (explosive)
66 {
67 vector orientation = action_data.m_Player.GetOrientation();
68 vector position = action_data.m_Player.GetPosition();
69 position = position + (action_data.m_Player.GetDirection() * 0.5);
70
71 explosive.OnPlacementComplete(action_data.m_Player, position, orientation);
72 }
73 }
74}
protected float m_SpecialtyWeight
Definition ActionBase.c:68
ref CCIBase m_ConditionItem
Definition ActionBase.c:55
ref CCTBase m_ConditionTarget
Definition ActionBase.c:56
protected string m_Text
Definition ActionBase.c:49
protected bool m_FullBody
Definition ActionBase.c:52
class ActionTargets ActionTarget
class DayZCreatureAnimInterface RegisterAnimationEvent(string event_name, string function_name)
void ExplosivesBase()
EffectSound m_Sound
override void InitActionComponent()
override void CreateActionComponent()
override void OnFinishProgressServer(ActionData action_data)
override bool HasProgress()
override void CreateConditionComponents()
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
protected ActionData m_ActionData
PlayerBase m_Player
Definition ActionBase.c:33
ref CABase m_ActionComponent
Definition ActionBase.c:30
ref ActionTarget m_Target
Definition ActionBase.c:32
const float DEFAULT
const float EXPLOSIVE_ARM
DayZPlayerConstants
defined in C++
Definition dayzplayer.c:602
const int UA_IN_CRAFTING
Definition constants.c:437