/report per datei

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 folgendes FS:



    // This is a comment
    // uncomment the line below if you want to write a filterscript
    #define FILTERSCRIPT


    #include <a_samp>


    #if defined FILTERSCRIPT
    #define GRAD2 0xBFC0C2FF
    #define GRAD5 0xBFC0C2FF
    forward ticketsys(string[]); //ticketsystem log
    new reportname[MAX_PLAYER_NAME+1];
    new ticketmsg[256+1];




    public OnFilterScriptInit()
    {
    print("\n--------------------------------------");
    print(" GUI Ticket System");
    print("--------------------------------------\n");
    return 1;
    }


    public OnFilterScriptExit()
    {
    return 1;
    }


    #else


    main()
    {
    print("\n----------------------------------");
    print(" GUI Ticket System");
    print("----------------------------------\n");
    }


    #endif







    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp("/ticket1", cmdtext, true, 10) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    GetPlayerName(playerid,reportname,MAX_PLAYER_NAME);
    format(ticketmsg,256,"Herzlich Wilkommen im Ticket System\n\nBenutzer:\t%s\n\nBitte teile uns dein Problem mit:",reportname);
    ShowPlayerDialog(playerid,100,DIALOG_STYLE_INPUT,"Ticket System",ticketmsg,"Absenden","Verlassen");
    return 1;
    }
    }
    return 0;
    }




    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid == 100)
    {
    if(response)
    {
    new string[256];
    new idx;
    new sendername[MAX_PLAYER_NAME];
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(inputtext);
    while ((idx < length) && (inputtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = inputtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, GRAD2, "FEHLER !");
    return 1;
    }
    format(string, sizeof(string), " | %s hat ein Ticket hinterlassen: [%s] |", sendername, (result));
    ABroadCast(playerid, GRAD5, string);
    format(string, sizeof(string), "[TICKET] %s hat ein neues Ticket eingesendet : [%s] |", sendername, (result));
    ABroadCast(playerid, GRAD2, string);
    ticketsys(string);
    GameTextForPlayer(playerid, "Ticket Gespeichert",5000,3);
    }
    else
    {
    SendClientMessage(playerid, GRAD2, "Ticket System Verlassen");
    }
    return 1;
    }
    return 1;

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


    Habe den ma i-wo gefunden.
    Jezz meine Frage.
    Wie kann ich diese dann ingame abrufen?
    Also immer nur eine zeile?


    MfG
    Dominik

    Einmal editiert, zuletzt von [RS]Dominik ()

  • if(!strcmp(cmd,"/report",true))
    {
    tmp = strrest(cmdtext,idx);
    if(!tmp[0])return SendClientMessage(playerid,0xFF0000FF,"/report [nachricht]");
    new form[255],nname[MAX_PLAYERS];
    GetPlayerName(playerid,nname,sizeof nname);
    format(form,sizeof form,"%s Report : %s\r\n",nname,tmp);
    new File:ddx = fopen("report.log",io_append);
    fwrite(ddx,form);
    fclose(ddx);
    return 1;
    }


    stock strrest(const string[], &index)
    {
    new length = strlen(string);
    while ((index < length) && (string[index] <= ' '))
    {
    index++;
    }
    new offset = index;
    new result[128];
    while ((index < length) && ((index - offset) < (sizeof(result) - 1)))
    {
    result[index - offset] = string[index];
    index++;
    }
    result[index - offset] = EOS;
    return result;
    }

    Mfg. BlackFoX_UD_ alias [BFX]Explosion


  • Ja okay aber wie kann ich das dann wieder abrufen?
    Ausserdem wollte ich dieses FS benutzen(siehe ersten post)^^


    MfG