DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
ActionRepairItemWithBlowtorch.c
См. документацию.
2{
7}
8
10{
12 {
13 m_CallbackClass = ActionRepairItemWithBlowtorchCB;
14 m_SpecialtyWeight = UASoftSkillsWeight.PRECISE_LOW;
15
16 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_FLAME_REPAIR;
17 m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT | DayZPlayerConstants.STANCEMASK_CROUCH;
18 m_FullBody = true;
19 m_LockTargetOnUse = false;
20 m_Text = "#repair";
21 }
22
24 {
25 m_ConditionItem = new CCINonRuined();
26 m_ConditionTarget = new CCTCursor(UAMaxDistances.REPAIR);
27 }
28
29 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
30 {
31 PluginRepairing moduleRepairing;
32 Class.CastTo(moduleRepairing, GetPlugin(PluginRepairing));
33 Blowtorch bt = Blowtorch.Cast(item);
34
35 return bt.HasEnoughEnergyForRepair(UATimeSpent.BASEBUILDING_REPAIR_MEDIUM) && moduleRepairing && moduleRepairing.CanRepair(item, target.GetObject());
36 }
37
38 override void OnStartAnimationLoopServer(ActionData action_data)
39 {
40 super.OnStartAnimationLoopServer(action_data);
41
42 action_data.m_MainItem.GetCompEM().SwitchOn();
43 }
44
45 override void OnFinishProgressServer(ActionData action_data)
46 {
47 super.OnFinishProgressServer(action_data);
48
49 ItemBase targetItem = ItemBase.Cast(action_data.m_Target.GetObject());
50 if (targetItem)
51 {
52 PluginRepairing moduleRepairing;
53 Class.CastTo(moduleRepairing, GetPlugin(PluginRepairing));
54 moduleRepairing.Repair(action_data.m_Player, action_data.m_MainItem, targetItem, m_SpecialtyWeight);
55 }
56 }
57
58 override void OnEndServer(ActionData action_data)
59 {
60 super.OnEndServer(action_data);
61
62 action_data.m_MainItem.GetCompEM().SwitchOff();
63 }
64}
int m_CommandUID
Определения ActionBase.c:31
int m_StanceMask
Определения ActionBase.c:33
ActionBase ActionData
Определения ActionBase.c:30
ActionRepairItemWithBlowtorchCB ActionContinuousBaseCB ActionRepairItemWithBlowtorch()
Определения ActionRepairItemWithBlowtorch.c:11
class ActionTargets ActionTarget
PluginBase GetPlugin(typename plugin_type)
Определения PluginManager.c:316
void CreateConditionComponents()
Определения ActionBase.c:230
ActionData m_ActionData
Определения AnimatedActionBase.c:3
void OnStartAnimationLoopServer(ActionData action_data)
Определения ActionContinuousBase.c:266
void OnFinishProgressServer(ActionData action_data)
Определения ActionContinuousBase.c:283
override void CreateActionComponent()
Определения ActionRepairItemWithBlowtorch.c:3
override void OnEndServer(ActionData action_data)
Определения AnimatedActionBase.c:497
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Определения AnimatedActionBase.c:240
Определения CCINonRuined.c:2
Определения CCTCursor.c:2
Super root of all classes in Enforce script.
Определения EnScript.c:11
Определения InventoryItem.c:731
Определения PlayerBaseClient.c:2
const float REPAIR
Определения ActionConstants.c:113
const float BASEBUILDING_REPAIR_MEDIUM
Определения ActionConstants.c:68
Определения ActionConstants.c:28
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.