Witam, stworzyłem komendę "skrzynka", która wysyła losowy embed z zawartością. Lecz chciałem później dodać funkcję, która sprawdza czy ta komenda została wysłana na odpowiednim kanale. I tak zrobiłem, lecz wyskakuje mi błąd Piszę na discord.js v12.2.0. Oto kod i błąd:
const { MessageEmbed, Message } = require("discord.js")
module.exports = {
name: "skrzynka",
cooldown: 5,
run(client, args, message) {
if (message.channel.id !== "738110972153167893") {
return message.channel.send(":alert: Tą komendę można wykonać tylko na kanale <#738110972153167893> na serwerze __GRAMY NIE ŚPIMY__")
}
// const embeda = new MessageEmbed()
// .setColor('RANDOM')
// .setAuthor("ZWYKŁA SKRZYNKA!")
// .setDescription("<a:8203_MinecraftChest:732573818803191869> WOW! Awansujesz w otwieraniu skrzynek! <a:8203_MinecraftChest:732573818803191869>")
// .setFooter("Kolejne możliwe losowanie za: 1 dzień")
// .setTimestamp()
const embedb = new MessageEmbed()
.setColor('RANDOM')
.setAuthor("ZWYKŁA SKRZYNKA!")
.setDescription("<a:8203_MinecraftChest:732573818803191869> WOW! Wylosowałeś aż 5000 <:FlashCoin:722161701415551059>! <a:8203_MinecraftChest:732573818803191869>")
.setFooter("Kolejne możliwe losowanie za: 1 dzień")
const embedc = new MessageEmbed()
.setColor('RANDOM')
.setAuthor("ZWYKŁA SKRZYNKA!")
.setDescription("<a:8203_MinecraftChest:732573818803191869> WOW! Wylosowałeś aż 1000 <:FlashCoin:722161701415551059>! <a:8203_MinecraftChest:732573818803191869>")
.setFooter("Kolejne możliwe losowanie za: 1 dzień")
const embedd = new MessageEmbed()
.setColor('RANDOM')
.setAuthor("ZWYKŁA SKRZYNKA!")
.setDescription("<a:8203_MinecraftChest:732573818803191869> WOW! Wylosowałeś aż 2000 <:FlashCoin:722161701415551059>! <a:8203_MinecraftChest:732573818803191869>")
.setFooter("Kolejne możliwe losowanie za: 1 dzień")
const embede = new MessageEmbed()
.setColor('RANDOM')
.setAuthor("ZWYKŁA SKRZYNKA!")
.setDescription("<a:8203_MinecraftChest:732573818803191869> WOW! Wylosowałeś VIPa lub jego równowartość <:FlashCoin:722161701415551059>! <a:8203_MinecraftChest:732573818803191869>")
.setFooter("Kolejne możliwe losowanie za: 1 dzień")
const embedf = new MessageEmbed()
.setColor('RANDOM')
.setAuthor("ZWYKŁA SKRZYNKA!")
.setDescription("<a:8203_MinecraftChest:732573818803191869> WOW! Wylosowałeś własną emotkę! Wyślij ją na <#718404003125526550> i oznacz @ Szefuńcio , a my ją dodamy! <a:8203_MinecraftChest:732573818803191869>")
.setFooter("Kolejne możliwe losowanie za: 1 dzień")
const embedg = new MessageEmbed()
.setColor('RANDOM')
.setAuthor("ZWYKŁA SKRZYNKA!")
.setDescription("<a:8203_MinecraftChest:732573818803191869> WOW! Wylosowałeś @Posiadacz GucioBOT Premium! Zgłoś się do <@576444179958464522> <a:7080_verif_blue:736928552561147966>! <a:8203_MinecraftChest:732573818803191869>")
.setFooter("Kolejne możliwe losowanie za: 1 dzień")
var facts = [embedb, embedc, embedd, embede, embedf];
var fact = Math.floor(Math.random() * facts.length);
message.channel.send(facts[fact]);
}
}
A oto błąd:
UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'id' of undefined
at Object.run (C:\Users\Kamil1\Desktop\team\KamilBOT\commands\komendy\skrzynka.js:11:27)
at Client.<anonymous> (C:\Users\Kamil1\Desktop\team\KamilBOT\index.js:49:17)
at Client.emit (events.js:327:22)
at MessageCreateAction.handle (C:\Users\Kamil1\Desktop\team\KamilBOT\node_modules\discord.js\src\client\actions\MessageCreate.js:31:14)
at Object.module.exports [as MESSAGE_CREATE] (C:\Users\Kamil1\Desktop\team\KamilBOT\node_modules\discord.js\src\client\websocket\handlers\MESSAGE_CREATE.js:4:32)
at WebSocketManager.handlePacket (C:\Users\Kamil1\Desktop\team\KamilBOT\node_modules\discord.js\src\client\websocket\WebSocketManager.js:386:31)
at WebSocketShard.onPacket (C:\Users\Kamil1\Desktop\team\KamilBOT\node_modules\discord.js\src\client\websocket\WebSocketShard.js:436:22)
at WebSocketShard.onMessage (C:\Users\Kamil1\Desktop\team\KamilBOT\node_modules\discord.js\src\client\websocket\WebSocketShard.js:293:10)
at WebSocket.onMessage (C:\Users\Kamil1\Desktop\team\KamilBOT\node_modules\ws\lib\event-target.js:125:16)
at WebSocket.emit (events.js:315:20)
(node:5320) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:5320) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
A tutaj część index.js z linijką 49:
if (command)
command.run(client, message, args);
Bardzo proszę o pomoc, z góry dziękuję