96 {
98 Construction construction = base_building.GetConstruction();
99
100
101 string part_name = action_data.m_Target.GetObject().GetActionComponentName( RepairPartActionData.Cast(action_data).m_ComponentIndex );
102 string zone_name;
103 PluginRepairing module_repairing;
104 Class.CastTo(module_repairing,
GetPlugin(PluginRepairing));
105
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);
108
109
110 construction.TakeMaterialsServer(part_name,true);
111
112
113 action_data.m_MainItem.DecreaseHealth( UADamageApplied.REPAIR, false );
114 }
void Construction(BaseBuildingBase parent)
PluginBase GetPlugin(typename plugin_type)