Не уверен, что создание канала и создание роли не работает внутри следующего кода, внизу.(РЕДАКТИРОВАТЬ: ничего не отправляется на консоль, и ничего не происходит с кодом. Это похоже на то, что он полностью игнорируется.) Это фрагмент кода, который пользователь A вызывает пользователя B. Пользователь B обменивается сообщениями, предупреждая их, что вызов былвыдается им через личное сообщение.Если вызов принят, я хочу, чтобы бот: 1) назначил роль специально для пользователя A и пользователя B с именем «Пользователь A против пользователя B» 2) возьмите пользователя A и пользователя B и поместите их обоих в эту новую роль и 3)Создайте поле битвы с именем «Пользователь A против пользователя B» внутри определенной категории на сервере, на котором работает бот.
Я не уверен, что проблема заключается в том, как бот пытается создать роль и канал вРазорвать, пока бот разговаривает с пользователем в личном сообщении, а не на сервере.Я думал, что использование переменной «server» в качестве идентификатора сервера поможет, но, похоже, он ничего не делает после сообщения accept.
// Awaits reply from user
if (message.channel.id === '541736552582086656') return target.send("Do you accept the challenge? Please reply with 'accept' or 'deny'.")
.then((newmsg) => {
newmsg.channel.awaitMessages(response => response.content, {
max: 1,
time: 150000,
errors: ['time'],
}).then((collected) => {
// Grabs the first (and only) message from the collection.
const reply = collected.first();
if (reply.content === 'accept'){
reply.channel.send(`You have ***accepted *** the challenge from ${challenger}. Please wait while your battlefield is made...`);
message.author.send(`${target} has accepted your challenge! Please wait while the channel is made for your brawl...`)
/// Problems start here
function createChannel(message){
var server = "SERVER ID";
var name = `${target} vs ${challenger}`;
message.guild.createRole({
role: {
name: `${target} vs ${challenger}`,
color: "#00fffa",
permissions: [] }
}).then(role => {
target.addRole(role, name)
challenger.addRole(role, name)
.catch(error => client.catch(error))
}).catch(error => client.catch(error))
server.createChannel(Name, name).then(
(channel) => {
channel.setParent("CATEGORY ID")
})
} // problems end here
} else if (reply.content === 'deny') {
reply.channel.send("You have ***denied *** the challenge.")
} else {
reply.channel.send("Your response wasn't valid.");
}
})
})
}
Мне было интересно, нужно ли мне заняться созданием канала и роли по-другому, поскольку он пытается быть сделан из личного сообщения, а не внутри сервера..
Спасибо за любую помощь!Я также прошу прощения, если я использую переполнение стека слишком много для таких проблем ... Вы, ребята, прекрасно помогаете мне видеть различные способы делать вещи и то, что я делаю неправильно, поэтому я учусь, но я нехочу чувствовать, что я слишком злоупотребляю им.