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
bool HasTarget()
Action is performed on target, not with item itself, when set to true.
ref CCIBase m_ConditionItem
ref CCTBase m_ConditionTarget
void ActionDismantlePart()
float SetCallbackDuration(ItemBase item)
override void CreateActionComponent()
override void OnFinishProgressServer(ActionData action_data)
override bool ActionConditionContinue(ActionData action_data)
override void OnActionInfoUpdate(PlayerBase player, ActionTarget target, ItemBase item)
override string GetAdminLogMessage(ActionData action_data)
override ActionData CreateActionData()
override void CreateConditionComponents()
override bool ReadFromContext(ParamsReadContext ctx, out ActionReciveData action_recive_data)
override void SetBuildingAnimation(ItemBase item)
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
override void WriteToContext(ParamsWriteContext ctx, ActionData action_data)
bool RepairCondition(PlayerBase player, ActionTarget target, ItemBase item, bool camera_check)
override void HandleReciveData(ActionReciveData action_recive_data, ActionData action_data)
override string GetText()
override bool IsFacingPlayer(PlayerBase player, string selection)
override bool IsFacingCamera(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
void Construction(BaseBuildingBase parent)
DayZPlayerConstants
defined in C++
Serializer ParamsReadContext
Serializer ParamsWriteContext
static proto bool CastTo(out Class to, Class from)
Try to safely down-cast base class to child class.
PluginBase GetPlugin(typename plugin_type)