所以我正在为我的 Discord 机器人开发票务系统,我的代码以前可以工作,但我把它搞砸了,现在它不起作用。
我想要它做什么:当人们点击按钮(discord-buttons)时,我希望它首先检查一个名为“Tickets”的类别,然后创建一个名为“(username)-ticket”的新频道,最后发送一个嵌入到刚刚制作的频道中。
实际发生的情况:代码只是说“无法读取未定义的通道”,并且不起作用。
我的代码:
client.on('clickButton', async (button) => {
if (button.id == "ticket") {
let embed = new Discord.MessageEmbed;
embed.setTitle('Created Ticket')
embed.setDescription('Successfully created your ticket.')
await button.reply.send({ embed: embed }, true);
let embed2 = new Discord.MessageEmbed
embed2.setTitle(`Hello, ${button.clicker.user.username}`)
embed2.setDescription('Someone will be with you shortly. To close the ticket, press the ❌ emoji.')
embed2.setFooter('Ticketing System created by FireyJS#6969')
const guild = button.clicker.guild
if (guild.channels.cache.find(c => c.name.toLowerCase() === 'tickets')) {
const category = guild.channels.cache.find(c => c.name.toLowerCase() === 'tickets')
guild.channels.create(`${button.clicker.user.username}-ticket`, { reason : 'Needed to make a ticket lol' }).then(channel => {
channel.setParent(category)
channel.send(embed2)
}).then(message => { message.react('❌') })
} else {
message.channel.send('Make a category named ``Tickets`` to get started with ticketing!')
}
}
});