Dialog erstellen und Text in datei 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
  • forward Log(string[])


    Unter den Dialog

    new da, mont, yea, hou, minut, sek;
    new getspName[MAX_PLAYER_NAME];
    GetPlayerName(playerid, getspName, sizeof(getspName));
    getdate(yea, mont, da);
    gettime(hou, minut, sek);
    format(inputtext, sizeof(inputtext), "|%d.%d.%d|[%d:%d:%d] %s: %s", da, mont, yea, hou, minut, sek, getspName, inputtext);
    Log(inputtext);


    & ein neuer Public

    public Log(string[])
    {
    new entry[256];
    format(entry, sizeof(entry), "%s\n", string);
    new File:hFile;
    hFile = fopen("test.log", io_append);
    fwrite(hFile, entry);
    fclose(hFile);
    }



    Sollte gehen.

  • Jo Barney,


    damit, denke ich, hilfst du im zwar nicht weiter, aber nungut.
    Deine Log-Funktion, die du eben kopiert hast kannst du einsetzen um Dinge, wie zB. Befehle wie /o zu dokumentieren.


    Zitat


    OnDialogResponse, format, inputtext, dini_Create - mehr brauchste net.

    Das triffts, denn es stimm.
    Weitere Infos findest du im SAMP-Wiki zu den Funktionen :)


    MfG
    Eliot Ness


  • Ich hab es auch fix aus meinem OOC kopiert. Aber das sollte doch klappen ?

  • Er meinte er würde Ingame etwas eingeben wollen.
    So weit, so gut. Aber du hättest ruhig erklären dürfen, was deine Funktion macht.


    Im Nachhinein fällt mir auch auf, dass deine Möglichkeit durchaus sinn macht. :whistling:
    Jedoch stelle ich mir das zB. so vor:


    #include <a_samp>
    #include <Dini>


    #define DIALOG_A 1


    ocmd:text(playerid)
    {
    ShowPlayerDialog(playerid, DIALOG_A, DIALOG_STYLE_INPUT, "Text-Box", "Schreibe irgendetwas:", "Fertig", "Abbrechen");
    return 1;
    }


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == DIALOG_A)
    {
    if(response == 0)
    {
    SendClientMessage(playerid, 0x99FF00FF, "Vorgang abgebrochen!");
    Kick(playerid);
    return 1;
    }
    if(response == 1)
    {
    Funktion(playerid, inputtext);
    return 1;
    }
    }
    return 1;
    }


    stock Funktion(playerid, text[])
    {
    new Datei[100];
    format(Datei, sizeof (Datei), "/Text.txt");
    dini_Create(Datei);
    dini_Set(Datei, "Text", text);
    return 1;
    }


    MfG
    Eliot Ness