72 if ( constrution_part )
74 return "#repair" +
" " + constrution_part.
GetName();
84 if (player.GetBrokenLegs() ==
eBrokenLegs.BROKEN_LEGS)
92 return RepairCondition( action_data.m_Player, action_data.m_Target, action_data.m_MainItem ,
false );
98 Construction construction = base_building.GetConstruction();
101 string part_name = action_data.m_Target.GetObject().GetActionComponentName( RepairPartActionData.Cast(action_data).m_ComponentIndex );
103 PluginRepairing module_repairing;
106 DamageSystem.GetDamageZoneFromComponentName(base_building,part_name,zone_name);
107 module_repairing.Repair(action_data.m_Player,action_data.m_MainItem,base_building,
m_SpecialtyWeight,zone_name);
110 construction.TakeMaterialsServer(part_name,
true);
118 switch( item.Type() )
137 RepairPartActionData action_data =
new RepairPartActionData;
143 super.WriteToContext(ctx, action_data);
144 RepairPartActionData repair_action_data;
148 repair_action_data.m_ComponentIndex = action_data.m_Target.GetComponentIndex();
149 ctx.
Write(repair_action_data.m_ComponentIndex);
155 if(!action_recive_data)
161 super.ReadFromContext(ctx, action_recive_data);
166 if ( !ctx.
Read(component_index) )
176 super.HandleReciveData(action_recive_data, action_data);
186 Object target_object = target.GetObject();
187 if ( target_object && target_object.CanUseConstruction() )
189 string part_name = target_object.GetActionComponentName( target.GetComponentIndex() );
192 Construction construction = base_building.GetConstruction();
193 ConstructionPart construction_part = construction.GetConstructionPart( part_name );
195 if ( construction_part )
213 DamageSystem.GetDamageZoneFromComponentName(base_building,part_name,zone_name);
220 if ( !construction.HasMaterials(part_name,
true) )
237 return " repaired " + action_data.m_Target.GetObject().GetDisplayName() +
" with " + action_data.m_MainItem.GetDisplayName();
class ActionTargets ActionTarget
void Construction(BaseBuildingBase parent)
PluginBase GetPlugin(typename plugin_type)
ref CCIBase m_ConditionItem
ref CCTBase m_ConditionTarget
void ActionDismantlePart()
override void SetBuildingAnimation(ItemBase item)
override string GetText()
override void OnActionInfoUpdate(PlayerBase player, ActionTarget target, ItemBase item)
override bool ReadFromContext(ParamsReadContext ctx, out ActionReciveData action_recive_data)
override string GetAdminLogMessage(ActionData action_data)
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
override void WriteToContext(ParamsWriteContext ctx, ActionData action_data)
override void HandleReciveData(ActionReciveData action_recive_data, ActionData action_data)
override void OnFinishProgressServer(ActionData action_data)
override ActionData CreateActionData()
override bool ActionConditionContinue(ActionData action_data)
bool RepairCondition(PlayerBase player, ActionTarget target, ItemBase item, bool camera_check)
override void CreateConditionComponents()
float SetCallbackDuration(ItemBase item)
override void CreateActionComponent()
override bool IsFacingCamera(string selection)
override bool IsFacingPlayer(PlayerBase player, string selection)
override bool HasProperDistance(string selection, PlayerBase player)
Super root of all classes in Enforce script.
ConstructionPart GetTargetPart()
void SetTargetPart(ConstructionPart target_part)
int m_ComponentIndexRecived
proto bool Write(void value_out)
proto bool Read(void value_in)
const float BASEBUILDING_REPAIR_FAST
DayZPlayerConstants
defined in C++
Serializer ParamsReadContext
proto native CGame GetGame()
Serializer ParamsWriteContext
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.