public OnPlayerStateChange(playerid, newstate, oldstate) { printf("OnPlayerStateChange(%d,%d,%d)",playerid, newstate, oldstate); switch(newstate){ case PLAYER_STATE_DRIVER: { new vehicleid = GetPlayerVehicleID(playerid); LastVehicle(playerid,vehicleid); if(DRlist[playerid][FOOT]==1) SetVehicleToRespawn(vehicleid); if(VehicleData[vehicleid][OWNED] == 1){ if(isStringSame(VehicleData[vehicleid][OWNER], Name(playerid), MAX_PLAYER_NAME) != 1){ RemovePlayerFromVehicle(playerid); SendCustomMessage(playerid,COLOR_ORANGE,"car-owner",VehicleData[vehicleid][OWNER]); if(VehicleData[vehicleid][DRIVED]<=0) SetVehicleToRespawn(vehicleid); }else VehicleData[vehicleid][DRIVED]=1; }else if(VehicleData[vehicleid][RPG]>0){ if(VehicleData[vehicleid][RPG] > GetRPGLevel(playerid)){ RemovePlayerFromVehicle(playerid); SendCustomMessageNum(playerid, COLOR_ORANGE,"rpg_lowlvl",VehicleData[vehicleid][RPG]); if(VehicleData[vehicleid][DRIVED]<=0) SetVehicleToRespawn(vehicleid); }else VehicleData[vehicleid][DRIVED]=1; } } case PLAYER_STATE_ONFOOT:{ if(oldstate == PLAYER_STATE_DRIVER){ new vehicleid = GetLastVehicle(playerid); printf("Id %d",vehicleid); if(VehicleData[vehicleid][TMP]) DestroyVehicle(vehicleid); } } } return 1; }