[Help] > Private vehicles fuel.. -
Jacapo - 24.11.2013
Hello sa-mp forum!
I really need help with this:
I got player private vehicle system with saving like that:
Код:
#define MAX_PLAYER_CARS 5
enum Player_Car_Info
{
pCarID,
Float:pX,
Float:pY,
Float:pZ,
pFuel
}
new PlayerCar[MAX_PLAYERS][MAX_PLAYER_CARS][Player_Car_Info];
In onplayerconnect:
Код:
VehicleSystem_Creating(playerid);
Under onplayerconnect:
Код:
function VehicleSystem_Creating(id)
{
for(new i; i < MAX_PLAYER_CARS; i++)
{
LoadPlayerVehicle(id, i);
}
return 1;
}
stock LoadPlayerVehicle(id, SlotID)
{
new s[75];
format(s, sizeof(s), "Vehicles/%s_vehicle_%d.ini", Name(id), SlotID);
if(fexist(s))
{
PlayerCar[id][SlotID][CarID] = dini_Int(s, "ModelID");
PlayerCar[id][SlotID][pX] = dini_Float(s, "X");
PlayerCar[id][SlotID][pY] = dini_Float(s, "Y");
PlayerCar[id][SlotID][pZ] = dini_Float(s, "Z");
PlayerCar[id][SlotID][pFuel] = dini_Int(s, "Fuel");
PlayerCar[id][SlotID][CarID] = CreateVehicle...modelid,x,y,z...
}
return 1;
}
In onplayerdisconnect:
Код:
VehicleSystem_Saving(playerid);
Under onplayerdisconnect:
Код:
function VehicleSystem_Saving(id)
{
for(new i; i < MAX_PLAYER_CARS; i++)
{
SavePlayerVehicle(id, i);
}
return 1;
}
stock SavePlayerVehicle(id, SlotID)
{
new s[75];
format(s, sizeof(s), "Vehicles/%s_vehicle_%d.ini", Name(id), SlotID);
if(fexist(s))
{
GetVehiclePos...
Storing variables..
But now fuel:
dini_IntSet(s, "Fuel", PlayerCar[id][SlotID][pFuel]);
}
return 1;
}
Now when variable pFuel is saved and loaded for specific player vehicle i dont know how to update it so, something like that:
Код:
//Only for test(no timers only test)
public UpdateFuel_PrivateVehs(playerid, vehicleid)
{
PlayerCar[playerid][SlotID][pFuel] -= 1; //Dont know how to make to loosing fuel only for playerґs private vehicle, maybe SlotID can i use as vehicleid?
return 1;
}
Now need function like that:
Код:
stock GetVehicleFuel(playerid, vehicleid)
returns actual fuel of playerґs private vehicle.
Sorry for bad English

But i really need this :/ Thanks for reply.
Re: [Help] > Private vehicles fuel.. -
Jacapo - 25.11.2013
Does anyone know it?
Re: [Help] > Private vehicles fuel.. -
xVIP3Rx - 25.11.2013
If the player is already inside a car, Then we can just check if the car he's inside matches with his cars and return what we need
pawn Код:
stock UpdateFuel_PrivateVehs(playerid)
{
new ID = GetPlayerVehicleID(playerid);
for(new i=0; i<MAX_PLAYER_CARS; i++)
{
if(ID == PlayerCar[playerid][i][CarID])
{
PlayerCar[playerid][i][pFuel] += 1;
//PlayerCar[playerid][i][pFuel] -= 1; // Or whatever
}
}
}
stock GetPlayerVehicleFuel(playerid)
{
new ID = GetPlayerVehicleID(playerid);
for(new i=0; i<MAX_PLAYER_CARS; i++)
{
if(ID == PlayerCar[playerid][i][CarID])
{
PlayerCar[playerid][i][pFuel] += 1;
//PlayerCar[playerid][i][pFuel] -= 1;
}
}
}
And If he isn't, But you know the vehicleid:
pawn Код:
stock GetVehicleFuel(playerid, vehicleid)
{
for(new i=1; i<MAX_PLAYER_CARS; i++)
{
if(vehicleid == PlayerCar[playerid][i][CarID])
{
return PlayerCar[playerid][SlotID][pFuel]
}
}
return 0;
}
Re: [Help] > Private vehicles fuel.. -
Jacapo - 25.11.2013
Thanks for your reply, i will try it.
Edit: Thanks alot again, it works

+REP for good help and also work