collector.on("collect", async (i) => {
i.deferReply({ ephemeral: true }).catch(() => {});
if (!interaction.member.voice.channel)
return i.followUp({
content:
emojis.error + ` | **You Must Join A Voice Channel**`,
ephemeral: true,
});
if (interaction.guild.me.voice.channel) {
if (
interaction.member.voice.channel?.id !==
interaction.guild.me.voice.channel?.id
)
return i.followUp({
content:
emojis.error +
` | **You Must Join <#${interaction.guild.me.voice.channel.id}> To Contolr The Panel**`,
ephemeral: true,
});
}
-----------------------------------------------------------------------------
else if (panelType == "reactions") {
if (!interaction.member.voice.channel)
return interaction.channel
.send(emojis.error + ` | **You Must Join A Voice Channel**`)
.then((m) => {
setTimeout(() => {
m.delete();
}, 1500);
});
if (interaction.guild.me.voice.channel) {
if (
interaction.member.voice.channel?.id !==
interaction.guild.me.voice.channel?.id
)
return interaction.channel
.send(
emojis.error +
` | **You Must Join <#${interaction.guild.me.voice.channel.id}> To Contolr The Panel**`
)
.then((m) => {
setTimeout(() => {
m.delete();
}, 1500);
});
}
anyone can help please .. I want the user when he types the prefix while he play.. I want the user to get a error message that he can't play that song if he is not in the some channel.. this code does not execute it can someone fix it to me
You can use an if () statement:
if (message.guild.me.voice.channel && message.member.voice.channel.id !== message.guild.me.voice.channel.id) return message.reply({content: 'you must be in the same voice channel as me'})
Or you can use .some() method to return a boolean, like:
const sameChan = client.voice.connections.some((c) => c.channel.id === msg.member.voice.channelID)
if (!sameChan) return message.reply({content: 'you must be in the same voice channel as me'})
I recommend using the first choice though
collector.on("collect", async (i) => {
i.deferReply({ ephemeral: true }).catch(() => {});
if (!interaction.member.voice.channel)
return i.followUp({
content:
emojis.error + ` | **You Must Join A Voice Channel**`,
ephemeral: true,
});
if (interaction.guild.me.voice.channel) {
if (message.guild.me.voice.channel && message.member.voice.channel.id !== message.guild.me.voice.channel.id)
return message.reply({content: 'you must be in the same voice channel as me'})
}});
----------------------------------------------------------------------------
else if (panelType == "reactions") {
if (!interaction.member.voice.channel)
return interaction.channel
.send(emojis.error + ` | **You Must Join A Voice Channel**`)
.then((m) => {
setTimeout(() => {
m.delete();
}, 1500);
});
if (interaction.guild.me.voice.channel) {
if (message.guild.me.voice.channel && message.member.voice.channel.id !== message.guild.me.voice.channel.id) return message.reply({content: 'you must be in the same voice channel as me'})
};
.then((m) => {
setTimeout(() => {
m.delete();
}, 1500);
});
}