OnDialogResponse wird nicht aufgerufen - Filterscript

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 ein kleines Problem, und zwar wird in meinem Filterscript der Callback "OnDialogResponse" garnicht aufgerufen...



    // Im Befehl:
    ShowPlayerDialog(playerid, 1337, DIALOG_STYLE_LIST, "Radio-System", string, "Anschalten", "Ausschalten");
    // Der Callback
    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){
    new vID = GetPlayerVehicleID(playerid);
    new string[128];
    printf("Debug 0");

    "Debug 0" wird nicht aufgerufen.
    Die ID's überlappen sich auch nicht.


    Könnte mir jemand dabei helfen? :pinch:


    //Edit
    Habe gelesen, dass man in Filterscripts return 0; am ende machen muss.

    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]){
    new vID = GetPlayerVehicleID(playerid);
    new string[128];
    printf("Debug 0");
    if(dialogid==1337){
    //Some Code .. ;)
    }
    return 0;
    }
    klappt nicht. ._.

  • Das mit dem return 0; ist schon mal der richtige Weg.


    return 0; unter OnDialogResponse bedeutet, dass der Dialog zum nächsten Script übergeben wird und dort dann
    wiederum OnDialogResponse mit dem Dialog durchlaufen wird.


    Vermutlich wird das durch deinen Gamemode (oder andere Scripts) verhindert, indem irgendwo unter
    OnDialogResponse (in einem anderen Script) return 1; zurückgegeben wird.