DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено

◆ OnFinishProgressServer()

override void ActionDestroyPart::OnFinishProgressServer ( ActionData action_data)
inlineprivate

См. определение в файле ActionDestroyPart.c строка 56

57 {
58 EntityAI ent = EntityAI.Cast(action_data.m_Target.GetObject());
59 ConstructionBase construction = ConstructionBase.Cast(ent.GetConstructionBasic());
60 ConstructionActionData construction_action_data = action_data.m_Player.GetConstructionActionData();
61 ConstructionPart construction_part = construction_action_data.GetTargetPart();
62
63 if ( construction.CanDestroyPart( construction_part.GetPartName() ) )
64 {
65 //build
66 string part_name = construction_part.GetPartName();
67 string zone_name;
68 DamageSystem.GetDamageZoneFromComponentName(ent,part_name,zone_name);
69
70 if (zone_name != "")
71 {
72 ent.AddHealth(zone_name,"Health",-(ent.GetMaxHealth(zone_name,"")/CYCLES));
73 if (ent.GetHealth(zone_name,"Health") < 1)
74 construction.DestroyPartServer( action_data.m_Player, construction_part.GetPartName(), AT_DESTROY_PART );
75 }
76 else
77 {
78 construction.DestroyPartServer( action_data.m_Player, construction_part.GetPartName(), AT_DESTROY_PART );
79 }
80
81 //add damage to tool
82 action_data.m_MainItem.DecreaseHealth( UADamageApplied.DESTROY, false );
83 }
84 }
class LogManager EntityAI
const int AT_DESTROY_PART
void ConstructionBase(EntityAI parent)
Определения ConstructionBase.c:58
void ConstructionPart(string name, string part_name, string main_part_name, int id, bool is_built, bool is_base, bool is_gate, array< string > required_parts)
Определения ConstructionPart.c:531
PlayerBase m_Player
Определения ActionBase.c:40
ref ActionTarget m_Target
Определения ActionBase.c:39
ItemBase m_MainItem
Определения ActionBase.c:35
static int CYCLES
Определения ActionDestroyPart.c:11
ConstructionPart GetTargetPart()
Определения ConstructionActionData.c:126
string GetPartName()
Определения ConstructionPart.c:198

Перекрестные ссылки AT_DESTROY_PART, ConstructionBase(), CYCLES, UADamageApplied::DESTROY, ConstructionPart::GetPartName(), ConstructionActionData::GetTargetPart(), ActionData::m_MainItem, ActionData::m_Player и ActionData::m_Target.