54 lines
1.9 KiB
Plaintext
54 lines
1.9 KiB
Plaintext
/*
|
|
kp_fuel_consumption.sqf
|
|
Author: Wyqer
|
|
Website: www.killahpotatoes.de
|
|
Date: 2017-02-02
|
|
|
|
Description:
|
|
This script handles the fuel consumption of vehicles, so that refueling will be necessary more often.
|
|
|
|
Parameters:
|
|
_this select 0 - OBJECT - Vehicle
|
|
|
|
Method:
|
|
execVM
|
|
|
|
Example for initPlayerLocal.sqf:
|
|
player addEventHandler ["GetInMan", {[ _this select 2] execVM "scripts\kp_fuel_consumption.sqf";}];
|
|
*/
|
|
|
|
//CONFIG
|
|
// Time in Minutes till a full tank depletes when the vehicle is standing with running engine
|
|
private _kp_neutral_consumption = KP_liberation_fuel_neutral;
|
|
// Time in Minutes till a full tank depletes when the vehicle is driving
|
|
private _kp_normal_consumption = KP_liberation_fuel_normal;
|
|
// Time in Minutes till a full tank depletes when the vehicle is driving at max speed
|
|
private _kp_max_consumption = KP_liberation_fuel_max;
|
|
|
|
/*
|
|
DO NOT EDIT BELOW
|
|
*/
|
|
|
|
if (isNil "kp_fuel_consumption_vehicles") then {
|
|
kp_fuel_consumption_vehicles = [];
|
|
};
|
|
|
|
if (!((_this select 0) in kp_fuel_consumption_vehicles)) then {
|
|
kp_fuel_consumption_vehicles pushBack (_this select 0);
|
|
while {local (_this select 0)} do {
|
|
if (isEngineOn (_this select 0)) then {
|
|
if (speed (_this select 0) > 5) then {
|
|
if (speed (_this select 0) > (getNumber (configFile >> "CfgVehicles" >> typeOf (_this select 0) >> "maxSpeed") * 0.9)) then {
|
|
(_this select 0) setFuel (fuel (_this select 0) - (1 / (_kp_max_consumption * 60)));
|
|
} else {
|
|
(_this select 0) setFuel (fuel (_this select 0) - (1 / (_kp_normal_consumption * 60)));
|
|
};
|
|
} else {
|
|
(_this select 0) setFuel (fuel (_this select 0) - (1 / (_kp_neutral_consumption * 60)));
|
|
};
|
|
};
|
|
uiSleep 1;
|
|
};
|
|
kp_fuel_consumption_vehicles deleteAt (kp_fuel_consumption_vehicles find (_this select 0));
|
|
};
|