[Fehler] Support System Buggt.

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 zusammen,


    nach längerer Abstinenz bin ich nun auch wieder etwas aktiver und wollte mich wieder im Scripten versuchen.
    Mein Problem ist das man das Support Ticket als ADMIN mit /supinfo -> Ticket -> Löschen nicht schließen kann...
    Code :

    Spoiler anzeigen
    #define MAX_SUP 10

    Spoiler anzeigen
    new bool:subgesendet[MAX_PLAYERS],SupDiaID[MAX_PLAYERS],ueberschrift[MAX_PLAYERS][50],subtext[MAX_PLAYERS][129],SupportID[MAX_PLAYERS],ASupportID[MAX_PLAYERS],bool:ImSupport[MAX_PLAYERS];
    new SupIDauswahl[MAX_PLAYERS];

    Spoiler anzeigen
    #define SCM SendClientMessage
    #define grün 0x04A800FF
    #define rot 0xCC0000FF
    #define hellblau 0x00A3F0FF
    #define orange 0xE68A00FF
    #define MSG DIALOG_STYLE_MSGBOX
    #define INPUT DIALOG_STYLE_INPUT
    #define LIST DIALOG_STYLE_LIST
    #define Dialog ShowPlayerDialog

    Spoiler anzeigen
    if (strcmp("/sup", cmdtext, true, 10) == 0)
    {
    if(subgesendet[playerid]==true)return SCM(playerid,rot,"Du hast bereits ein Support Ticket offen, /closesup um es zu löschen");
    return Dialog(playerid,DIALOG_SUP,INPUT,"Überschrift","Gebe eine Geeignete Überschrift ein\nBeschriebe dein Problem mit einem Wort, z.B. Bug","Weiter","Abbrechen"),SupDiaID[playerid]=1;
    }
    if (strcmp("/closesup", cmdtext, true, 10) == 0)
    {
    if(subgesendet[playerid]==false)return SCM(playerid,rot,"Du hast kein Support Ticket geöffnet");
    subgesendet[playerid]=false;
    SendAdminMessage(2,playerid,1);
    return SCM(playerid,grün,"Du hast dein Support Ticket geschlossen");
    }
    if (strcmp("/supinfo", cmdtext, true, 10) == 0)
    {
    new string[1024],i=0;
    if(!CallRemoteFunction("PlayerIsAdmin","i",playerid))return SCM(playerid,rot,"Du bist nicht befugt");
    for(;i<MAX_SUP;i++)
    {
    if(SupInfo[i][erstellt]==true)
    {
    if(SupInfo[i][bearbeitung]==false){format(string,1024,"%s {00A911}%s | %s\n",string,SupInfo[i][Name],SupInfo[i][Ueberschrift]);}
    else if(SupInfo[i][bearbeitung]==true) {format(string,1024,"%s {FFA600}[In Bearbeitung]%s | %s\n",string,SupInfo[i][Name],SupInfo[i][Ueberschrift]);}
    }
    else {format(string,1024,"%s {940000}Support ID Nicht vergeben!\n",string);}
    }
    return Dialog(playerid,DIALOG_ASUP,LIST,"Support Menü",string,"Auswählen","Abbrechen");
    }

    Spoiler anzeigen
    case DIALOG_SUP:
    {
    if(response)
    {
    switch(SupDiaID[playerid])
    {
    case 1:
    {
    format(ueberschrift[playerid],50,"%s",inputtext);
    Dialog(playerid,DIALOG_SUP,INPUT,"Problem","Gebe nun dein Text ein, welcher dein Problem genauer beschreibt","Weiter","Abbrechen"),SupDiaID[playerid]=2;
    }
    case 2:
    {
    new string[300];
    format(subtext[playerid],128,"%s",inputtext);
    format(string,300,"Überschrift: %s\n\nText: %s\n\nBist du sicher das du den Support absenden möchtest?",ueberschrift[playerid],subtext[playerid]);
    Dialog(playerid,DIALOG_SUP,MSG,"Support",string,"Absenden","Abbrechen"),SupDiaID[playerid]=3;
    }
    case 3:return CreateSup(playerid,ueberschrift[playerid],subtext[playerid]);
    }
    }
    else return SCM(playerid,rot,"Du hast den Support abgebrochen"),SupDiaID[playerid]=0;
    }
    case DIALOG_ASUP:
    {
    if(response)
    {
    SupIDauswahl[playerid] = listitem;
    new string[200];
    if(SupInfo[SupIDauswahl[playerid]][erstellt]==false)return SCM(playerid,rot,"Die Support ID ist nicht vergeben"),OnPlayerCommandText(playerid,"/supinfo");
    format(string,200,"Absender: %s\nÜberschrift: %s\nText: %s",SupInfo[SupIDauswahl[playerid]][Name],SupInfo[SupIDauswahl[playerid]][Ueberschrift],SupInfo[SupIDauswahl[playerid]][Text]);
    Dialog(playerid,DIALOG_ACSUP,MSG,"Support Ticket",string,"Annehmen","Löschen");
    }
    }
    case DIALOG_ACSUP:
    {
    if(response == 1)
    {
    new string[128];
    SupInfo[SupIDauswahl[playerid]][bearbeitung]=true;
    format(SupInfo[SupIDauswahl[playerid]][Admin],MAX_PLAYER_NAME,"%s",SpielerName(playerid));
    SupInfo[SupIDauswahl[playerid]][AdminID]=playerid;
    format(string,128,"%s hat dein Support Ticket geöffnet, du kannst einfach im Chat mit ihm schreiben",SpielerName(playerid));
    SCM(SupInfo[SupIDauswahl[playerid]][SpielerID],orange,string);
    SCM(playerid,orange,"Du hast das Ticket geöffnet, du kannst im Chat mit dem User schrieben.");
    ImSupport[playerid]=true;
    ASupportID[playerid]=SupIDauswahl[playerid];
    ImSupport[SupInfo[SupIDauswahl[playerid]][SpielerID]]=true;
    SupIDauswahl[playerid]=0;
    }
    else
    {
    new string[128];
    format(string,128,"Du hast das Ticket von %s gelöscht",SupInfo[SupIDauswahl[playerid]][Name]);
    SCM(playerid,orange,string);
    format(string,128,"%s hat dein Support Ticket gelöscht",SpielerName(playerid));
    SCM(SupInfo[SupIDauswahl[playerid]][SpielerID],orange,string);
    subgesendet[SupInfo[SupIDauswahl[playerid]][SpielerID]]=false;
    SupInfo[SupIDauswahl[playerid]][erstellt]=false;
    ImSupport[playerid]=false;
    ASupportID[playerid]=-1;
    ImSupport[SupInfo[SupIDauswahl[playerid]][SpielerID]]=false;
    SupIDauswahl[playerid]=0;
    }
    }
    stock GetFreeSupID()
    {
    new i=0;
    for(;i<MAX_SUP;i++)
    {
    if(SupInfo[i][erstellt]==true)continue;
    return i;
    }
    return -1;
    }
    stock CreateSup(playerid,header[],text[])
    {
    new ID=GetFreeSupID();
    if(ID==-1)return SCM(playerid,rot,"Die Maximale Anzahl von Support Tickets ist erreicht!");
    format(SupInfo[ID][Ueberschrift],50,"%s",header);
    format(SupInfo[ID][Text],129,"%s",text);
    format(SupInfo[ID][Name],129,"%s",SpielerName(playerid));
    SupInfo[ID][SpielerID]=playerid;
    SupInfo[ID][bearbeitung]=false;
    SupInfo[ID][erstellt]=true;
    SendAdminMessage(1,playerid,ID);
    subgesendet[playerid]=true;
    SupportID[playerid]=ID;
    return SCM(playerid,grün,"Der Support wurde erfolgreich abgesendet");
    }

    Spoiler anzeigen
    stock SendAdminMessage(art,playerid,ID)
    {
    new i=0,string[256];
    if(art==1){format(string,256,"Spieler:{00A911} %s{FFFFFF} hat ein Support Ticket eingereicht:{00A911} %s{FFFFFF}, /supinfo zum einsehen",SpielerName(playerid),SupInfo[ID][Ueberschrift]);}
    else if(art==2){format(string,256,"Spieler: %s hat sein Support Ticket gelöscht",SpielerName(playerid));}
    for(;i<MAX_PLAYERS;i++)
    {
    if(CallRemoteFunction("PlayerIsAdmin","i",i))
    {
    SCM(i,-1,string);
    }
    }
    }

  • Beitrag von Nico ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Lass es mal so laufen:
    Was kommt im Log, wenn du auf Löschen drückst?
    case DIALOG_ACSUP:
    {
    printf("response: %d", response);
    if(response == 1)
    {
    new string[128];
    SupInfo[SupIDauswahl[playerid]][bearbeitung]=true;
    format(SupInfo[SupIDauswahl[playerid]][Admin],MAX_PLAYER_NAME,"%s",SpielerName(playerid));
    SupInfo[SupIDauswahl[playerid]][AdminID]=playerid;
    format(string,128,"%s hat dein Support Ticket geöffnet, du kannst einfach im Chat mit ihm schreiben",SpielerName(playerid));
    SCM(SupInfo[SupIDauswahl[playerid]][SpielerID],orange,string);
    SCM(playerid,orange,"Du hast das Ticket geöffnet, du kannst im Chat mit dem User schrieben.");
    ImSupport[playerid]=true;
    ASupportID[playerid]=SupIDauswahl[playerid];
    ImSupport[SupInfo[SupIDauswahl[playerid]][SpielerID]]=true;
    SupIDauswahl[playerid]=0;
    }
    else
    {
    printf("playerid: %d", playerid);
    printf("SupIDauswahl: %d", SupIDauswahl[playerid]);
    new string[128];
    format(string,128,"Du hast das Ticket von %s gelöscht",SupInfo[SupIDauswahl[playerid]][Name]);
    printf("string: %s", string);
    SCM(playerid,orange,string);
    format(string,128,"%s hat dein Support Ticket gelöscht",SpielerName(playerid));
    printf("string: %s", string);
    SCM(SupInfo[SupIDauswahl[playerid]][SpielerID],orange,string);
    subgesendet[SupInfo[SupIDauswahl[playerid]][SpielerID]]=false;
    SupInfo[SupIDauswahl[playerid]][erstellt]=false;
    ImSupport[playerid]=false;
    ASupportID[playerid]=-1;
    printf("%d", SupInfo[SupIDauswahl[playerid]][SpielerID]);
    ImSupport[SupInfo[SupIDauswahl[playerid]][SpielerID]]=false;
    SupIDauswahl[playerid]=0;
    }
    }


  • Garnichts ...
    --------------------------------------
    [23:00:29] Neon System By Deci Loaded!
    [23:00:29] --------------------------------------


    [23:00:29] Filterscript 'Neon.amx' loaded.
    [23:00:30] Loaded Gamemode: Selfmade
    [23:00:30] Number of vehicle models: 78
    [23:00:30]
    [23:00:30] ==========================================
    [23:00:30] | |
    [23:00:30] | A new version (v3.09.0684) of YSI is |
    [23:00:30] | available from: |
    [23:00:30] | |
    [23:00:30] | www.y-less.com/YSI/YSI_1.0.zip |
    [23:00:30] | |
    [23:00:30] | Changelog: |
    [23:00:30] | |
    [23:00:30] | 1.04.0000: |
    [23:00:30] | |
    [23:00:30] | RC 1 for YSI 3.0. Available from: |
    [23:00:30] | http://www.y-less.com/YSI/YSI_3.0.rar |
    [23:00:30] | - includes MANY new libraries and |
    [23:00:30] | fixes, see |
    [23:00:30] | http://forum.sa-mp.com/showthread.php? |
    [23:00:30] | p=1425938 for more information, with |
    [23:00:30] | more topics and updates due over the |
    [23:00:30] | next few weeks. In brief: Added |
    [23:00:30] | "y_inline", "y_text", "y_users", |
    [23:00:30] | "y_uvar", "y_svar", "y_remote"; |
    [23:00:30] | updated "y_timers", "y_iter"; MANY |
    [23:00:30] | MANY fixes and tweaks in almost every |
    [23:00:30] | other library. |
    [23:00:30] | |
    [23:00:30] | 3.00.0000: |
    [23:00:30] | |
    [23:00:30] | YSI 3.0 released! Now includes the |
    [23:00:30] | "y_text" library for better messages, |
    [23:00:30] | and a reworked "y_classes" library. |
    [23:00:30] | Largely documented here |
    [23:00:30] | "http://forum.sa-mp.com/showthread.php |
    [23:00:30] | ?t=321092". |
    [23:00:30] | |
    [23:00:30] | 3.01.0002: |
    [23:00:30] | |
    [23:00:30] | Small fixes to "y_text" and |
    [23:00:30] | "y_classes". |
    [23:00:30] | |
    [23:00:30] | 3.09.0684: |
    [23:00:30] | |
    [23:00:30] | Reverted to old download location. |
    [23:00:30] | Improved (and fixed) version checks; |
    [23:00:30] | added y_bitmap, y_areas, y_races, |
    [23:00:30] | y_zonenames, better documentation; |
    [23:00:30] | MANY other bug fixes - see the github |
    [23:00:30] | repository for more details: |
    [23:00:30] | |
    [23:00:30] ==========================================
    [23:00:30]
    [23:00:46] [part] BurningSimon has left the server (1:0)
    [23:00:48] Given: -300 PGeld: 6900
    [23:00:55] Given: -300 PGeld: 9100
    [23:00:56] Incoming connection: 87.78.209.118:63342
    [23:00:56] [join] BurningSimon has joined the server (1:87.78.209.118)
    [23:01:03] [chat] [EDDI]: aufträge
    [23:01:09] Given: -5000 PGeld: 1900
    [23:01:12] [chat] [JanCapon]: aufträge
    [23:01:13] [chat] [JanCapon]: Auftraggeben 1
    [23:01:16] [chat] [EDDI]: auftraggeben eddi
    [23:01:18] [chat] [jojoking]: haha
    [23:01:24] Given: -3500 PGeld: 149232

  • Da steht gar nichts davon, nicht mal der response-print. :huh:
    Hast du auch den richtigen Dialog angezeigt bekommen?


    Klappt es, wenn du Annehmen drückst? Es müsste doch wenigstens eine Zeile davon geprintet werden (der response-print).
    Die Prints die du da hast sind irgendwelche anderen.

  • Beitrag von Crocky ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Da steht gar nichts davon, nicht mal der response-print. :huh:
    Hast du auch den richtigen Dialog angezeigt bekommen?


    Klappt es, wenn du Annehmen drückst? Es müsste doch wenigstens eine Zeile davon geprintet werden (der response-print).
    Die Prints die du da hast sind irgendwelche anderen.


    Annehmen ja, löschen nein.

  • Poste bitte mal die jeweiligen Logs die kommen, wenn du annimmst, und wenn du löschst.
    Aus dem server_log.txt.



    [21:02:41] Das Biz wurde erfolgreich geladen
    [21:02:41] Das Biz wurde erfolgreich geladen
    [21:02:41] Das Biz wurde erfolgreich geladen
    [21:02:41] Das Biz wurde erfolgreich geladen
    [21:02:41] Loaded Gamemode: Selfmade
    [21:02:41] Number of vehicle models: 79
    [21:02:41]
    [21:02:41] =======================================
    [21:02:41] | |
    [21:02:41] | Error: Could not connect to YSI |
    [21:02:41] | update server (response was 006). |
    [21:02:41] | |
    [21:02:41] =======================================
    [21:02:41]
    [21:03:05] Incoming connection: 127.0.0.1:57589
    [21:03:06] [join] MoTiionZ has joined the server (0:127.0.0.1)
    [21:03:27] response: 1