2017-09-13 3 views
0

Ich habe endlich einen Weg gefunden, wie mein Diskord-Bot Audio von YouTube abspielen kann, indem er die Bibliothek "yt-dl" benutzt.Eine Reihe von Songs erstellen Discord.js

Ich habe alle Befehle zum Abspielen des Songs gemacht. Wiedergabe, Pause, Stopp (beendet das Lied).

Ich habe einen einfachen Befehl für das Spiel wie, spielen Sie das Lied, von der URL vom Benutzer zur Verfügung gestellt. Wie könnte ich vielleicht eine Warteschlange erstellen? Und dann, lass es den nächsten Song in der Warteschlange spielen, wenn der aktuelle endet?

Antwort

0

Sie können einfach nur eine Liste für Ihre Songs erstellen, um zu überprüfen, wie Sie eine Liste erstellen, überprüfen Sie diesen Beitrag here. (Sie können auch ein Array verwenden, das Ihnen helfen kann, wenn Sie einfach nur einschränken möchten, wie lange Ihre Warteschlange sein kann)

(Es gibt auch einen Typ, der eine Listenfunktion für JavaScript erstellt hat, die wie die generische Liste von .NET funktioniert Sie können es überprüfen here.)

Sie möchten vielleicht auch ein Objekt erstellen, um Ihre Song-Details in Ihrer Liste zu speichern.

+0

In Ordnung, das funktioniert. Aber ich habe eine Frage, wie habe ich jedes Mal etwas zur Liste hinzugefügt, wir machen den Befehl? – Norby

+0

Für Arrays, 'Array.push ()' Methode, für Liste wäre es 'list.add ()' (oder Pascal Fall für die Methoden). – WQYeo

+0

Danke für die Hilfe! – Norby

0
var servers = {}; //obj 


    var id = "HgzGwKwLmgM" //"something" 
    //need provide id^

    //example if with array <inside play function> 
    if (!servers[message.guild.id]) servers[message.guild.id] = { 
        queue: [], 
        videodescription: [], 
        videolengh: [], 
        videotitle: [], 
        videothumbnailUrl: [], 
        videourl: [] 
       }; 

    server = servers[message.guild.id]; //method 


    //fetchVideoInfo is part of nmp [email protected] 
    //npm install youtube-info --save 


server.queue.push(id); 

    fetchVideoInfo(id, function (err, videoInfo) { 
    if (err) throw new Error(err); 

    message.reply(' The song: **' + videoInfo.title + "** has been added to the queue list."); 

    server.videolengh.push(videoInfo.duration);//integer 
    server.videothumbnailUrl.push(videoInfo.thumbnailUrl); 
    server.videourl.push(videoInfo.url); 
    server.videotitle.push(videoInfo.title); 
    server.videodescription.push(videoInfo.description); 

    //(videoInfo.description in fetchVideoInfo) returning html 

    }); 

    //        | 
    //later you can call components V like but i will require method 

    console.log(server.queue[0] + "\n"); 
    //or 
    console.log(server.videodescription[0]); 


    //also don't forget to "skip" 
    //example server.queue.shift(); 
Verwandte Themen