24.07.2014, 02:39
How To Make Max Fuel in vehicle??
its like Realistic :3 right every vehicle has a different fuel
This SS/ Exlampe
its like Realistic :3 right every vehicle has a different fuel
This SS/ Exlampe
new Float:Fuel[MAX_VEHICLES];
new FuelTimer[MAX_VEHICLES] = -1;
new VehicleOccupied[MAX_VEHICLES] = -1;
#define MAX_FUEL 30.0 // Max fuel capacity
#define FUEL_TIMER_MIN 1 // Minutes per fuel depletion (1 minute loses 1 fuel)
public OnVehicleSpawn(vehicleid)
{
if(FuelTimer[vehicleid] != -1) KillTimer(FuelTimer[vehicleid]);
Fuel[vehicleid] = MAX_FUEL;
SetTimerEx("Fuel_down", FUEL_TIMER_MIN * 60000, true, "i", vehicleid);
VehicleOccupied[vehicleid] = -1;
return 1;
}
public OnVehicleDeath(vehicleid, killerid)
{
KillTimer(FuelTimer[vehicleid]);
Fuel[vehicleid] = 0.0;
return 1;
}
forward Fuel_down(vehicleid);
public Fuel_down(vehicleid)
{
Fuel[vehicleid] -= 1.0;
if(Fuel[vehicleid] <= 1 && VehicleOccupied[vehicleid] != -1) RemovePlayerFromVehicle(VehicleOccupied[vehicleid]);
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(newstate == PLAYER_STATE_DRIVER)
{
if(Fuel[GetPlayerVehicleID(playerid)] <= 0) RemovePlayerFromVehicle(GetPlayerVehicleID(playerid));
else VehicleOccupied[GetPlayerVehicleID(playerid)] = playerid;
}
if(oldstate == PLAYER_STATE_DRIVER && newstate != PLAYER_STATE_DRIVER)
{
VehicleOccupied[GetPlayerVehicleID(playerid)] = -1;
}
return 1;
}
public OnPlayerStateChange(playerid, newstate, oldstate)
{
if(oldstate == PLAYER_STATE_ONFOOT && newstate == PLAYER_STATE_DRIVER)
{
FuelTimer[playerid] = SetTimerEx("Fuel_Down", FUEL_TIMER_MIN * 60000, true, "i", playerid);
}
return 1;
}