Dialog falsch formatiert?

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 mir eine kleine fread-Funktion im Command geschrieben, die ein Report Zeile für Zeile ausliest. Je nach Inhalt der Zeile soll einer bestimmten Variable dann der jeweilige Wert zugewiesen werden.
    Der Code dabei ist der folgende:
    do
    {
    i++;
    exists = true;
    format(path, 68, "/%s/%i.txt", dini_path, i);
    if(fexist(path))
    {
    ID[count] = i;
    count++;
    new File:report = fopen(path, io_read);
    while(fread(report, string))
    {
    if(strfind(string, "subject", true) != -1) { strdel(string, 0, 8); subject = string; }
    if(strfind(string, "time", true) != -1) { strdel(string, 0, 5); date = string; }
    if(strfind(string, "reason", true) != -1) { strdel(string, 0, 7); reason = string; }
    if(strfind(string, "read", true) != -1) { strdel(string, 0, 5); read = strval(string); }
    if(read) format(cat, 68, "{ED9E15}%s {FFFFFF}\t%s: %s\n", date, subject, reason);
    else format(cat, 68,"{ED9E15}%s {ED1515}\t%s: %s\n", date, subject, reason);
    strcat(msg, cat);
    }
    fclose(report);
    }
    }
    while(i<50);


    if(!exists) return ShowPlayerDialog(playerid, 104,
    DIALOG_STYLE_MSGBOX, "Beschwerden", "Es sind aktuell keine Beschwerden
    eingetragen.", "Okay", "Nicht okay");
    ShowPlayerDialog(playerid, 104, DIALOG_STYLE_LIST, "Beschwerden", msg, "Auswählen", "Abbrechen");
    Wenn ich den Command allerdings eingebe, erhalte ich folgenden Dialog:

    Meine eigene Vermutung wäre natürlich, dass ich strdel am falschen Anfangs- und Endplatz nutze und damit eine neue Zeile mit in den String formatiere, aber ich sehe nicht wieso das so sein sollte.


    Das Textdokument ist wie folgt aufgebaut:

    Code
    reporter=Padarom
    subject=Mike
    reason=Regelverstoß
    ...


    Ich hoffe ihr könnt mir weiterhelfen.
    Sollte dann auch erstmal meine letzte Scriptfrage sein, außer mit fread (glücklicherweise verwende ich sonst überall dini, MySQL o.Ä. mit denen ich umgehen kann) habe ich keine weiteren Probleme in meinem Script.


    Mit freundl. Grüßen
    Padarom

    Ich bin
    .. seit etwa 2007 in der Webentwicklung tätig, seit 2013 professionell
    .. Erfahrener Entwickler in PHP, Swift, Javascript, Typescript und Ruby. Zusätzlich habe ich Erfahrung in Python, Java, C#, C++, Prolog und einigen esoterischen Programmiersprachen
    .. Luftfahrtenthusiast und Segelflieger

    Einmal editiert, zuletzt von Padarom () aus folgendem Grund: Mit Hilfe von Y_Less im englischen Forum bereits gelöst.