SA-MP Forums Archive
Vehicle Spawning Not Working - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+---- Forum: Help Archive (https://sampforum.blast.hk/forumdisplay.php?fid=89)
+---- Thread: Vehicle Spawning Not Working (/showthread.php?tid=181551)



Vehicle Spawning Not Working - jameskmonger - 06.10.2010

Here's my command:
Код:
	if (strcmp("/buyvehicle", cmdtext, true, 10) == 0)
	{
	    if(IsPlayerInRangeOfPoint(playerid, 1, 542.2538, -1293.2178, 17.2422)) {
			if(!IsAnyVehicleInRange(3, 563.0516, -1282.9344, 17.2482)) {
			    CreateVehicle(586, 563.0516, -1282.9344, 17.2482, 180, -1, -1, 0);
			    return 1;
			} else if(!IsAnyVehicleInRange(3, 556.5441, -1283.1685, 17.2482)) {
			    CreateVehicle(586, 556.5441, -1283.1685, 17.2482, 180, -1, -1, 0);
			    return 1;
			} else if(!IsAnyVehicleInRange(3, 549.0734, -1283.2427, 17.2482)) {
			    CreateVehicle(586, 549.0734, -1283.2427, 17.2482, 180, -1, -1, 0);
			    return 1;
			} else if(!IsAnyVehicleInRange(3, 535.5510, -1283.3774, 17.2422)) {
			    CreateVehicle(586, 535.5510, -1283.3774, 17.2422, 180, -1, -1, 0);
			    return 1;
			} else if(!IsAnyVehicleInRange(3, 528.6564, -1283.4464, 17.2422)) {
			    CreateVehicle(586, 528.6564, -1283.4464, 17.2422, 180, -1, -1, 0);
			    return 1;
			} else if(!IsAnyVehicleInRange(3, 520.9333, -1288.3192, 17.2422)) {
			    CreateVehicle(586, 520.9333, -1288.3192, 17.2422, 180, -1, -1, 0);
			    return 1;
			} else {
				SendClientMessage(playerid, 0xFFFFFFFF, "There is no space - try another dealership.");
				return 1;
			}
		}
		return 1;
	}
And here's IsAnyVehicleInRange:
Код:
stock IsAnyVehicleInRange(Float:range, Float:x, Float:y, Float:z) {
	for(new v=0;v<MAX_VEHICLES; v++) {
		if(IsVehicleInRangeOfPoint(v,range,x,y,z)) //xyz location wherever you want
		{
			return true;
		}
	}
 	return 1;
}
stock IsVehicleInRangeOfPoint(vehicleid, Float:range, Float:x, Float:y, Float:z)
{
	new Float:px, Float:py, Float:pz;
	GetVehiclePos(vehicleid, px, py, pz);
	px -= x;   py -= y;   pz -= z;
	return ((px * px) + (py * py) + (pz * pz)) < (range * range);
}
However, doing /buyvehicle gives me the message "There is no space - try another dealership."
What's wrong?


Re: Vehicle Spawning Not Working - Voldemort - 06.10.2010

because your stock always return that there is some car try this
pawn Код:
stock IsAnyVehicleInRange(Float:range, Float:x, Float:y, Float:z)
{
    for(new v=0;v<MAX_VEHICLES; v++)
    {
        if(IsVehicleInRangeOfPoint(v,range,x,y,z)) //xyz location wherever you want
        {
            return 1;
        }
    }
    return 0;
}
and also cmd by self looks better as this
pawn Код:
if (strcmp("/buyvehicle", cmdtext, true, 10) == 0)
{
    if(IsPlayerInRangeOfPoint(playerid, 1, 542.2538, -1293.2178, 17.2422))
    {
        if(!IsAnyVehicleInRange(3, 563.0516, -1282.9344, 17.2482))
        {
            CreateVehicle(586, 563.0516, -1282.9344, 17.2482, 180, -1, -1, 0);
        }
        else if(!IsAnyVehicleInRange(3, 556.5441, -1283.1685, 17.2482))
        {
            CreateVehicle(586, 556.5441, -1283.1685, 17.2482, 180, -1, -1, 0);
        }
        else if(!IsAnyVehicleInRange(3, 549.0734, -1283.2427, 17.2482))
        {
            CreateVehicle(586, 549.0734, -1283.2427, 17.2482, 180, -1, -1, 0);
        }
        else if(!IsAnyVehicleInRange(3, 535.5510, -1283.3774, 17.2422))
        {
            CreateVehicle(586, 535.5510, -1283.3774, 17.2422, 180, -1, -1, 0);
        }
        else if(!IsAnyVehicleInRange(3, 528.6564, -1283.4464, 17.2422))
        {
            CreateVehicle(586, 528.6564, -1283.4464, 17.2422, 180, -1, -1, 0);
        }
        else if(!IsAnyVehicleInRange(3, 520.9333, -1288.3192, 17.2422))
        {
            CreateVehicle(586, 520.9333, -1288.3192, 17.2422, 180, -1, -1, 0);
        }
        else
        {
            SendClientMessage(playerid, 0xFFFFFFFF, "There is no space - try another dealership.");
        }
    }
    return 1;
}
Dont use return, if you use else if thing


Re: Vehicle Spawning Not Working - jameskmonger - 06.10.2010

Thankyou so much!