[Frage] Radio-System

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
  • Ich habe ein Ipod-System eingebaut aber ich möchte das man die Radio-Sender per Menü wählen kann.
    Sender:
    http://www.iloveradio.de/listen.m3u
    http://listen.technobase.fm/dsl.pls
    http://listen.hardbase.fm/dsl.pls
    http://listen.housetime.fm/dsl.pls
    http://listen.Clubtime.fm/dsl.pls




    Script:


    if (!strcmp(cmdtext, "/ipodhelp", true))
    {
    SendClientMessage(playerid,GRUEN,"*** Befehle *** /ipodan /ipodaus");
    return 1;
    }


    if (!strcmp(cmdtext, "/ipodan", true))
    {
    GameTextForPlayer(playerid,"~r~Musik ab.", 1000,3);
    PlayAudioStreamForPlayer(playerid, "http://listen.technobase.fm/dsl.pls");
    return 1;
    }


    if (!strcmp(cmdtext, "/ipodaus", true))
    {
    GameTextForPlayer(playerid,"~r~Musik aus.", 1000,3);
    StopAudioStreamForPlayer(playerid);
    return 1;
    }


    PS:


    Ich weiß das ich in der letzten Zeit echt viele Fragen gestellt habe, das liegt daran das mein Server gerade im Aufbau ist und ich noch ein paar Feauters einbauen möchte. Ich danke allen die meine Fragen beantwortet haben :D

    :) SWAGETTI & YOLONAISE!

  • bei /ipodan kannst du einfach ein Menü aufrufen lassen, bzw. eben einen Dialog per ShowPlayerDialog..Welchen ist dir überlassen ;)
    Aber später bei der Auswahl dann eben bei dem passenden Listitem PlayAudioStreamForPlayer(playerid,URL);



    [align=center]

  • Dialog Style DIALOG_STYLE_LIST sollts tun.


    Ein kleines Beispiel:



    #define DIALOG_IPOD
    if (!strcmp(cmdtext, "/ipodan", true))
    {
    ShowPlayerDialog(playerid, DIALOG_IPOD, DIALOG_STYLE_LIST, "iPod - Wähle deinen Sender", "Technobase \n....\n.....", "Auswählen", "Abrrechen");
    }


    //Ondialogresponse
    if(dialogid == DIALOG_IPOD)
    {
    if(response)
    {
    if(listitem == 0)
    {
    /* Dein Code */
    }
    if(listitem == 1)
    {
    /* Dein Code */
    }
    //Und weitere nach belieben
    }
    }


    Mfg,
    UncleSub

  • Verbesserung:


    Oben im Script:

    #define DIALOG_IPOD 1 //Du legst DIALOG_IPOD als Dialog Nummer 1 fest. (Wenn du 1 schon hast, schreib 2. Die Zahl ist beliebig.)


    OnPlayerCommand:

    public OnPlayerCommandText(playerid, cmdtext[])
    {
    if (strcmp(cmdtext, "/ipodan", true) == 0)
    {
    ShowPlayerDialog(playerid, DIALOG_IPOD, DIALOG_STYLE_LIST, "iPod - Wähle deinen Sender", "Technobase \nHardbase\nHousetime\nClubtime\nILoveRadio", "Auswählen", "Abbrechen"); //Dialogfenster wird erstellt
    return 1;
    }
    if (strcmp(cmdtext, "/ipodaus", true) == 0)
    {
    StopAudioStreamForPlayer(playerid);
    return 1;
    }
    return 1;
    }



    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
    {
    if(dialogid==DIALOG_IPOD)
    {
    if(response==0)//falls antwort=abbrechen
    {
    return 1; //fenster wird geschlossen
    }
    if(response==1)//falls antwort=auswählen oder doppelklick
    {
    switch(listitem)//dies erspart dir viele if abfragen
    {
    case 0: //wenn die erste möglichkeit gewählt wird
    {
    PlayAudioStreamForPlayer(playerid, "http://listen.technobase.fm/dsl.pls");
    return 1;
    }
    case 1: //wenn die zweite möglichkeit gewählt wird
    {
    PlayAudioStreamForPlayer(playerid, "http://listen.hardbase.fm/dsl.pls");
    return 1;
    }
    case 2: //...
    {
    PlayAudioStreamForPlayer(playerid, "http://listen.housetime.fm/dsl.pls");
    return 1;
    }
    case 3: //...
    {
    PlayAudioStreamForPlayer(playerid, "http://listen.Clubtime.fm/dsl.pls");
    return 1;
    }
    case 4: //...
    {
    PlayAudioStreamForPlayer(playerid, "http://www.iloveradio.de/listen.m3u");
    return 1;
    }
    }
    }
    }

    return 1;
    }


    PS: Die Zeilen sind hier im Forum falsch eingerückt!!


    //edit Überarbeitet und Fehler behoben. Jetzt klappt es! Habs getestet!

    Einmal editiert, zuletzt von JanKNB135 ()