1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- class ActionStopEngine: ActionSingleUseBase
- {
- void ActionStopEngine()
- {
- m_CommandUID = DayZPlayerConstants.CMD_ACTIONMOD_STOPENGINE;
- m_StanceMask = DayZPlayerConstants.STANCEMASK_CROUCH | DayZPlayerConstants.STANCEMASK_ERECT;
- m_Text = "#stop_engine";
- }
- override void CreateConditionComponents()
- {
- m_ConditionItem = new CCINone;
- m_ConditionTarget = new CCTNone;
- }
- override bool ActionCondition(PlayerBase player, ActionTarget target, ItemBase item)
- {
- HumanCommandVehicle vehCmd = player.GetCommand_Vehicle();
- if (vehCmd && vehCmd.GetVehicleSeat() == DayZPlayerConstants.VEHICLESEAT_DRIVER)
- {
- Transport trans = vehCmd.GetTransport();
- if (trans)
- {
- Car car;
- if (Class.CastTo(car, trans) && car.EngineIsOn())
- {
- return car.GetSpeedometerAbsolute() <= 8;
- }
- }
- }
- return false;
- }
- override void OnExecuteServer(ActionData action_data)
- {
- HumanCommandVehicle vehCmd = action_data.m_Player.GetCommand_Vehicle();
- if (vehCmd)
- {
- Transport trans = vehCmd.GetTransport();
- if (trans)
- {
- CarScript car;
- if (Class.CastTo(car, trans))
- {
- car.EngineStop();
- }
- }
- }
- }
-
- override void OnExecuteClient(ActionData action_data) {}
-
- override bool CanBeUsedInVehicle()
- {
- return true;
- }
-
- override bool UseMainItem()
- {
- return false;
- }
-
- override bool HasTarget()
- {
- return false;
- }
- };
|