Problem mit dem Support-System

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 wenn ich /report eingebe kommt ein Dialog wo man auswählen kann zwischen:


    1. Allgemeiner Support
    2. Frage an Projektleiter


    Aber wenn ich etwas anklicke dann passiert einfach nichts.


    Hier die Codes:


    /report:
    if(strcmp(cmdtext,"/report",true) == 0)
    {
    ShowPlayerDialog(playerid,Report,DIALOG_STYLE_LIST,"Report Menü","1. Allgemeine Frage\n2. Frage an Projektleiter","Wählen","Abbrechen");
    return 1;
    }


    Die Dialogs:
    if(dialogid == Support)
    {
    if(response == 1) {
    switch(listitem)
    {
    case 0:
    {
    ShowPlayerDialog(playerid,Support_AF,DIALOG_STYLE_INPUT,"Allgemeine Frage","Gebe nun deine Frage ein","Wählen","Abbrechen");
    }
    case 1:
    {
    ShowPlayerDialog(playerid,Support_CM,DIALOG_STYLE_INPUT,"Frage an Projektleiter","Gebe nun die ID des Spielers und den Grund der Meldung an","Wählen","Abbrechen");
    }
    }
    }
    else SendClientMessage(playerid, COLOR_WHITE, "Hoffentlich wirst du dein Ziel erreichen.");
    }
    if(dialogid == Support_AF)
    {
    if(response == 0)
    {
    return 1;
    }
    if(response == 1)
    {
    new string[50];
    new text = strval(inputtext);
    GetPlayerName(playerid,sName,sizeof(sName));
    format(string,sizeof(string),"%s meldet: %s",sName,text);
    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if(PlayerInfo[playerid][pAdmin] == 6)//Projektleiter Adminlevel anpassen
    {
    SendClientMessage(i,COLOR_WHITE,string);
    }
    }
    SendClientMessage(playerid,COLOR_WHITE,"Dein Ticket wurde abgeschickt");
    SendClientMessage(playerid,COLOR_WHITE,"Warte nun einen Moment");
    WartetAufSupport[playerid] = 1;
    }
    }
    if(dialogid == Support_CM)
    {
    if(response == 0)
    {
    return 1;
    }
    if(response == 1)
    {
    new string[50];
    new text = strval(inputtext);
    GetPlayerName(playerid,sName,sizeof(sName));
    format(string,sizeof(string),"%s meldet: %s",sName,text);
    for(new i = 0; i<MAX_PLAYERS; i++)
    {
    if(PlayerInfo[i][pAdmin] == 6)//Projektleiter Adminlevel anpassen
    {
    SendClientMessage(i,COLOR_WHITE,string);
    }
    }
    SendClientMessage(playerid,COLOR_WHITE,"Dein Ticket wurde abgeschickt");
    SendClientMessage(playerid,COLOR_WHITE,"Warte nun einen Moment");
    WartetAufSupport[playerid] = 1;
    }
    }


    Hoffe mir kann jemand helfen.


    LG
    MysteriX



  • Das wird so nix.



    switch(dialogid)
    {
    case DIALOG_ANPASSEN:
    {
    if(!response)
    {
    SendClientMessage(playerid, ROT, "Dialog beendet");
    }
    if(response)
    {
    switch(listitem)
    {
    case 0:
    {


    Hier mal der Aufbau aus meinem Filterscript, so solltest du es machen, denn sollte es gehen, Der Script muss ja auch wissen welchen Dialog er "switchen soll"


    MFG


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

  • Okay, jetzt geht alles, nur wenn man etwas abschickt sieht man die nachricht nicht was er geschrieben hat.
    und kann man noch hinzufügen das vor dem namen die ID steht?



    new Text[128] = strval(inputtext);
    format(Text, sizeof(Text), "%s [%i] %s:", SpielerName(playerid), playerid, Text); // Anpassen


    //Edit angepasst
    //Edit 2: %s auf %i geändert (Da Integer) (Danke an: LeijaT:


    MFG


    Engelsflügel am Astonkühler, als Schutz vor dem Teufel!

    Einmal editiert, zuletzt von BOMBER ()

  • Nur, dass für die playerid ein Integer, also %d oder %i verwendet werden muss, statt einem String (%s)


    Mein CS:GO Server: 62.75.168.39:27016


    Ich bin so hungrig, dass ich vor lauter Durst nicht weiß, was ich rauchen soll - so müde bin ich!
    Freedom is just another word for 'Nothing left to lose'