car help
#1

hello. i have one problem about spawning vehicles. when i spawn a car it will put me in it. when i get out and type the same cmd, it create a second vehicle but it doesnt destroy the first spawned vehicle. i want it to delete the first spawned vehicle before creating a new vehicle but i cant fix it.please help me.
Reply
#2

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]);
Reply
#3

Quote:

Define a variable to store the id of the player's spawned vehicle:

Code:
new CarId[MAX_PLAYERS];
add this line at OnPlayerConnect Callback

Code:
CarId[playerid] = INVALID_VEHICLE_ID;
When player tries to spawn a vehicle, if CarId[playerid] exist detroy it before:

Code:
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)

Code:
if(CarId[playerid] != INVALID_VEHICLE_ID) DestroyVehicle(CarId[playerid]);
__________________

Thanks man your codes work great! +Rep
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)