[SAMP] Frage zum Nummernschild

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
  • Hey Leute ich habe ein frage und zwar möchte ich ein Schildsystem machen heißt das jedes auto ein anderes Nummernschild bekommt nur jetzt muss ich noch wissen wie mann es hin bekommt das das Script eine zahl hoch zählt heißt


    z.b
    die Nummer 1000 ist schon vergeben und jetzt soll das Script um 1 hoch zählen und aus der 1000 eine 1001 machen
    geht das ? wenn ja wie wehre echt cool wenn einer da weiter weiß



    M.F.G
    Blaizerado

  • Kommt darauf an wie du es speicherst?


    Wenn du es über Mysql Speicherst, musst du zuerst alles aus der Datenbank suchen das das Nummernschild 1000 hat.



    Code
    format(query,sizeof(query),"SELECT MAX numplate FROM usercars");

    Nur ein kurzes Beispiel.


    liest du den Maximum Wert aus, und erhöhst ihn um eins, in die Datenbank einfügen, fertig.



    Ich habe dir Absichtlich nicht den kompletten Code gegeben, wenn du Fragen hast sag es einfach.

  • Das kann man so nicht direkt sagen, weil es gibt viele Möglichkeiten wie man das realisieren kann, abhängig davon, wie die Fahrzeuge verwaltet werden.


    Dazu müsste man erst mal wissen:
    - Wie werden die Fahrzeuge erstellt?
    - Können Fahrzeuge gelöscht werden? Wenn ja, wird die Nummer wieder frei?
    - Haben gegebenenfalls entfernte Fahrzeuge (an Spieler gebunden?) auch ein Nummernschild?
    - Werden die Nummernschilder am Fahrzeug gespeichert, oder können die nach dem Server-Restart anders sein?
    - Welche Fahrzeuge bekommen ein Nummernschild?



    Außerdem, sofern die Nummernschilder gespeichert werden:
    - Welches Speichersystem nutzt du (MySQL, SQLite, Dateien, ...)?


    Erst wenn man das alles weiß, kann man wirklich sagen, wie es am sinnvollsten zu realisieren wäre.

  • Autos werden mit djson gespeichert also es wird in der OnGameModeInt gespeichert heißt eine for schleife fragt ab ob die Auto Datei gespeichert wird



    Ja es können Autos gelöscht werden und auch umbenannt werden also mann kann die Car Id In Game ändern und ja wenn es geht sollte das Nummernschild wieder frei und meine Bevorzugte Speicherart ist Dini nur um das System fertig zu stellen habe ich djson genommen und nein die Nummernschilder werden am Fahrzug gespeichert und am jeden Server start geladen






    so sieht das dann aus



    Code
    {"auto_1":{"a":89.830360,"farbe1":-1,"farbe2":-1,"key":"PREVOLOTION","lichter":5,"model":562,"reifen":0,"teile":53674018,"tueren":515,"x":1605.023681,"y":-1611.704589,"z":13.179813},"auto_2":{"a":90.488143,"farbe1":255,"farbe2":255,"key":"Tony_Tounge","lichter":1,"mod5":1010,"mod7":1096,"mod9":1087,"model":411,"reifen":0,"teile":1048577,"tueren":512,"x":1604.748535,"y":-1614.393920,"z":13.217460},"auto_3":{"a":87.754158,"farbe1":123,"farbe2":255,"key":"PREVOLOTION","lichter":5,"mod5":1010,"mod7":1025,"mod9":1087,"model":411,"reifen":0,"teile":52559906,"tueren":514,"x":1604.410400,"y":-1608.527099,"z":13.208968}}
  • Ok.
    Jetzt die Frage wie du die Nummer, die auf der Nummerntafel angezeigt wird, vergibst. Wie machst du das?
    Bekommt jedes dieser PlayerAuto's die Nummer für das Nummernschild?
    Wenn ja, könnte man einfach die Nummer nehmen, mit der es in der Datei steht (auto_xxx)?
    Wenn nein, welche Nummer bekommt es dann, und woher/wie?

  • Gut, dann kannst du es relativ einfach machen, und du brauchst es nichtmal zu speichern, da es ja an die ID gebunden ist.
    Beim Erstellen:

    C
    PlayerAuto[i][id_x] = CreateVehicle(PlayerAuto[i][vmodel],PlayerAuto[i][v_xc],PlayerAuto[i][v_yc],PlayerAuto[i][v_zc],PlayerAuto[i][v_ac],PlayerAuto[i][vfarbe1],PlayerAuto[i][vfarbe2],-1);

    zu:

    C
    new np[16];
    format(np, sizeof(np), "ls %d", i);
    SetVehicleNumberPlate((PlayerAuto[i][id_x] = CreateVehicle(PlayerAuto[i][vmodel],PlayerAuto[i][v_xc],PlayerAuto[i][v_yc],PlayerAuto[i][v_zc],PlayerAuto[i][v_ac],PlayerAuto[i][vfarbe1],PlayerAuto[i][vfarbe2],-1)), np);