if(PlayerInfo[playerid][pJobTaxi] == 1)
{
}
else {
if(modelid == 420 || modelid == 438)
{
RemovePlayerFromVehicle(playerid);
ClearAnimations(playerid);
return SendClientMessage(playerid, 0xFF0000FF, "You are not a Taxi Driver");
}
else if(modelid == 420 || modelid == 438){
PutPlayerInVehicle(playerid, vehicleid, 1);
}
}
Use a state check... You've obviously got this code in the callback, but you aren't checking if they are a driver or a passenger.
You should almost be using OnPlayerStateChange as it's more reliable, but it could be done OnPlayerEnterVehicle by checking "ispassenger". |
public OnPlayerStateChange(playerid, newstate, oldstate) { if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER) { switch(GetVehicleModel(GetPlayerVehicleID(playerid))) { case 420, 438: { if(PlayerData[playerid][pJobTaxi]) { //start a job } else { RemovePlayerFromVehicle(playerid); //player is not a taxi driver, then remove him from vehicle SendClientMessage(playerid, 0xFF0000FF, "You are not a Taxi Driver"); } } } } return true; }
Try this.
Код HTML:
public OnPlayerStateChange(playerid, newstate, oldstate) { if(newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER) { switch(GetVehicleModel(GetPlayerVehicleID(playerid))) { case 420, 438: { if(PlayerData[playerid][pJobTaxi]) { //start a job } else { RemovePlayerFromVehicle(playerid); //player is not a taxi driver, then remove him from vehicle SendClientMessage(playerid, 0xFF0000FF, "You are not a Taxi Driver"); } } } } return true; } |