SA-MP Forums Archive
IsPlayerInVehicle - 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)
+--- Thread: IsPlayerInVehicle (/showthread.php?tid=465747)



IsPlayerInVehicle - AnonScripter - 23.09.2013

why this is not working ?

pawn Код:
public OnPlayerUpdate(playerid)
{  
    new vehicleid;
    vehicleid = IsPlayerInVehicle(playerid,vehicleid);
    if(vehicleid == 598) return SetPlayerWantedLevel(playerid, 4);
    return 1;
}



Re: IsPlayerInVehicle - DanishHaq - 23.09.2013

You can simplify that code a lot.

pawn Код:
public OnPlayerUpdate(playerid)
{  
    IsPlayerInVehicle(playerid, 598) return SetPlayerWantedLevel(playerid, 4);
    return 1;
}



Re: IsPlayerInVehicle - AnonScripter - 23.09.2013

without "if" statement ? but if i have more than 1 id ?
i use "if" statement to make this:
pawn Код:
public OnPlayerUpdate(playerid)
{  
    new vehicleid;
    vehicleid = IsPlayerInVehicle(playerid,vehicleid);
    if(596<=vehicleid<=599) return SetPlayerWantedLevel(playerid, 4);
    return 1;
}



Re: IsPlayerInVehicle - DanishHaq - 23.09.2013

Sorry.. my mistake -_-:

pawn Код:
public OnPlayerUpdate(playerid)
{  
    if(IsPlayerInVehicle(playerid, 598)) return SetPlayerWantedLevel(playerid, 4);
    return 1;
}
But, if you want it like you posted in your last post, try this:

pawn Код:
public OnPlayerUpdate(playerid)
{  
    new vehicleid;
    vehicleid = GetPlayerVehicleID(playerid);
    if(vehicleid > 596 || vehicleid < 599) return SetPlayerWantedLevel(playerid, 4);
    return 1;
}



Re: IsPlayerInVehicle - AnonScripter - 23.09.2013

when you compile it, you got no errors but it didn't work in-game
maybe it shouldn't be on this call back ?


Re: IsPlayerInVehicle - DanishHaq - 23.09.2013

Try OnPlayerStateChange:

pawn Код:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
    if(oldstate == PLAYER_STATE_ONFOOT && newstate == PLAYER_STATE_DRIVER) // Player entered a vehicle as a driver
    {
        new vehicleid = GetPlayerVehicleID(playerid);
        if(vehicleid >= 596 || vehicleid <= 599) return SetPlayerWantedLevel(playerid, 4);
    }
    return 1;
}
I don't see why the first method shouldn't work, are you sure you're in vehicle ID's 596, 597, 598 and/or 599? Try that anyway from above.


Re: IsPlayerInVehicle - AnonScripter - 23.09.2013

didn't work


Re: IsPlayerInVehicle - Konstantinos - 23.09.2013

Because the one you want to check is the modelid not the vehicleid.
pawn Код:
public OnPlayerUpdate( playerid )
{  
    switch( GetVehicleModel( GetPlayerVehicleID( playerid ) ) )
    {
        case 596 .. 599: SetPlayerWantedLevel( playerid, 4 );
    }
    return 1;
}
Change the model IDs to what you want.


Re: IsPlayerInVehicle - AnonScripter - 23.09.2013

it worked thank you, but why you used switch and case ?


Re: IsPlayerInVehicle - PT - 23.09.2013

is more logical than another