MySQL Cars speichern

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
  • Heyho,


    ich will mir nun mal nen Carsystem zusammenschreiben.
    Basierend auf MySQL und hab da ein paar Fragen.
    Gespeichert werden sollen Frakcars und Usercars in einer Tabelle


    Wie geh ich das am besten an, ich habs mir so gedacht:


    - Neue Tabelle "Cars"
    - Speicherattribute pro Zeile


    • Besitzer (Username oder Frakname, je nach dem)
    • FahrzeugID
    • Farbe 1
    • Farbe 2
    • Tuningteile [...]
    • FraktionsID (0 steht für Privatcar, alles andere sind FrakIDS zum abfragen ob man das Auto fahren darf)

    Wie erstell ich die Cars dann aber?


    Also auslesen bei OnGameMode init wenn wir jetzt zB mal nur die Frakcars betrachten.
    Aber wie oft muss da AddStaticVehicle(); hin bzw. wie stell ich das an das nicht nur das erste ausgelesen wird und erstellt wird
    sondern soviele wie in der Tabelle stehen?
    (Das mit den Usercars wollt ich noch etwas anders lösen, wobei die Lösung dafür auch erstmal geht)
    Danke schonmal


    - Tom

  • Also auslesen bei OnGameMode init wenn wir jetzt zB mal nur die Frakcars betrachten.
    Aber wie oft muss da AddStaticVehicle(); hin bzw. wie stell ich das an das nicht nur das erste ausgelesen wird und erstellt wird
    sondern soviele wie in der Tabelle stehen?


    antwort:


    bei OnGameModeInite :


    loadfrakcars();



    stock loadfrakcars() {
    //hir hin wie es ausgelessen wird
    return 1;
    }

    Mit freundlichen Grüßen,


    Fabi.StaR :love::saint:


  • Ja aber wie sieht es aus wie oft muss AddStaticVehicle(); hin sag ich mal.


    zB wenn man nen /players Befehl macht um alle anzuzeigen geht man ja ne Schleife durch.


    Muss ich auch ne schleife durchgehen bis alle "Einträge" in der Tabelle abgefragt wurden und jedes mal ein Auto erstellen?


    - Tom



    Einmal editiert, zuletzt von Tomsen ()

  • #edit:


    Ich hab es jetzt so und komm bei einer Stelle nicht weiter, also:

    mysql_query("SELECT `ID` FROM autos");
    mysql_store_result();
    new ZeilenAnzahl = mysql_num_rows();
    mysql_free_result(); //anzahl der Zeilen bzw. gepseicherten Autos wiedergeben

    for (new i=0; i< ZeilenAnzahl; i++) //for schleife um alle autos durchzugehen und auch zu spawnen
    {
    new id,Float:x,Float:y,Float:z,Float:r,color1,color2,frakid;
    id = mysql_GetInt("autos","CarID","id",i); //Aus Tabelle autos die carid raussuchen.
    }


    Beim CarID raussuchen soll er in Tabelle autos in der Spalte die carid entnehmen und um zu wissen welche Tabelle das ist wollte ich mit id die Zeile zuordnen.
    ID geht bei 0 los und dann nächstes auto 1, nächstes 2 etc.
    Und i spiegelt doch die aktuelle Zeilenzahl bzw. id wieder oder nicht?


    #edit2: Ich bekomm immer den Fehler: argument type mismatch (argument 4)
    Aber ich kann das i ja nicht in " setzen. Dann wäre der Fehler weg, aber ich will ja die Variable i als vergleich nehmen und kein i aus der Tabelle was eh nicht existiert.


    - Tom



    2 Mal editiert, zuletzt von Tomsen ()