· 4 years ago · Apr 28, 2021, 06:42 PM
1const Discord = require("discord.js"),
2client = new Discord.Client,
3settings = {
4 prefix: "!",
5};
6
7const { Player } = require("discord-player");
8
9// Create a new Player (you don't need any API Key)
10const player = new Player(client);
11
12// To easily access the player
13client.player = player;
14
15// add the trackStart event so when a song will be played this message will be sent
16client.player.on("trackStart", (message, track) => {
17 const title = track.title;
18 const PlayEmbed = new Discord.MessageEmbed()
19 .setColor('#03fcad')
20 .setTitle('Odtwarzanie:')
21 .setDescription(title)
22 message.channel.send(PlayEmbed)
23});
24
25client.once("ready", () => {
26 console.log("Uruchomiono bota muzycznego!");
27});
28
29client.on("message", async (message) => {
30
31 const args = message.content.slice(settings.prefix.length).trim().split(/ +/g);
32 const command = args.shift().toLowerCase();
33
34 if(command === "play" || command == "graj"){
35 if (!message.member.voice.channel) return message.channel.send(`Nie jesteś na kanale głosowym!`);
36
37 if (message.guild.me.voice.channel && message.member.voice.channel.id !== message.guild.me.voice.channel.id) return message.channel.send(`Nie jesteś w tym samym kanale głosowym co ja!`);
38
39 if (!args[0]) return message.channel.send(`Musisz wpisać tytuł lub link.`);
40 client.player.play(message, args.join(" "), { firstResult: true });
41 }
42 else if (command == "queue" || command == "kolejka") {
43 if (!message.member.voice.channel) return message.channel.send(`Nie jesteś na kanale głosowym!`);
44
45 if (message.guild.me.voice.channel && message.member.voice.channel.id !== message.guild.me.voice.channel.id) return message.channel.send(`Nie jesteś w tym samym kanale głosowym co ja!`);
46
47 const queue = client.player.getQueue(message);
48
49 if (!client.player.getQueue(message)) return message.channel.send(`Żadna piosenka teraz nie gra!`);
50
51 const QueueEmbed = new Discord.MessageEmbed()
52 .setColor('#03fcad')
53 .setTitle('Kolejka:')
54 .setDescription(`${client.player.getQueue(message).loopMode ? '(looped)' : ''}**Aktualna:** ${queue.playing.title} | ${queue.playing.author}\n\n` + (queue.tracks.map((track, i) => {
55 return `**#${i + 1}** - ${track.title} | ${track.author} (włączona przez: ${track.requestedBy.username})`
56 }).slice(0, 5).join('\n') + `\n\n${queue.tracks.length > 5 ? `And ${queue.tracks.length - 5} other songs...` : ``}`))
57 message.channel.send(QueueEmbed)
58 }
59 else if (command == "skip" || command == "pomin") {
60 if (!message.member.voice.channel) return message.channel.send(`Nie jesteś na kanale głosowym!`);
61
62 if (message.guild.me.voice.channel && message.member.voice.channel.id !== message.guild.me.voice.channel.id) return message.channel.send(`Nie jesteś na tym samym kanale głosowym co ja!`);
63
64 if (!client.player.getQueue(message)) return message.channel.send(`Żadna muzyka teraz nie gra!`);
65
66 const success = client.player.skip(message);
67
68 if (success) message.channel.send(`Aktualna muzyka została pominięta!`);
69 }
70 else if (command == "stop" || command == "zatrzymaj") {
71 if (!message.member.voice.channel) return message.channel.send(`Nie jesteś na kanale głosowym!`);
72
73 if (message.guild.me.voice.channel && message.member.voice.channel.id !== message.guild.me.voice.channel.id) return message.channel.send(`Nie jesteś w tym samym kanale głosowym co ja!`);
74
75 if (!client.player.getQueue(message)) return message.channel.send(`Żadna muzyka teraz nie gra!`);
76
77 client.player.setRepeatMode(message, false);
78 const success = client.player.stop(message);
79
80 if (success) {
81 message.channel.send("Zatrzymałeś muzykę.")
82 }
83 }
84
85});
86
87client.login(process.env.BOT_TOKEN);