Define a variable to store the id of the player's spawned vehicle:
Код:
new CarId[MAX_PLAYERS];
add this line at OnPlayerConnect Callback
Код:
CarId[playerid] = INVALID_VEHICLE_ID;
When player tries to spawn a vehicle, if CarId[playerid] exist detroy it before:
Код:
CMD:v(playerid, params[])
{
new string[128], vID[32], vid, Float, Float:y, Float:z, Float:ang;
if(IsPlayerInAnyVehicle(playerid)) return SendClientMessage(playerid, COLOR_RED, "You cannot spawn vehicle while in passenger sit!");
if(sscanf(params, "s[32]", vID)) return SendClientMessage(playerid, COLOR_RED, "Syntax: /v (carname)");
if(isnumeric(vID)) vid = strval(vID);
else vid = GetVehicleModelIDFromName(vID);
if (vid < 400 || vid > 611) return SendClientMessage(playerid, COLOR_RED, "Vehicle ID Maxium (Left): 400 - Maxium (Right): 611");
GetPlayerPos(playerid,x,y,z);
GetPlayerFacingAngle(playerid,ang);
if(CarId[playerid] != INVALID_VEHICLE_ID) DestroyVehicle(CarId[playerid]);
CarId[playerid] = CreateVehicle(vid, x, y, z, ang, -1, -1, 6000);
LinkVehicleToInterior(CarId[playerid], GetPlayerInterior(playerid));
SetVehicleVirtualWorld(CarId[playerid], GetPlayerVirtualWorld(playerid));
PutPlayerInVehicle(playerid, CarId[playerid], 0);
format(string, sizeof(string), "You've spawned vehicle id %i - %s", vid, VehicleName[vid - 400]);
SendClientMessage(playerid, COLOR_YELLOW, string);
return 1;
}
Destroy vehicle when player disconnects (OnPlayerDisconnect Callback)
Код:
if(CarId[playerid] != INVALID_VEHICLE_ID) DestroyVehicle(CarId[playerid]);