DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
ActionUnMountBarbedWire.c
См. документацию.
8
10{
12 {
14 m_CommandUID = DayZPlayerConstants.CMD_ACTIONFB_INTERACT;
15 m_FullBody = true;
16 m_StanceMask = DayZPlayerConstants.STANCEMASK_ERECT;
17
18 m_SpecialtyWeight = UASoftSkillsWeight.ROUGH_HIGH;
19 m_Text = "#unmount_barbed_wire";
20 }
21
27
28 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
29 {
30 BaseBuildingBase base_building = BaseBuildingBase.Cast(target.GetObject());
31 if (base_building && base_building.CanUseConstruction() && base_building.CanUseConstructionBuild())
32 {
33 if (!base_building.IsPlayerInside(player,""))
34 return false;
35
36 BarbedWire barbed_wire = GetBarbedWire(target);
37 return (barbed_wire && barbed_wire.IsMounted());
38 }
39
40 return false;
41 }
42
43 override void OnFinishProgressServer(ActionData action_data)
44 {
45 BarbedWireActionData actionDataBW = BarbedWireActionData.Cast(action_data);
46 BaseBuildingBase base_building = BaseBuildingBase.Cast(actionDataBW.m_Target.GetObject());
47
48 //unmount and refresh parent
49 BarbedWire wire = BarbedWire.Cast(base_building.FindAttachmentBySlotName(actionDataBW.m_SlotName));
50 wire.SetMountedState(false);
51 }
52
53 override string GetZoneSelection(ActionTarget target)
54 {
55 BaseBuildingBase base_building = BaseBuildingBase.Cast(target.GetObject());
56 string selection = base_building.GetActionComponentName(target.GetComponentIndex());
57
58 if (selection.Length() > 0)
59 {
60 int delimiter_index = selection.IndexOfFrom(0, "_mounted");
61 if (delimiter_index > -1)
62 {
63 selection = selection.Substring(0, delimiter_index);
64 }
65 /*else if (!selection.Contains("_barbedwire_") && selection.Contains("_wall_"))
66 {
67 selection.Insert(selection.Length(),"_barbedwire_1");
68 }*/
69 }
70 //Print(selection);
71 return selection;
72 }
73
74 override string GetAdminLogMessage(ActionData action_data)
75 {
76 string message = string.Format("Player %1 Unmounted BarbedWire from %2", action_data.m_Player, action_data.m_Target.GetObject().ClassName());
77 return message;
78 }
79}
int m_StanceMask
Определения ActionBase.c:33
ActionBase ActionData
Определения ActionBase.c:30
class ActionTargets ActionTarget
float m_SpecialtyWeight
Определения ActionBase.c:77
string m_Text
Определения ActionBase.c:58
ref CCIBase m_ConditionItem
Определения ActionBase.c:64
bool m_FullBody
Определения ActionBase.c:61
ref CCTBase m_ConditionTarget
Определения ActionBase.c:65
ActionData m_ActionData
Определения AnimatedActionBase.c:3
void ActionMountBarbedWire()
Определения ActionMountBarbedWire.c:24
BarbedWire GetBarbedWire(ActionTarget target)
Определения ActionMountBarbedWire.c:166
override void CreateConditionComponents()
Определения ActionUnMountBarbedWire.c:22
override void OnFinishProgressServer(ActionData action_data)
Определения ActionUnMountBarbedWire.c:43
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionUnMountBarbedWire.c:28
override string GetZoneSelection(ActionTarget target)
Определения ActionUnMountBarbedWire.c:53
void ActionUnmountBarbedWire()
Определения ActionUnMountBarbedWire.c:11
override string GetAdminLogMessage(ActionData action_data)
Определения ActionUnMountBarbedWire.c:74
override void CreateActionComponent()
Определения ActionUnMountBarbedWire.c:3
int m_CommandUID
Определения AnimatedActionBase.c:143
override bool IsPlayerInside(PlayerBase player, string selection)
Определения Fence.c:615
override bool CanUseConstructionBuild()
Определения Fence.c:718
Определения Fence.c:2
Определения CCINonRuined.c:2
Определения CCTNonRuined.c:2
Определения InventoryItem.c:731
Определения PlayerBaseClient.c:2
const float BASEBUILDING
Определения ActionConstants.c:116
const float DEFAULT_CONSTRUCT
Определения ActionConstants.c:33
Определения ActionConstants.c:28
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602
proto native int Length()
Returns length of string.
proto string Substring(int start, int len)
Substring of 'str' from 'start' position 'len' number of characters.
proto native int IndexOfFrom(int start, string sample)
Finds 'sample' in 'str' from 'start' position. Returns -1 when not found.
static proto string Format(string fmt, void param1=NULL, void param2=NULL, void param3=NULL, void param4=NULL, void param5=NULL, void param6=NULL, void param7=NULL, void param8=NULL, void param9=NULL)
Gets n-th character from string.