我正在用斜杠命令做 discord bot,我有那个代码:
let channel = client.channels.cache.get('channel id')
var member = guild.members.cache.get(Object.values(interaction.data.options[0])[0])
var role = client.guilds.cache.get("guild id").roles.cache.get("role id")
let reason = Object.values(interaction.data.options[1])[0]
let time = '1h'
try {
let time = Object.values(interaction.data.options[2])[0]
} catch(err){
console.log("some text")
}
member.roles.add("role id");
let time2 = times(time)
const muteEmbed = new Discord.MessageEmbed()
.setTitle("Mute")
.setDescription("<@" + member.id + "> Otrzymał mute za "+reason+", na "+parseInt(time).toString()+' '+typeoftime(time)+".")
.setTimestamp()
.setColor("#ff0000")
client.channels.cache.get('channel').send(muteEmbed)
member.timeout = client.setTimeout(async () => {
try {
member.roles.remove("role id");
const unmuteEmbed = new Discord.MessageEmbed()
.setTitle('Unmute')
.setDescription("<@"+member.id+"> Już nie ma mute.")
.setTimestamp()
.setColor("#00ff00");
client.channels.cache.get('channel id').send(unmuteEmbed);
} catch (err) {
console.log(err)
}
}, time2);
但是没有通过 id 找到用户的东西不起作用......有人可以帮忙吗? (部分代码是自定义函数(times 和 typeoftime))
答案 0 :(得分:1)
其实你没有正确找到用户、角色和渠道
您可以通过以下方式查找会员
let member = guild.members.cache.find(mem => mem.id === "member_id_here")
对于角色
let role = guild.roles.cache.find(r => r.id === "role_id_here")
频道
let channel = guild.channel.cache.find(ch => ch.id === "channel_id_here")