Ich bräuchte Hilfen Zu Dialogen

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
  • Also Ich bräuchte Bisschen Hilfe in Seeeeeehr vielen servern kann man ja z.b in der stadthalle /stadthalle machen.
    Dann öffnet sich ein Dialog Fenster und da kann man das aussuchen was man wählen will


    Personalausweis Beantragen
    Führerschein
    Motorradschein undsoweiter


    So und wenn man auf Personalausweis Beantragen Steht dann da z.b Personalausweis Wird in 15 mins fertig sein bla


    Wie mache ich das mit dem dialogfeld das man da draufklicken kann und das dann was passiert???


    Blöde Frage I know Aber bitte um Hilfe :)


    Mfg Domi

  • #define DIALOGNAME 1 // Du musst erstmal das Dialog Definieren ist nicht zwingend aber übersichtlicher.




    Dort wo der Befehl eingegeben wird soll der Dialog angezeigt werden.


    ShowPlayerDialog(playerid,DIALOGNAME,DIALOG_STYLE_LIST,">> Header <<","Perso\nScheine","Okay","Abbrechen");


    Dann gehst du unter OnDialogResponse


    Dort machst du dann


    if(dialogid == DIALOGNAME)
    {
    if(respose == 1) // Wenn er den 1 Button anklickt.
    {
    if(listitem == 0)
    {
    // Hier was passieren soll wenn er in der Liste das 1 wählt
    }
    if(listitem == 1)
    {
    // Hier was passieren soll wenn er in der Liste das 2 wählt
    }
    }
    return 1;
    }



    mfg traxx

  • Du erstellst eine Befehl, wo du eine Abfrage machst ob der Spieler in der Nähe des gewählten Standortes ist, dann wenn er es ist, lässt du ein Dialog öffnen, in dem Dialogstyle: DIALOG_STYLE_LIST, darin legst du fest was zum auswählen da sein soll.


    Dann gehst du zu OnDialogResponse, da fragst du die Dialogid ab, machst eine Abfrage ob er OK gedrückt hat, und definierst je nachdem was er ausgesucht hat was passieren soll.


    Das würde in etwa so aussehen.


    CMD:playerid,params[])
    {
    if(IsPlayerInRangeOfPoint(playerid,Entfernung wie weit es gehen soll, x achse, y achse,z achse);
    {
    ShowPlayerDialog(playerid,DIALOGID,DIALOG_STYLE_LIST,"Stadthalle","ertse Auswahl\nzweite Auswahl\ndritte Auswahl","Okay","Abbrechen");
    }
    return 1;
    }


    //Für jede neue Zeile ein \n nutzen.


    Dann bei OnDialogResponse:


    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOGID)
    {
    if(response)
    {
    if(listitem==0)
    {
    SetTimer("PersoTimer",ms*60*minuten,0);
    SendClientMessage(playerid,FARBE,"Du kannst deinen Personalausweiss in x Minuten abholen!");
    }
    if(listitem==1)
    {
    //Das nächste wo was gemacht werden soll
    }
    if(listitem==2)
    {
    //bei der Wahl des dritten was hier passieren soll
    }
    }
    return 1;
    }
    return 0;
    }


    Dann erstellen wir noch einen Timer der dann sagt das du den Perso abholen kannst.



    forward PersoTmer();


    public PersoTimer()
    {
    hier was passieren soll wen der Timer abgelaufen ist.
    return 1;
    }