DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
ActionArmExplosive.c
См. документацию.
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 {
20 m_CallbackClass = ActionArmExplosiveCB;
21 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_CRAFTING;
22 m_FullBody = true;
23 m_SpecialtyWeight = UASoftSkillsWeight.PRECISE_LOW;
24 m_Text = "#STR_ArmExplosive";
25 m_Sound = "craft_universal_0";
26 }
27
29 {
30 m_ConditionTarget = new CCTNonRuined(UAMaxDistances.DEFAULT);
31 m_ConditionItem = new CCINotPresent();
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 return false;
48
49 ItemBase targetItem = ItemBase.Cast(target.GetObject());
50 if (targetItem && targetItem.IsBeingPlaced())
51 return false;
52
53 ExplosivesBase explosive = ExplosivesBase.Cast(target.GetObject());
54
55 return explosive && !explosive.GetArmed();
56 }
57
58 override void OnStartServer(ActionData action_data)
59 {
60 super.OnStartServer(action_data);
61
62 ExplosivesBase item = ExplosivesBase.Cast(action_data.m_Target.GetObject());
63 if (item.GetArmSoundset() != string.Empty)
64 item.StartItemSoundServer(SoundConstants.ITEM_EXPLOSIVE_ARM);
65 }
66
67 override void OnEndServer(ActionData action_data)
68 {
69 super.OnEndServer(action_data);
70
71 ExplosivesBase item = ExplosivesBase.Cast(action_data.m_Target.GetObject());
72 if (item.GetArmSoundset() != string.Empty)
73 item.StopItemSoundServer(SoundConstants.ITEM_EXPLOSIVE_ARM);
74 }
75
76 override void OnFinishProgressServer(ActionData action_data)
77 {
78 super.OnFinishProgressServer(action_data);
79
80 ExplosivesBase explosive = ExplosivesBase.Cast(action_data.m_Target.GetObject());
81 if (explosive)
82 explosive.OnPlacementComplete(action_data.m_Player, explosive.GetPosition(), action_data.m_Player.GetOrientation());
83 }
84}
ActionArmExplosiveCB ActionContinuousBaseCB ActionArmExplosive()
Определения ActionArmExplosive.c:18
int m_CommandUID
Определения ActionBase.c:31
ActionBase ActionData
Определения ActionBase.c:30
class ActionTargets ActionTarget
class DayZCreatureAnimInterface RegisterAnimationEvent(string event_name, string function_name)
void ExplosivesBase()
Определения ExplosivesBase.c:42
EffectSound m_Sound
Определения HungerSoundHandler.c:18
override void CreateActionComponent()
Определения ActionArmExplosive.c:3
override void InitActionComponent()
Определения ActionArmExplosive.c:8
bool HasProgress()
For UI: hiding of progress bar.
Определения ActionBase.c:250
void CreateConditionComponents()
Определения ActionBase.c:230
ActionData m_ActionData
Определения AnimatedActionBase.c:3
override GetInputType()
Определения ActionContinuousBase.c:179
void OnFinishProgressServer(ActionData action_data)
Определения ActionContinuousBase.c:283
override void OnStartServer(ActionData action_data)
Определения AnimatedActionBase.c:489
override void OnEndServer(ActionData action_data)
Определения AnimatedActionBase.c:497
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Определения AnimatedActionBase.c:240
Определения CCINotPresent.c:2
Определения CCTNonRuined.c:2
Определения InventoryItem.c:731
Определения PlayerBaseClient.c:2
const float DEFAULT
Определения ActionConstants.c:112
const float EXPLOSIVE_ARM
Определения ActionConstants.c:104
Определения ActionConstants.c:28
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
const int UA_IN_CRAFTING
Определения constants.c:481