Alternative Lösung?

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 will auf meinem Server für Premiums ein Fun System machen unwichtig um was es sich Handelt!


    Ich weiß nicht wie ich es machen soll undzwar kommt ein DIalog mit paar Sounds bzw und sie können aus wählen und dazu können sie ein Kommentar schreiben! Bloß wie kann ich es machen das ich nicht immer so machen muss?


    if(listitem==0)
    {
    ShowPlayerDialog
    return 1;
    }
    if(listitem==1)
    {
    ShowPlayerDialog
    return 1;
    }
    Sondern evtl.


    mit


    switchaber das würde auch nicht viel bringen hier mein aktueller Code.


    case Sound:
    {
    if(response==0)return 1;
    if(response==1)
    {
    ShowPlayerDialog(playerid,Sound1,DIALOG_STYLE_INPUT,"Sound - Komment","Gib ein was du schreiben willst! Zum Sound!","Senden","Zurück");
    return 1;
    }
    return 1;
    }
    case Sound1:
    {
    if(response==0)return 1;
    if(response==1)
    {
    new str[128];
    format(str,sizeof(str),"{0DFC00}({FC0000}%s{0DFC00}): {CAFC00}%s",SpielerName(playerid),inputtext);
    SendClientMessageToAll(weiss,str);
    return 1;
    }
    return 1;
    }

  • ich würde net immer response =0 und =1 schreiben!


    if(response) // das heißt 1
    if(!response) // das heißt 0


    Gehört nicht zum Thema X(


    Ghost


    Ja is klar aber er kann halt zwischen mehr Sounds wählen und dann wenn er eins ausgewählt hat wird der ander Dialog angezeigt. Und Kann er kein comment schreiben und beim drücken auf Senden soll der Sound abgespielt werden. Aber das ist ja dann schon im 2 Dialog?!

  • Ghost


    Ja is klar aber er kann halt zwischen mehr Sounds wählen und dann wenn er eins ausgewählt hat wird der ander Dialog angezeigt. Und Kann er kein comment schreiben und beim drücken auf Senden soll der Sound abgespielt werden. Aber das ist ja dann schon im 2 Dialog?!

  • Im ersten Dialog lässt du die Sounds ausgeben(Listen Dialog), bei bestätigung spielst du dann einfach den sound ab und öffnest dabei den kommentar dialog.
    Wie auch immer du es machen möchtest, führen viele Wege zum Ziel.


    //Edit
    Wenn der Sound erst abgespielt wurde, nach dem ein Kommentar gemacht wurde, wofür soll dann der Kommentar sein nebenbei gefragt? Einfach die Reihenfolge dann ändern.

    KleineHilfe 2.0

  • Benutz ein array in dem du die sounds definierst, dann hat jeder sound eine id, die wenn du es richtig anstellst mit der listitem id übereinstimmet,somait hast du nur noch ein sytem für alles.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Benutz ein array in dem du die sounds definierst, dann hat jeder sound eine id, die wenn du es richtig anstellst mit der listitem id übereinstimmet,somait hast du nur noch ein sytem für alles.


    Kannst du mir evtl. ein Beispiel geben? :thumbup:


    Ghost


    Wie ich gesagt hab ist ein Fun für die Vip's Und der Komment ist für einen Witz gedacht!

  • Beispiel:
    new Radio[7][50] =
    {
    {"Technobase.fm","http://dsl.tb-stream.net"},
    {"Housetime.fm","http://mp3.ht-stream.net"},
    etc
    };


    So kannst du diese anzeigen lassen



    new liste[20];
    for(new i = 0; i < sizeof(Radio)+1; i++)
    {
    format(liste,sizeof(liste),"%s%s\n",Radio[i]); // + Dialog


    //Edit hinzugefügt +

    KleineHilfe 2.0

  • Nun, ob du es so machen solltest wie ich gesagt hab kommt darauf an wie dein system ist.


    Naja. Also du machst /fun dann kommen ne liste mit sounds, da wählt man sich einen aus und dann schreibt man nen komment und dann wird der sound gespielt?


    edit:
    new Radio[7][2][50] =
    {
    {"Technobase.fm","http://dsl.tb-stream.net"},
    {"Housetime.fm","http://mp3.ht-stream.net"},
    etc
    };


    beim cmd what ever:
    new string[280];
    for(new i=0;i<sizeof(Radio);i++)
    {
    if(i==0) format(string,sizeof(string),"%s",Radio[i][0]);
    else format(string,sizeof(string),"%s\n%s",string,Radio[i][0]);
    }
    ShowPlayerdialog(playerid,dialogid,Liststyle,"Sounds",string,"Auswählen","Abbrechen");


    bei ondiaogresponse:


    if(response)
    {
    SetPVarInt(playerid,"selectedSound",listitem);
    ShowPlayerdialog(playerid,dialogid,inputsytle,"Sounds",Schreibe nun einen Kommentar zum Sound,"Auswählen","Abbrechen");
    }


    if(response)//Komentar
    {
    playsound(Radio[GetPVarInt(playerid,"selectedSound")][1]);
    sendKomment
    }

  • Nun, ob du es so machen solltest wie ich gesagt hab kommt darauf an wie dein system ist.


    Naja. Also du machst /fun dann kommen ne liste mit sounds, da wählt man sich einen aus und dann schreibt man nen komment und dann wird der sound gespielt?


    Ja so ist es gemeint bloß das der cmd /sound heißt xD ;) :thumbup:


  • Ja so ist es gemeint bloß das der cmd /sound heißt xD ;) :thumbup:


    Dawei, jetzt habe ich es auch verstanden, du möchtest das angeklickte aus dem 1. Dialog nach dem 2. Dialog wieder geben. Warum sagst du es nicht gleich. :)


    //Edit
    Ich würde dann lediglich listitem in einer variable speichern.

    KleineHilfe 2.0


  • Ich stelle mich mal bisschen dumm aber könnte mir da einer evtl bissl helfen? :D

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen