13/08/2021 15:00
- É fácil julgar um projeto, quero ver fazer melhor.
Perigo, eu também tinha esse problema mas nada impossível de resolver, deixo um código que uso que resolveu isso para mim:
Perigo, eu também tinha esse problema mas nada impossível de resolver, deixo um código que uso que resolveu isso para mim:
Código:
enum VEHICLE_POS {
Float:PosX = 0.0,
Float:PosY = 0.0,
Float:PosZ = 0.0
};
new VehiclePos[MAX_VEHICLES][VEHICLE_POS];
stock IsVehicleOccupied(vehicleid)
{
new bool:occupied = false;
foreach(Player, id)
{
if(IsPlayerInVehicle(id, vehicleid))
{
occupied = true;
break;
}
}
return (occupied) ? (1) : (0);
}
stock SetVehicleHistoryPos(vehicleid, Float:x, Float:y, Float:z)
{
VehiclePos[vehicleid][PosX] = x;
VehiclePos[vehicleid][PosY] = y;
VehiclePos[vehicleid][PosZ] = z;
}
stock ReturnVehicleHistoryPos(vehicleid)
{
new
Float:x = VehiclePos[vehicleid][PosX],
Float:y = VehiclePos[vehicleid][PosY],
Float:z = VehiclePos[vehicleid][PosZ]
;
SetVehiclePos(vehicleid, x, y, z);
}
public OnPlayerExitVehicle(playerid, vehicleid)
{
new Float:x, Float:y, Float:z;
GetVehiclePos(vehicleid, x, y, z);
SetVehicleHistoryPos(vehicleid, x, y, z);
return 1;
}
public OnVehicleStreamIn(vehicleid, forplayerid)
{
if(!IsVehicleOccupied(vehicleid))
{
ReturnVehicleHistoryPos(vehicleid);
}
return 1;
}