Guten Morgen alle zu sammen,
Mein Problem is das egal was ich bei OnPlayerStateChange abfrage z.b. Führerschein und wenn ich keinen habe kann ich immer noch fahren
hir der code:
public OnPlayerStateChange(playerid, newstate, oldstate)
{
new modelid = GetVehicleModel(GetPlayerVehicleID(playerid));
if(newstate == PLAYER_STATE_DRIVER)
{
for(new i=0;i<sizeof(FsAutos);i++)
{
if(GetPlayerVehicleID(playerid)==FsAutos[i])
{
formatEx(playerid,0xA0A0A0FF,"autofsaktiv auf : %i EinsteigTut auf: %i",AutoFSaktiv[playerid],EinsteigTut[playerid]);
if(AutoFSaktiv[playerid] == 1 && EinsteigTut[playerid] == 1)
{
SendClientMessage(playerid,0xA0A0A0FF,"Willkommen zur praktischen Prüfung. Als erstes musst du den Motor anlassen.");
SendClientMessage(playerid,0xA0A0A0FF,"Das machst du mit /engine. Abschalten kannst du den Motor mit dem gleichen Befehl.");
SendClientMessage(playerid,0xA0A0A0FF,"Wenn es dunkel ist, schalte mit /lights das Licht an. Mit diesem Befehl kannst du es");
SendClientMessage(playerid,0xA0A0A0FF,"bei Bedarf auch wieder abschalten.");
SendClientMessage(playerid,0xA0A0A0FF,"");
SendClientMessage(playerid,0xA0A0A0FF,"Starte jetzt bitte den Motor.");
EinsteigTut[playerid]=0;
MotorAnlasenTut[playerid]=1;
return 1;
}
else if(AutoFSaktiv[playerid] == 0 && EinsteigTut[playerid] == 0)
{
SendClientMessage(playerid,0xA0A0A0FF,"Du bist in keiner Prüfung.");
RemovePlayerFromVehicle(playerid);
return 1;
}
}
return 1;
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
if(AktuellerCP[playerid] != INVALID_FARMER_CP && FarmerFahrzeug(GetPlayerVehicleID(playerid))) {
if(AktuellerCP[playerid] == 41) {
new rant = random(20000-4000)+4000;
//new rand = random(20000);
DisablePlayerCheckpoint(playerid);
AktuellerCP[playerid] = INVALID_FARMER_CP;
GivePlayerMoney(playerid,rant);
SendClientMessage(playerid,0x00CC00FF, "Ernte Vorgang erfolgreich");
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
RemovePlayerFromVehicle(playerid);
}
else{AktuellerCP[playerid]++;SetPlayerCheckpoint(playerid,FarmerCPS[AktuellerCP[playerid]][0],FarmerCPS[AktuellerCP[playerid]][1],FarmerCPS[AktuellerCP[playerid]][2], 8.0);}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new r=0; r<sizeof(RentBike); r++)
{
if(GetPlayerVehicleID(playerid)==RentBike[r][vehid])
{
formatEx(playerid,0xA0A0A0FF,"%s RentBike Fahrzeug eingestiegen",PlayerName(playerid));
if(BikerKey[playerid] == RentBike[r][bikerrentkey])continue;
if(GetPlayerScore(playerid) >= 3)
{
SendClientMessage(playerid,Gelb,"[Info]: Wir vermieten diese Fahrzeuge nur an Player bis Level 3!");
RemovePlayerFromVehicle(playerid);
return 1;
}
else
{
SendClientMessage(playerid,Rot,"Dieses Fahrzeug kannst du mieten! Tippe /rentbike, wenn du nicht möchtest, dann /exit.");
TogglePlayerControllable(playerid,0);
return 1;
}
}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new t=0; t<sizeof(RentCar); t++)
{
if(GetPlayerVehicleID(playerid)==RentCar[t][vehid])
{
formatEx(playerid,0xA0A0A0FF,"%s Rencar Fahrzeug eingestiegen",PlayerName(playerid));
if(Key[playerid] == RentCar[t][rentkey])continue;
formatEx(playerid,Gelb,"Fahrzeug Name: %s",RentCar[t][CarName]);
formatEx(playerid,Gelb,"Fahrzeug Preis: %i",RentCar[t][VCarPreis]);
SendClientMessage(playerid,Rot,"Dieses Fahrzeug kannst du mieten! Tippe /rentcar, wenn du nicht möchtest, dann /exit.");
TogglePlayerControllable(playerid,0);
return 1;
}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new z=0; z<sizeof(OamtCars); z++)
{
if(GetPlayerVehicleID(playerid) == OamtCars[z])
{
formatEx(playerid,0xA0A0A0FF,"%s Oamt Fahrzeug eingestiegen",PlayerName(playerid));
if(PlayerInfo[playerid][pFraktionsLeader] == 4 || PlayerInfo[playerid][pFraktionsMember] == 4)continue;
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Dieses Fahrzeug gehört dem SA-Ordnungsamt!");
return 1;
}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new u=0; u<sizeof(autokauf); u++)
{
if(GetPlayerVehicleID(playerid)==autokauf[u][VEHID])
{
formatEx(playerid,0xA0A0A0FF,"%s autohaus Fahrzeug eingestiegen",PlayerName(playerid));
TogglePlayerControllable(playerid,0);
SCM(playerid, Gelb, "~*~ Autohaus ~*~");
formatEx(playerid, Gelb,"Name: %s",autokauf[u][FahrzeugName]);
formatEx(playerid, Gelb,"Preis: $%i",autokauf[u][CarPreis]);
formatEx(playerid, Gelb,"Reparaturkosten: $%i",autokauf[u][RepPreis]);
SCM(playerid, Gruen, "Um es zu kaufen, benutze: /buycar");
SCM(playerid, Gelb,"Um das Fahrzeug zu verlassen /exit");
}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new f=0; f<MAX_PLAYERS; f++)
{
if(GetPlayerVehicleID(playerid) == PlayerInfo[f][AdminCar])
{
if(PlayerInfo[playerid][pAdminLevel] >= 1)continue;
SCM(playerid,Rot,"Dieses Fahrzeug is ein Supporter/admin Fahrtzeug du hast nich die berechtigung um dieses Fahrzeug zu fahren!");
RemovePlayerFromVehicle(playerid);
return 1;
}
}
}
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(modelid == 472 || modelid == 473 || modelid == 493 || modelid == 595 || modelid == 484 || modelid == 430 || modelid == 453 || modelid == 452 || modelid == 446 || modelid == 454 )
{
if(PlayerInfo[playerid][pBootschein] == 0)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Du hast keine Bootschein!");
}
else
{
{
new modelid = GetVehicleModel(GetPlayerVehicleID(playerid));
if(newstate == PLAYER_STATE_DRIVER)
{
for(new i=0;i<sizeof(FsAutos);i++)
{
if(GetPlayerVehicleID(playerid)==FsAutos[i])
{
formatEx(playerid,0xA0A0A0FF,"autofsaktiv auf : %i EinsteigTut auf: %i",AutoFSaktiv[playerid],EinsteigTut[playerid]);
if(AutoFSaktiv[playerid] == 1 && EinsteigTut[playerid] == 1)
{
SendClientMessage(playerid,0xA0A0A0FF,"Willkommen zur praktischen Prüfung. Als erstes musst du den Motor anlassen.");
SendClientMessage(playerid,0xA0A0A0FF,"Das machst du mit /engine. Abschalten kannst du den Motor mit dem gleichen Befehl.");
SendClientMessage(playerid,0xA0A0A0FF,"Wenn es dunkel ist, schalte mit /lights das Licht an. Mit diesem Befehl kannst du es");
SendClientMessage(playerid,0xA0A0A0FF,"bei Bedarf auch wieder abschalten.");
SendClientMessage(playerid,0xA0A0A0FF,"");
SendClientMessage(playerid,0xA0A0A0FF,"Starte jetzt bitte den Motor.");
EinsteigTut[playerid]=0;
MotorAnlasenTut[playerid]=1;
return 1;
}
else if(AutoFSaktiv[playerid] == 0 && EinsteigTut[playerid] == 0)
{
SendClientMessage(playerid,0xA0A0A0FF,"Du bist in keiner Prüfung.");
RemovePlayerFromVehicle(playerid);
return 1;
}
}
return 1;
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
if(AktuellerCP[playerid] != INVALID_FARMER_CP && FarmerFahrzeug(GetPlayerVehicleID(playerid))) {
if(AktuellerCP[playerid] == 41) {
new rant = random(20000-4000)+4000;
//new rand = random(20000);
DisablePlayerCheckpoint(playerid);
AktuellerCP[playerid] = INVALID_FARMER_CP;
GivePlayerMoney(playerid,rant);
SendClientMessage(playerid,0x00CC00FF, "Ernte Vorgang erfolgreich");
SetVehicleToRespawn(GetPlayerVehicleID(playerid));
RemovePlayerFromVehicle(playerid);
}
else{AktuellerCP[playerid]++;SetPlayerCheckpoint(playerid,FarmerCPS[AktuellerCP[playerid]][0],FarmerCPS[AktuellerCP[playerid]][1],FarmerCPS[AktuellerCP[playerid]][2], 8.0);}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new r=0; r<sizeof(RentBike); r++)
{
if(GetPlayerVehicleID(playerid)==RentBike[r][vehid])
{
formatEx(playerid,0xA0A0A0FF,"%s RentBike Fahrzeug eingestiegen",PlayerName(playerid));
if(BikerKey[playerid] == RentBike[r][bikerrentkey])continue;
if(GetPlayerScore(playerid) >= 3)
{
SendClientMessage(playerid,Gelb,"[Info]: Wir vermieten diese Fahrzeuge nur an Player bis Level 3!");
RemovePlayerFromVehicle(playerid);
return 1;
}
else
{
SendClientMessage(playerid,Rot,"Dieses Fahrzeug kannst du mieten! Tippe /rentbike, wenn du nicht möchtest, dann /exit.");
TogglePlayerControllable(playerid,0);
return 1;
}
}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new t=0; t<sizeof(RentCar); t++)
{
if(GetPlayerVehicleID(playerid)==RentCar[t][vehid])
{
formatEx(playerid,0xA0A0A0FF,"%s Rencar Fahrzeug eingestiegen",PlayerName(playerid));
if(Key[playerid] == RentCar[t][rentkey])continue;
formatEx(playerid,Gelb,"Fahrzeug Name: %s",RentCar[t][CarName]);
formatEx(playerid,Gelb,"Fahrzeug Preis: %i",RentCar[t][VCarPreis]);
SendClientMessage(playerid,Rot,"Dieses Fahrzeug kannst du mieten! Tippe /rentcar, wenn du nicht möchtest, dann /exit.");
TogglePlayerControllable(playerid,0);
return 1;
}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new z=0; z<sizeof(OamtCars); z++)
{
if(GetPlayerVehicleID(playerid) == OamtCars[z])
{
formatEx(playerid,0xA0A0A0FF,"%s Oamt Fahrzeug eingestiegen",PlayerName(playerid));
if(PlayerInfo[playerid][pFraktionsLeader] == 4 || PlayerInfo[playerid][pFraktionsMember] == 4)continue;
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Dieses Fahrzeug gehört dem SA-Ordnungsamt!");
return 1;
}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new u=0; u<sizeof(autokauf); u++)
{
if(GetPlayerVehicleID(playerid)==autokauf[u][VEHID])
{
formatEx(playerid,0xA0A0A0FF,"%s autohaus Fahrzeug eingestiegen",PlayerName(playerid));
TogglePlayerControllable(playerid,0);
SCM(playerid, Gelb, "~*~ Autohaus ~*~");
formatEx(playerid, Gelb,"Name: %s",autokauf[u][FahrzeugName]);
formatEx(playerid, Gelb,"Preis: $%i",autokauf[u][CarPreis]);
formatEx(playerid, Gelb,"Reparaturkosten: $%i",autokauf[u][RepPreis]);
SCM(playerid, Gruen, "Um es zu kaufen, benutze: /buycar");
SCM(playerid, Gelb,"Um das Fahrzeug zu verlassen /exit");
}
}
}
if(newstate == PLAYER_STATE_DRIVER)
{
for(new f=0; f<MAX_PLAYERS; f++)
{
if(GetPlayerVehicleID(playerid) == PlayerInfo[f][AdminCar])
{
if(PlayerInfo[playerid][pAdminLevel] >= 1)continue;
SCM(playerid,Rot,"Dieses Fahrzeug is ein Supporter/admin Fahrtzeug du hast nich die berechtigung um dieses Fahrzeug zu fahren!");
RemovePlayerFromVehicle(playerid);
return 1;
}
}
}
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
{
if(modelid == 472 || modelid == 473 || modelid == 493 || modelid == 595 || modelid == 484 || modelid == 430 || modelid == 453 || modelid == 452 || modelid == 446 || modelid == 454 )
{
if(PlayerInfo[playerid][pBootschein] == 0)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Du hast keine Bootschein!");
}
else
{
}
}
else if(modelid == 592 || modelid == 577 || modelid == 511 || modelid == 512 || modelid == 593 || modelid == 520 || modelid == 553 || modelid == 476 || modelid == 519 || modelid == 460 || modelid == 513 || modelid == 548 || modelid == 425 || modelid == 417 || modelid == 487 || modelid == 488 || modelid == 497 || modelid == 563 || modelid == 447 || modelid == 469 )
{
if(PlayerInfo[playerid][pFlugschein] == 0)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Du hast keinen Flugschein!");
}
else
{
}
else if(modelid == 592 || modelid == 577 || modelid == 511 || modelid == 512 || modelid == 593 || modelid == 520 || modelid == 553 || modelid == 476 || modelid == 519 || modelid == 460 || modelid == 513 || modelid == 548 || modelid == 425 || modelid == 417 || modelid == 487 || modelid == 488 || modelid == 497 || modelid == 563 || modelid == 447 || modelid == 469 )
{
if(PlayerInfo[playerid][pFlugschein] == 0)
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Du hast keinen Flugschein!");
}
else
{
}
}
else if(modelid == 522)
{
if(PlayerInfo[playerid][pMotorradschein] == 0) {
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Du hast keinen Motorradschein!");
}
}
else if(modelid == 481 || modelid == 509 || modelid == 510)
{
}
else if(modelid == 522)
{
if(PlayerInfo[playerid][pMotorradschein] == 0) {
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Du hast keinen Motorradschein!");
}
}
else if(modelid == 481 || modelid == 509 || modelid == 510)
{
}
else
{
for(new i=0; i<sizeof(autokauf); i++)
{
if(PlayerInfo[playerid][pAutoschein] == 0 && GetPlayerVehicleID(playerid)==autokauf[i][VEHID])
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Du hast keinen Führerschein!");
}
}
}
}
return 1;
}
else
{
for(new i=0; i<sizeof(autokauf); i++)
{
if(PlayerInfo[playerid][pAutoschein] == 0 && GetPlayerVehicleID(playerid)==autokauf[i][VEHID])
{
RemovePlayerFromVehicle(playerid);
SendClientMessage(playerid, Rot, "Du hast keinen Führerschein!");
}
}
}
}
return 1;
}
Wäre echt net wenn mir jemand irgentwie helfen könnte ich habe auch TeamWieer .
mfg. Fabi.StaR