Scheinsystem klappt nicht ganz

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,
    Ich habe ein Probelm und zwar möchte ich, dass wenn der Spieler in ein Auto einsteigt und er keinen Schein
    hat, soll er damit auch nicht fahren können.
    Liegt es vielleicht daran, dass ich es unter OnPlayerEnterVehicle gesetzt habe?
    Mein Code dafür sieht bis jetzt so aus:



    Habe bei der Spielerdatei, wenn man einen Autoschein hat 1 gemacht und wenn nicht 0.


    //Edit: Mit RemovePlayerFromVehicle klappt es auch nicht, also liegt es nicht daran

    2 Mal editiert, zuletzt von Ketchup () aus folgendem Grund: SetPlayerPos zu RemovePlayerFromVehicle gemacht

  • Das hat damit aber nichts zutun, es passiert nämlich nichts.
    Weder wird der Spieler aus dem Auto geworfen (SetPlayerPos und dann die Z Achse mit 5 Addieren ist ja so ziemlich dasselbe wie RemovePlayerFromVehicle)
    noch wird dem Spieler die Nachricht geschickt, dass er keinen entsprechenden Schein hat.

  • Probiers mal mit dini get
    // edit bzz bist du dir sicher, dass du kein Autoschein hast, wenn du es probierst?

    Nur wenn man das Unmögliche versucht kann man das absolut Mögliche erreichen
    Hermann Hesse


    „Was manche Menschen sich selber vormachen, das macht ihnen so schnell keiner nach.”
    Gerhard Uhlenbruck

  • Ja oder halt normal if(dini_Get(Spielerdatei,"Autoschein") == 0)

    Nur wenn man das Unmögliche versucht kann man das absolut Mögliche erreichen
    Hermann Hesse


    „Was manche Menschen sich selber vormachen, das macht ihnen so schnell keiner nach.”
    Gerhard Uhlenbruck

  • Noch ein Tipp:


    Erstell dir Variablen für deinen Spieler, dann musst du nicht immer den dini scheiß schreiben ;)

    Nur wenn man das Unmögliche versucht kann man das absolut Mögliche erreichen
    Hermann Hesse


    „Was manche Menschen sich selber vormachen, das macht ihnen so schnell keiner nach.”
    Gerhard Uhlenbruck

  • Garnicht so schwer ;)
    Machen wir mal ein stock Accountladen, wo der jeweilige Account geladen wird & die Variablen, hier PVars, gesetzt werden.


    stock AccountLaden(playerid)
    {
    new Spielerdatei[64]; //sollte klaar sein
    new name[MAX_PLAYER_NAME];//sollte klaar sein
    GetPlayerName(playerid,name,sizeof(name));//sollte klaar sein
    format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);//sollte klaar sein
    SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level")); //so hier wirds mit dem variablen setzen. SetPlayerScore ist ja nichts anderes wie eine variable zu setzen. Man kann sie mit GetPlayerScore abrufen. So man gibt einfach den dini_Int des Levels an, da wo die zahl für score gesetzt wird.
    GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld")); //hier das gleiche mit geld
    SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel")); // und hier erstellen wir uns einfach ne variable mit PVars. Hier wird die Variable "Adminlevel" der playerid auf den wert von dini_int.... gesetzt. so werden automatisch beim spieler laden auch die variablen bestiommt. abrufen kannst du sie mit GetPVarInt(playerid,"Adminlevel"), zum beispiel
    SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
    return 1;

    }

    Nur wenn man das Unmögliche versucht kann man das absolut Mögliche erreichen
    Hermann Hesse


    „Was manche Menschen sich selber vormachen, das macht ihnen so schnell keiner nach.”
    Gerhard Uhlenbruck

  • PVar ist mir zu unsicher, da ich schon mein Adminsystem über die Pvars laufen lasse und es da immer wieder zu schwierigkeiten kommt.
    Aber ich kann es ja mal versuchen.
    //Edit Versuch abgebrochen, habe keine Lust mein Speichersystem auf den Kopf zu stellen.
    Bitte eine andere Idee

  • OnPlayerStateChange.. dieses Callback wird aufgerufen wenn er als fahrer oder sonst was einsteig kannst mit ner abfrage ganz leicht machen