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