DayZ 1.27
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
ActionOperatePanelPowerStation.c
См. документацию.
2{
3 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
4 {
5 if (!target)
6 return false;
7
8 Land_WarheadStorage_PowerStation powerStation = Land_WarheadStorage_PowerStation.Cast(target.GetObject());
9 if (!powerStation)
10 return false;
11
12 int leverComponent = target.GetComponentIndex();
13 string leverName = powerStation.GetActionComponentName(leverComponent);
14 int leverIndex = powerStation.GetLeverIndexByComponentName(leverName);
15
16 return (leverIndex != 0);
17 }
18
19 override void OnStart(ActionData action_data)
20 {
21 super.OnStart(action_data);
22
23 Land_WarheadStorage_PowerStation powerStation = Land_WarheadStorage_PowerStation.Cast(action_data.m_Target.GetObject());
24 if (!powerStation)
25 return;
26
27 int leverComponent = action_data.m_Target.GetComponentIndex();
28 string leverName = powerStation.GetActionComponentName(leverComponent);
29 int leverIndex = powerStation.GetLeverIndexByComponentName(leverName);
30 if (leverIndex)
31 {
32 if (GetGame().IsServer())
33 powerStation.AnimateLever(leverIndex);
34 }
35 }
36}
ActionBase ActionData
Определения ActionBase.c:30
class ActionTargets ActionTarget
void ActionOperatePanel()
Определения ActionOperatePanel.c:3
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Определения ActionOperatePanelPowerStation.c:3
override void OnStart(ActionData action_data)
Определения InventoryItem.c:731
void AnimateLever(int index, int state=-1)
int GetLeverIndexByComponentName(string name)
Определения PlayerBaseClient.c:2
proto native CGame GetGame()