Dialog eingabe in befehl eingabe machen /report

In 10 Minuten startet der nächtliche Backupvorgang! Es kann währenddessen (ca. 10 Minuten) zu Einschränkungen bei der Nutzung des Forums kommen
Weitere Infos findet ihr im Thema Backup des Forums
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
  • /report Dialog eingabe in text/chat eingabe machen



    /report (text)


    if(!strlen(inputtext) || strlen(inputtext) > 90)
    {
    ShowPlayerDialog(playerid,DIALOG_REPORT_FRAGEN,DIALOG_STYLE_INPUT,"Report (Fragen)","Hast du eine Frage oder ein anliegen?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
    return SendClientMessage(playerid,GRAU,"Du musst schon etwas eingeben./Du kannst nicht mehr als 90 Zeichen benutzen.");
    }
    else
    {
    for(new i=0;i<30;i++)
    {
    if(ReportListitem[i][rID][0] == -1)
    {
    SendClientMessage(playerid,0x37FF00FF,"Deine Frage:");
    format(string,sizeof(string),"%s",inputtext);
    SendClientMessage(playerid,0x37FF00FF,string);
    SendClientMessage(playerid,0x37FF00FF,"Du kannst das Ticket mit ´/sreport´ beenden/löschen.");
    format(string,sizeof(string),"Spieler: %s (ID:%i) hat eine Frage/Problem(/tickets)",SpielerName(playerid),playerid);
    SendAdminMessage(0xFF7B00FF,string);
    Spieler[playerid][pAReport] = 1;
    Spieler[playerid][pWriteReport][0] = true;
    UpdateReportTextdraw();
    ReportListitem[i][rText][0] = gettime();
    strmid(ReportListitem[i][rText][0],inputtext,0,strlen(inputtext),90);
    ReportListitem[i][rID][0] = playerid;
    ReportListitem[i][rAccepted][0] = true;
    return 1;
    }
    }
    ShowPlayerDialog(playerid,DIALOG_REPORT_FRAGEN,DIALOG_STYLE_INPUT,"Report (Fragen)","Hast du eine Frage oder ein anliegen?\nSchildere das Geschehen kurz und knapp\n\n"#SERVERFARBE""#SERVERNAME"","Absenden","Zurück");
    SendClientMessage(playerid,GRAU,"Du kannst momentan keinen Report (Fragen) absenden.");
    }
    }
    return 1;
    }


    Wie kann ich das zum befehl machen?

  • ocmd:report(playerid, params[])
    {
    if(!strlen(params) || strlen(params) > 90)
    {
    return SendClientMessage(playerid,GRAU,"Du musst schon etwas eingeben./Du kannst nicht mehr als 90 Zeichen benutzen.");
    }
    else
    {
    for(new i=0;i<30;i++)
    {
    if(ReportListitem[i][rID][0] == -1)
    {
    SendClientMessage(playerid,0x37FF00FF,"Deine Frage:");
    format(string,sizeof(string),"%s",params);
    SendClientMessage(playerid,0x37FF00FF,string);
    SendClientMessage(playerid,0x37FF00FF,"Du kannst das Ticket mit ´/sreport´ beenden/löschen.");
    format(string,sizeof(string),"Spieler: %s (ID:%i) hat eine Frage/Problem(/tickets)",SpielerName(playerid),playerid);
    SendAdminMessage(0xFF7B00FF,string);
    Spieler[playerid][pAReport] = 1;
    Spieler[playerid][pWriteReport][0] = true;
    UpdateReportTextdraw();
    ReportListitem[i][rText][0] = gettime();
    strmid(ReportListitem[i][rText][0],params,0,strlen(params),90);
    ReportListitem[i][rID][0] = playerid;
    ReportListitem[i][rAccepted][0] = true;
    return 1;
    }
    }
    SendClientMessage(playerid,GRAU,"Du kannst momentan keinen Report (Fragen) absenden.");
    }
    return 1;
    }

  • Beitrag von Synchron ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • ocmd:report(playerid, params[])
    {
    for(new i=0;i<30;i++) if(ReportListitem[i][rID][0] == playerid) return SendClientMessage(playerid,GRAU,"Du hast bereits einen Report offen.");
    if(!strlen(params) || strlen(params) > 90)
    {
    return SendClientMessage(playerid,GRAU,"Du musst schon etwas eingeben./Du kannst nicht mehr als 90 Zeichen benutzen.");
    }
    else
    {
    for(new i=0;i<30;i++)
    {
    if(ReportListitem[i][rID][0] == -1)
    {
    SendClientMessage(playerid,0x37FF00FF,"Deine Frage:");
    format(string,sizeof(string),"%s",params);
    SendClientMessage(playerid,0x37FF00FF,string);
    SendClientMessage(playerid,0x37FF00FF,"Du kannst das Ticket mit ´/sreport´ beenden/löschen.");
    format(string,sizeof(string),"Spieler: %s (ID:%i) hat eine Frage/Problem(/tickets)",SpielerName(playerid),playerid);
    SendAdminMessage(0xFF7B00FF,string);
    Spieler[playerid][pAReport] = 1;
    Spieler[playerid][pWriteReport][0] = true;
    UpdateReportTextdraw();
    ReportListitem[i][rText][0] = gettime();
    strmid(ReportListitem[i][rText][0],params,0,strlen(params),90);
    ReportListitem[i][rID][0] = playerid;
    ReportListitem[i][rAccepted][0] = true;
    return 1;
    }
    }
    SendClientMessage(playerid,GRAU,"Du kannst momentan keinen Report (Fragen) absenden.");
    }
    return 1;
    }
    So?