DayZ 1.30
DayZ Explorer by KGB
 
Загрузка...
Поиск...
Не найдено
ActionStartEngineMotorBike.c
См. документацию.
2{
3 override void CreateActionComponent()
4 {
6 }
7}
8
10{
12 {
13 m_CallbackClass = ActionStartEngineMotorbikeCB;
14 m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_STARTENGINE;
15 m_StanceMask = DayZPlayerConstants.STANCEMASK_ALL;
16 m_LockTargetOnUse = false;
17 m_Text = "#start_the_car";
18 }
19
21 {
24 }
25
26 override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
27 {
28 HumanCommandVehicle vehCommand = player.GetCommand_Vehicle();
29 if (!vehCommand)
30 return false;
31
32 auto vehicle = MotorbikeScript.Cast(vehCommand.GetTransport());
33 if (!vehicle || vehicle.EngineIsOn())
34 return false;
35
36 return vehicle.CrewDriver() == player;
37 }
38
39 override void OnFinishProgress(ActionData action_data)
40 {
41 HumanCommandVehicle vehCommand = action_data.m_Player.GetCommand_Vehicle();
42 if (!vehCommand)
43 return;
44
45 auto vehicle = MotorbikeScript.Cast(vehCommand.GetTransport());
46 if (!vehicle)
47 return;
48
49 if (vehicle.GetNetworkMoveStrategy() == NetworkMoveStrategy.PHYSICS)
50 {
51 // Only perform on clients (or robos), validation is performed in C++ with respect to scripted 'Motorbike.OnBeforeEngineStart'
52 if (action_data.m_Player.GetInstanceType() == DayZPlayerInstanceType.INSTANCETYPE_SERVER)
53 {
54 return;
55 }
56 }
57 else
58 {
59 if (g_Game.IsClient())
60 return;
61 }
62
63 vehicle.EngineStart();
64 }
65
66 override void OnExecute(ActionData action_data)
67 {
68 HumanCommandVehicle vehCommand = action_data.m_Player.GetCommand_Vehicle();
69 if (!vehCommand)
70 return;
71
72 auto vehicle = MotorbikeScript.Cast(vehCommand.GetTransport());
73 if (vehicle)
74 vehicle.OnIgnition();
75 }
76
77 override bool CanBeUsedInVehicle()
78 {
79 return true;
80 }
81
82 override bool HasTarget()
83 {
84 return false;
85 }
86
87 override bool UseMainItem()
88 {
89 return false;
90 }
91
93 private const int SOUND_IGNITION_DELAY = 700; // ms, delay for ignition sound to match animation of hand touching the key
94 private const float ROUGH_SPECIALTY_WEIGHT = 0.5;
95 static const float MINIMUM_BATTERY_ENERGY = 5.0;
96 bool m_BatteryCon = false;
97 bool m_SparkCon = false;
98 bool m_BeltCon = false;
99 bool m_FuelCon = false;
100}
string m_Text
Определения ActionBase.c:57
bool HasTarget()
Определения ActionBase.c:259
void CreateConditionComponents()
Определения ActionBase.c:245
bool m_LockTargetOnUse
Определения ActionBase.c:59
ref CCIBase m_ConditionItem
Определения ActionBase.c:63
ref CCTBase m_ConditionTarget
Определения ActionBase.c:64
bool UseMainItem()
Определения ActionBase.c:417
int m_StanceMask
Определения ActionBase.c:61
bool CanBeUsedInVehicle()
Определения ActionBase.c:361
const int SOUND_IGNITION_DELAY
DEPRECATED.
Определения ActionStartEngine.c:95
static const float MINIMUM_BATTERY_ENERGY
Определения ActionStartEngine.c:97
bool m_SparkCon
Определения ActionStartEngine.c:99
bool m_BatteryCon
Определения ActionStartEngine.c:98
bool m_FuelCon
Определения ActionStartEngine.c:101
bool m_BeltCon
Определения ActionStartEngine.c:100
const float ROUGH_SPECIALTY_WEIGHT
Определения ActionStartEngine.c:96
ActionStartEngineMotorbikeCB ActionContinuousBaseCB ActionStartEngineMotorbike()
Определения ActionStartEngineMotorBike.c:11
void ActionTarget(Object object, Object parent, int componentIndex, vector cursorHitPos, float utility, string surfaceName="")
Определения ActionTargets.c:125
DayZGame g_Game
Определения DayZGame.c:4074
void MotorbikeScript()
Определения MotorbikeScript.c:105
ActionData m_ActionData
Определения AnimatedActionBase.c:3
void OnFinishProgress(ActionData action_data)
Определения ActionContinuousBase.c:247
PlayerBase m_Player
Определения ActionBase.c:40
Определения ActionBase.c:22
override void CreateActionComponent()
Определения ActionStartEngineMotorBike.c:3
override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
Определения AnimatedActionBase.c:244
void OnExecute(ActionData action_data)
Определения AnimatedActionBase.c:175
Определения CCINone.c:2
Определения CCTNone.c:2
proto native Transport GetTransport()
Определения human.c:712
Определения PlayerBaseClient.c:2
const float START_ENGINE
Определения ActionConstants.c:102
Определения ActionConstants.c:28
DayZPlayerInstanceType
defined in C++
Определения dayzplayer.c:1084
DayZPlayerConstants
defined in C++
Определения dayzplayer.c:602