SA-MP Forums Archive
IsVehicleOccupied - 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: IsVehicleOccupied (/showthread.php?tid=235783)



IsVehicleOccupied - lewismichaelbbc - 06.03.2011

Hi, i am wanting to put a player in a car onplayerspawn. But when i connect to the server, it just crashes.

:
pawn Code:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if (strcmp("/ready", cmdtext, true, 10) == 0)
    {
        if(IsVehicleOccupied(car1))
        {
            PutPlayerInVehicle(playerid, car2);
        }
        else
        {
            PutPlayerInVehicle(playerid, car1);
            TogglePlayerControllable(playerid, 0);
            return 1;
            }
        return 1;
    }
    return 0;
}
This is the script that i want to work when a player spawns, but when i do this:

pawn Code:
public OnPlayerSpawn(playerid)
    {
        if(IsVehicleOccupied(car1))
        {
            PutPlayerInVehicle(playerid, car2);
        }
        else
        {
            PutPlayerInVehicle(playerid, car1);
            TogglePlayerControllable(playerid, 0);
            return 1;
            }
        return 1;
    }
    return 0;
}
The server just crashes. Please can someone correct my mistakes, Thank you very much


Re: IsVehicleOccupied - [WF]Demon - 06.03.2011

may we see the IsVehicleOccupied function?


Re: IsVehicleOccupied - lewismichaelbbc - 06.03.2011

pawn Code:
stock IsVehicleOccupied(vehicleid) // Returns 1 if there is anyone in the vehicle
{
    foreach(Player,i)
    {
        if(IsPlayerInAnyVehicle(i))
        {
            if(GetPlayerVehicleID(i)==vehicleid)
            {
                return 1;
            }
            else
            {
                return 0;
            }
        }
    }
}



Re: IsVehicleOccupied - lewismichaelbbc - 06.03.2011

If someone cant do it for me, could someone even tell me how to do it myself? Please!


Re: IsVehicleOccupied - rjjj - 06.03.2011

The PutPlayerInVehicle function have to have 3 parameters, and you put only 2

I think that car1 and car2 are global variables, so, let's go.

Look, i fixed it for you:

pawn Code:
public OnPlayerCommandText(playerid, cmdtext[])
{
    if(strcmp("/ready",cmdtext,true,6)==0)
    {
        if(IsVehicleOccupied(car1))
        {
            PutPlayerInVehicle(playerid, car2, 0);//There was only 2 parameters
        }
        else
        {
            PutPlayerInVehicle(playerid, car1, 0);//There was only 2 parameters
            TogglePlayerControllable(playerid, 0);//This line freezes the player that used the command
            return 1;
        }
        return 1;
    }
    return 0;
}
I hope that i have helped


Re: IsVehicleOccupied - lewismichaelbbc - 06.03.2011

Thanks!