OnDialogResponse Problem

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 libe Breadfisher,




    ich hab ein Problem mit dem DialogFenster wen man auf Kaufen drückt passiert garnichts und bei Abbrechen soll es halt nichtmehr da sein...aber bei Kaufen geht es halt nicht hier meine code:


    ShowPlayerDialog



    if(strcmp("/bestellung",cmdtext,true,10) == 0)
    if(IsPlayerInRangeOfPoint(playerid,3.0,-2170.3774,645.5781,1052.3750))
    {
    if(gTeam[playerid] == TEAM_HITMAN)
    {
    ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Waffenannahme","WaffenPacket1\nWaffenPacket2","Kaufen","Abbrechen");
    }
    return 1;
    }






    und hier was es eig. machen soll..


    {
    if(dialogid == 1 && response)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,COLOR_GREY,"Du hast Abgebrochen!");
    {
    if(response == 1)
    {
    GivePlayerMoney(playerid, 5000);
    GivePlayerWeapon(playerid, 24,500);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast dir ein Packet für 5000$ gekauft!");
    }
    }
    return 1;
    }
    }
    return 1;
    }





    Habe ein Selfmade

  • {
    if(dialogid == 1)
    {
    if(response == 0)
    {
    SendClientMessage(playerid,COLOR_GREY,"Du hast Abgebrochen!");
    }
    if(response == 1)
    {
    GivePlayerMoney(playerid, 5000);
    GivePlayerWeapon(playerid, 24,500);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast dir ein Packet für 5000$ gekauft!");
    }
    }
    return 1;
    }

  • probiers mal so:


    if(strcmp("/bestellung",cmdtext,true,10) == 0)
    if(IsPlayerInRangeOfPoint(playerid,3.0,-2170.3774,645.5781,1052.3750))
    {
    if(gTeam[playerid] == TEAM_HITMAN)
    {
    ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Waffenannahme","WaffenPacket1\nWaffenPacket2","Kaufen","Abbrechen");
    }
    return 1;
    }


    {
    if(dialogid == 1)
    {
    if(response )
    {
    //hier kannste auch noch abfragen welche zeile der auswählt mit if(listitem == [ZEILE(fängt bei 0 an)]
    GivePlayerMoney(playerid, 5000);
    GivePlayerWeapon(playerid, 24,500);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast dir ein Packet für 5000$ gekauft!");
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY,"Du hast Abgebrochen!");
    }
    }
    return 1;
    }



  • ja aber unter welchem public OnDialogResponse und OnPlayerCommandText gehen nicht


    und das von Master geht auch nicht

  • geht aber nicht das von furzbacke geht bei beiden callbacks nicht und das von master geht nicht...

  • bei Abbrechen verschwindet das Fenster ist auch richtig so aber bei Kaufen passiert garnichts wen ich draufdrücke obwohl ich eine Waffe + Geldabgezogen kriegen sollte




    edit/// das hat was mit den Klammern zutuhen da ganz unten pls helfen :(



    bei Abbrechen kommt die Nachricht Du hast Abgebrochen aber nicht bei Kaufen da passerti garnichts :(

    Einmal editiert, zuletzt von milanboy38 ()

  • hier:


    if(strcmp("/bestellung",cmdtext,true,10) == 0)
    {
    if(IsPlayerInRangeOfPoint(playerid,3.0,-2170.3774,645.5781,1052.3750))
    {
    if(gTeam[playerid] == TEAM_HITMAN)
    {
    ShowPlayerDialog(playerid,1,DIALOG_STYLE_LIST,"Waffenannahme","WaffenPacket1\nWaffenPacket2","Kaufen","Abbrechen");
    }
    return 1;
    }


    public OnDialogResponse
    {
    if(dialogid == 1)
    {
    if(response )
    {
    if(listitem == 0) // du hast so ne liste. wenn er das 1. auswählt. das 2. wäre listitem == 1...
    {
    GivePlayerMoney(playerid, -5000); //hier -5000, da er ja kauft und somit ihm geld abgezogen wird.
    GivePlayerWeapon(playerid, 24,500);
    SendClientMessage(playerid,COLOR_LIGHTBLUE,"Du hast dir ein Packet für 5000$ gekauft!");
    }
    }
    else
    {
    SendClientMessage(playerid,COLOR_GREY,"Du hast Abgebrochen!");
    }
    }
    return 1;
    }