How? - Vehicle ID's aus Datei auslesen

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 möchte das so machen:
    Wenn ich per /gangautos einen Dialog öffne und dort sollen dann die ganzen Gangcarslots (1-5) stehen mit CarID des jeweiligen Gangslots.


    Wenn ich aber nun draufklicke und man sich dort ein neues Fahrzeug aussuchen kann für den Gangslot soll er das ja auch Speichern.
    Wie mache ich es, das er aus einer INI-Datei jetzt Fahrzeugtypen pro Gangslot ausliest und diese dann im Gamemode unter OnGameModeInit und AddStaticVehicle ausgibt?


    Grüße.


    /EDIT: Also quasi soll die Datei dann so aussehen:
    Grove 1 = 520
    Grove 2 = 411


    usw. und dann soll er halt so aussehen:
    format(Fahrzeugverzeichnis,sizeof Fahrzeugverzeichnis,"Gangautos.txt");
    vehicleid = dini_Int(Fahrzeugverzeichnis,//und hier die Zeile wie ich die auslese ist die Frage)
    CreateVehicle(vehicleid ....

    Einmal editiert, zuletzt von xDanny ()


  • #define dia_gangcar 0
    #define MAX_GANGCAR 5
    new gangcar[MAX_GANGCAR];


    //---
    if (strcmp("/gangautos", cmdtext, true, 10) == 0)
    {
    new string[128];
    for(new i = 0; i < MAX_GANGCAR; i++)
    {
    format(string,sizeof(string),"%s \n %d CARID: %d",string,i,GetVehicleModel(gangcar[i])
    }
    ShowPlayerDialog(playerid,dia_gangcar,DIALOG_STYLE_LIST,"GangAutos",string,"jojo", "nene");
    return 1;
    }



    Das ist nur der erste teil.
    Ansonsten bitte noch etwas genauer beschreiben was du meinst.

    ,,Die besten Dinge im Leben sind nicht die, die man für Geld bekommt.''

    Albert Einstein

  • Danke dafür, nicht das eigentliche aber nutzbar!
    Ich bin an dem anderen gerade dran, wenn ich schaffe sag ich wie, wenn nicht - meld ich mich xD

  • Achso...
    Also was du da bauen möchtest ist ein halbes Car system und erfodert einen Aufwand von 1000Zeilen +.

    ,,Die besten Dinge im Leben sind nicht die, die man für Geld bekommt.''

    Albert Einstein

  • Denke ich weniger. :)
    Einfach die CarID's speichern und dann bei einem OnGameModeInit ausgeben! ;)

  • Das ist dann der feinschliff! :)


    /EDIT: BlueSpider:
    Nur ärgerlich das ich hier 'n Error krieg:
    Zeile (500) : warning 213: tag mismatch
    Zeile (500) : error 001: expected token: ",", but found ";"


    format(string,sizeof(string),"%s \n %d - CARID: %d",string,i,GetVehicleModel(Fraktionscar[i]);


    Wo solln da der Fehler sein? :o

    Einmal editiert, zuletzt von xDanny ()


  • ich glaub du musst anstatt ");" es so machen )) ka

  • naja d.h. eine enum Klasse mit vielen variablen.



    #define MAX_GANGCAR 5
    enum gangcar_e
    {
    carid,
    float:car_x,
    float:car_y,
    float:car_z,
    gang,
    }
    new gangcar[MAX_GANGCAR][gangcar_e];



    // Ongamemodeinit - Lese Vorgang
    new Fahrzeugverzeichnis[64];
    format(Fahrzeugverzeichnis,sizeof Fahrzeugverzeichnis,"Gangautos.txt");
    new string_read[128];
    for(new i = 0; i < MAX_GANGCAR; i++)
    {
    format(string_read,sizeof(string_read),"Groove_%d_Modell",i);
    gangcar[i][carid] = dini_Int(Fahrzeugverzeichnis,string_read);
    CreateVehicle(gangcar[i][carid],..

    }




    Als Beispiel.



    Edit//


    Ups :D
    Ich glaub ich brauche eine Brille ^^

    format(string,sizeof(string),"%s \n %d - CARID: %d",string,i,GetVehicleModel(Fraktionscar[i]));



    Musste doppelt zu ;)

    ,,Die besten Dinge im Leben sind nicht die, die man für Geld bekommt.''

    Albert Einstein

  • jetzt wirds komplex :D



    #define dia_gangcar 0
    #define MAX_GANGCAR 5
    enum gangcar_e
    {
    carid,
    float:car_x,
    float:car_y,
    float:car_z,
    gang,
    modell,
    }
    new gangcar[MAX_GANGCAR][gangcar_e];


    //Ongamemodeinit - Lese Vorgang


    new Fahrzeugverzeichnis[64];
    format(Fahrzeugverzeichnis,sizeof Fahrzeugverzeichnis,"Gangautos.txt");
    new string_read[128];
    for(new i = 0; i < MAX_GANGCAR; i++)
    {
    format(string_read,sizeof(string_read),"Groove_%d_Modell",i);
    gangcar[i][modell] = dini_Int(Fahrzeugverzeichnis,string_read);



    }


    //Befehl


    if (strcmp("/gangautos", cmdtext, true, 10) == 0)
    {
    new string[128];
    for(new i = 0; i < MAX_GANGCAR; i++)
    {
    format(string,sizeof(string),"%s \n %d - CARID: %d",string,i,gangcar[i][modell]);

    }
    ShowPlayerDialog(playerid,dia_gangcar,DIALOG_STYLE_LIST,"GangAutos",string,"jojo", "nene");
    return 1;
    }




    Ich hoffe mal das dass hilft ^^


    €dit//

    In der enum fehlt übrigens noch eine Variable für das Fahrzeugmodell ;)
    Added & logik fehler fixed

    ,,Die besten Dinge im Leben sind nicht die, die man für Geld bekommt.''

    Albert Einstein

    2 Mal editiert, zuletzt von BlueSpider () aus folgendem Grund: fixed