OnPlayerStateChange geht nich mehr ;(

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • 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:


    Spoiler anzeigen
    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
    {

    Spoiler anzeigen
    }
    }
    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
    {

    Spoiler anzeigen
    }
    }
    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)
    {

    Spoiler anzeigen
    }
    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

    Mit freundlichen Grüßen,


    Fabi.StaR :love::saint:


  • 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;//<---- Das hier weg
    }