Scheine System Funktioniert nicht :(

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
  • Hallo
    Community :)
    Ich habe ein Problem... mein Licensen/scheine System Funktioniert nicht!
    Wenn ich mit einen Führerschein kaufe und mich ins Auto setze werde ich rausgekickt kein Führerschein
    Nur wenn ich alle Scheine habe kann ich Auto fahren und alles andere :/
    Ich hoffe mir kann jemand helfen


    OnPlayerStateChange

    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(GetVehicleModel(playerid) != 487 || GetVehicleModel(playerid) != 469 || GetVehicleModel(playerid) != 447 ||
    GetVehicleModel(playerid) != 563 || GetVehicleModel(playerid) != 497 || GetVehicleModel(playerid) != 488 ||
    GetVehicleModel(playerid) != 417 || GetVehicleModel(playerid) != 425 || GetVehicleModel(playerid) != 548)//Das sind alle Helis
    if(GetPVarInt(playerid,"Flugschein") == 0)
    {
    RemovePlayerFromVehicle(playerid);
    }
    }
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(GetVehicleModel(playerid) != 461 || GetVehicleModel(playerid) != 522 || GetVehicleModel(playerid) != 448 || GetVehicleModel(playerid) != 462 || GetVehicleModel(playerid) != 463 || GetVehicleModel(playerid) != 468 || GetVehicleModel(playerid) != 471 || GetVehicleModel(playerid) != 521 || GetVehicleModel(playerid) != 523 || GetVehicleModel(playerid) != 581 || GetVehicleModel(playerid) != 586)
    if(GetPVarInt(playerid,"Motorradschein") == 0)
    {
    RemovePlayerFromVehicle(playerid);
    }
    }
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(GetPVarInt(playerid,"Fuehrerschein") == 0)//hier wird überprüft ob der Spieler einen Führerschein hat die 0 zeigt das wenn er keinen Führerschein hat das der Code weiter geht und er vom Auto Rausgeschmissen wird.
    {
    SendClientMessage(playerid, COLOR_RED, " Du hast keinen Schein für dieses Fahrzeug/Flugzeug ");//Den Text könnt ihr ändern er wird dem Spieler gezeigt der in ein Auto einsteigt und keinen Führerschein hat.
    RemovePlayerFromVehicle(playerid);//So wird dann der Spieler der keinen Führerschein hat aus dem Auto geschmissen!
    }
    }



    //EDIT ----- Fehler Errors/Warns habe ich keine und man bekommt auch den Führerschein das was ich hier hingeschrieben habe ist das einzigste Problem... :(....

    2 Mal editiert, zuletzt von [Markus] ()

  • versuch so mal obs geht weiß ich nicht xD



    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(GetVehicleModel(playerid) != 487 || GetVehicleModel(playerid) != 469 || GetVehicleModel(playerid) != 447 ||
    GetVehicleModel(playerid) != 563 || GetVehicleModel(playerid) != 497 || GetVehicleModel(playerid) != 488 ||
    GetVehicleModel(playerid) != 417 || GetVehicleModel(playerid) != 425 || GetVehicleModel(playerid) != 548)//Das sind alle Helis
    if(GetPVarInt(playerid,"Flugschein") == 0)
    {
    RemovePlayerFromVehicle(playerid);
    }
    }
    else if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(GetVehicleModel(playerid) != 461 || GetVehicleModel(playerid) != 522 || GetVehicleModel(playerid) != 448 || GetVehicleModel(playerid) != 462 || GetVehicleModel(playerid) != 463 || GetVehicleModel(playerid) != 468 || GetVehicleModel(playerid) != 471 || GetVehicleModel(playerid) != 521 || GetVehicleModel(playerid) != 523 || GetVehicleModel(playerid) != 581 || GetVehicleModel(playerid) != 586)
    if(GetPVarInt(playerid,"Motorradschein") == 0)
    {
    RemovePlayerFromVehicle(playerid);
    }
    }
    else if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(GetPVarInt(playerid,"Fuehrerschein") == 0)//hier wird überprüft ob der Spieler einen Führerschein hat die 0 zeigt das wenn er keinen Führerschein hat das der Code weiter geht und er vom Auto Rausgeschmissen wird.
    {
    SendClientMessage(playerid, COLOR_RED, " Du hast keinen Schein für dieses Fahrzeug/Flugzeug ");//Den Text könnt ihr ändern er wird dem Spieler gezeigt der in ein Auto einsteigt und keinen Führerschein hat.
    RemovePlayerFromVehicle(playerid);//So wird dann der Spieler der keinen Führerschein hat aus dem Auto geschmissen!
    }
    }

  • nehli: Was soll es denn daran ändern?
    Eigentlich könnte man 2 Conditions weglassen.


    Mit deiner Version ist es so:
    Wenn ich A bin, dann mach B.
    Ansonsten überprüfe, ob ich A bin und mach C.
    Wenn ich immer noch nicht A bin, überprüfe ob ich A bin und mach D.


    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if((GetVehicleModel(playerid) == 487 || GetVehicleModel(playerid) == 469 || GetVehicleModel(playerid) == 447 ||
    GetVehicleModel(playerid) == 563 || GetVehicleModel(playerid) == 497 || GetVehicleModel(playerid) == 488 ||
    GetVehicleModel(playerid) == 417 || GetVehicleModel(playerid) == 425 || GetVehicleModel(playerid) == 548) && GetPVarInt(playerid,"Flugschein") == 0))
    {
    RemovePlayerFromVehicle(playerid);
    }
    if((GetVehicleModel(playerid) == 461 || GetVehicleModel(playerid) == 522 || GetVehicleModel(playerid) == 448 || GetVehicleModel(playerid) == 462 || GetVehicleModel(playerid) == 463 || GetVehicleModel(playerid) == 468 || GetVehicleModel(playerid) == 471 || GetVehicleModel(playerid) == 521 || GetVehicleModel(playerid) == 523 || GetVehicleModel(playerid) == 581 || GetVehicleModel(playerid) == 586) && GetPVarInt(playerid,"Motorradschein") == 0))
    {
    RemovePlayerFromVehicle(playerid);
    }
    else if(GetPVarInt(playerid,"Fuehrerschein") == 0)//hier wird überprüft ob der Spieler einen Führerschein hat die 0 zeigt das wenn er keinen Führerschein hat das der Code weiter geht und er vom Auto Rausgeschmissen wird.
    {
    SendClientMessage(playerid, COLOR_RED, " Du hast keinen Schein für dieses Fahrzeug/Flugzeug ");//Den Text könnt ihr ändern er wird dem Spieler gezeigt der in ein Auto einsteigt und keinen Führerschein hat.
    RemovePlayerFromVehicle(playerid);//So wird dann der Spieler der keinen Führerschein hat aus dem Auto geschmissen!
    }
    }
    So sollte es klappen. Deine if-Clause war irgendwie total unsinnig (wenn ich richtig denke), du hast überprüft, ob die Fahrzeug-ID KEIN Motorrad oder Heli ist. Das heißt, dass du immer rausgeschmissen wirst, wenn du in einem anderen Fahrzeug als einem Motorrad oder Flugzeug bist.

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

  • Errors :(



    C:\Users\acer\Desktop\0.3c Projekt\gamemodes\SteakScriptV2.pwn(2677) : error 029: invalid expression, assumed zero
    C:\Users\acer\Desktop\0.3c Projekt\gamemodes\SteakScriptV2.pwn(2681) : error 029: invalid expression, assumed zero
    C:\Users\acer\Desktop\0.3c Projekt\gamemodes\SteakScriptV2.pwn(2685) : error 029: invalid expression, assumed zero
    C:\Users\acer\Desktop\0.3c Projekt\gamemodes\SteakScriptV2.pwn(2685) : warning 215: expression has no effect
    C:\Users\acer\Desktop\0.3c Projekt\gamemodes\SteakScriptV2.pwn(2685) : error 001: expected token: ";", but found "if"
    Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase



    4 Errors.




    code

    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if((GetVehicleModel(playerid) == 487 || GetVehicleModel(playerid) == 469 || GetVehicleModel(playerid) == 447 || //ZEILE 2675
    GetVehicleModel(playerid) == 563 || GetVehicleModel(playerid) == 497 || GetVehicleModel(playerid) == 488 || //ZEILE 2676
    GetVehicleModel(playerid) == 417 || GetVehicleModel(playerid) == 425 || GetVehicleModel(playerid) == 548) && GetPVarInt(playerid,"Flugschein") == 0))//ZEILE 2677
    {//ZEILE 2678
    RemovePlayerFromVehicle(playerid);//ZEILE 2679
    }//ZEILE 2680
    if((GetVehicleModel(playerid) == 461 || GetVehicleModel(playerid) == 522 || GetVehicleModel(playerid) == 448 || GetVehicleModel(playerid) == 462 || GetVehicleModel(playerid) == 463 || GetVehicleModel(playerid) == 468 || GetVehicleModel(playerid) == 471 || GetVehicleModel(playerid) == 521 || GetVehicleModel(playerid) == 523 || GetVehicleModel(playerid) == 581 || GetVehicleModel(playerid) == 586) && GetPVarInt(playerid,"Motorradschein") == 0))//ZEILE 2681
    {//ZEILE 2682
    RemovePlayerFromVehicle(playerid);//ZEILE 2683
    }//ZEILE 2684
    else if(GetPVarInt(playerid,"Fuehrerschein") == 0)//ZEILE 2685
    {//ZEILE 2686
    SendClientMessage(playerid, COLOR_RED, " Du hast keinen Schein für dieses Fahrzeug/Flugzeug ");//ZEILE 2687
    RemovePlayerFromVehicle(playerid);//ZEILE 2688
    }//ZEILE 2689
    }//ZEILE 2690



    Mit Zeilenangabe !!!...

    Einmal editiert, zuletzt von [Markus] ()


  • if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    if(GetVehicleModel(playerid) == 487 || GetVehicleModel(playerid) == 469 || GetVehicleModel(playerid) == 447 || //ZEILE 2675
    GetVehicleModel(playerid) == 563 || GetVehicleModel(playerid) == 497 || GetVehicleModel(playerid) == 488 || //ZEILE 2676
    GetVehicleModel(playerid) == 417 || GetVehicleModel(playerid) == 425 || GetVehicleModel(playerid) == 548)
    {
    if(GetPVarInt(playerid,"Flugschein") == 0)//ZEILE 2677
    {
    RemovePlayerFromVehicle(playerid);//ZEILE 2679
    }
    }
    if(GetVehicleModel(playerid) == 461 || GetVehicleModel(playerid) == 522 || GetVehicleModel(playerid) == 448 || GetVehicleModel(playerid) == 462 || GetVehicleModel(playerid) == 463 || GetVehicleModel(playerid) == 468 || GetVehicleModel(playerid) == 471 || GetVehicleModel(playerid) == 521 || GetVehicleModel(playerid) == 523 || GetVehicleModel(playerid) == 581 || GetVehicleModel(playerid) == 586)
    {
    if(GetPVarInt(playerid,"Motorradschein") == 0)//ZEILE 2681
    {
    RemovePlayerFromVehicle(playerid);//ZEILE 2683
    }
    }
    else
    {
    if(GetPVarInt(playerid,"Fuehrerschein") == 0)//ZEILE 2685
    {
    SendClientMessage(playerid, COLOR_RED, " Du hast keinen Schein für dieses Fahrzeug/Flugzeug ");//ZEILE 2687
    RemovePlayerFromVehicle(playerid);//ZEILE 2688
    }
    }
    }

    Einmal editiert, zuletzt von BigYoda ()

  • Danke


    Der Beitrag ist zu kurz. Der Beitrag muss mindestens 10 Zeichen lang sein und 3 Wörter enthalten.

  • if(strcmp("motorrad",eingabe,true)==0)
    {
    format(string,sizeof string,"Fahrlehrer: %s hat dir einen Motorradschein gegeben!",SpielerName(playerid));
    printf("%i",pID);
    SendClientMessage(pID,HELLBLAU,string);
    format(string, sizeof string,"Du hast %s einen Motorradschein gegeben!",SpielerName(pID));
    SendClientMessage(playerid,HELLBLAU,string);
    SetPVarInt(pID,"Motorradschein",1);
    SpielerSpeichern(pID); }