Skip to content

Commit

Permalink
Fix interaction response object issue, fix soundplayer voice state de…
Browse files Browse the repository at this point in the history
…tection
  • Loading branch information
TheEssem committed Oct 4, 2022
1 parent ab2d6e2 commit 7c9f22c
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 17 deletions.
4 changes: 2 additions & 2 deletions commands/music/play.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,10 +19,10 @@ class PlayCommand extends MusicCommand {
}
try {
const url = new URL(query);
return await play(this.client, url, { channel: this.channel, member: this.member, type: this.type, interaction: this.interaction }, true);
return play(this.client, url, { channel: this.channel, member: this.member, type: this.type, interaction: this.interaction }, true);
} catch {
const search = prefixes.some(v => query.startsWith(v)) ? query : !query && attachment ? attachment.url : `ytsearch:${query}`;
return await play(this.client, search, { channel: this.channel, member: this.member, type: this.type, interaction: this.interaction }, true);
return play(this.client, search, { channel: this.channel, member: this.member, type: this.type, interaction: this.interaction }, true);
}
}

Expand Down
30 changes: 16 additions & 14 deletions events/interactionCreate.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,23 +31,25 @@ export default async (client, interaction) => {
content: result,
flags: commandClass.success ? 0 : 64
});
} else if (typeof result === "object" && result.embeds) {
await interaction[replyMethod](Object.assign(result, {
flags: result.flags ?? (commandClass.success ? 0 : 64)
}));
} else if (typeof result === "object" && result.contents) {
const fileSize = 8388119;
if (result.contents.length > fileSize) {
if (process.env.TEMPDIR && process.env.TEMPDIR !== "") {
await upload(client, result, interaction, true);
} else if (typeof result === "object") {
if (result.contents && result.name) {
const fileSize = 8388119;
if (result.contents.length > fileSize) {
if (process.env.TEMPDIR && process.env.TEMPDIR !== "") {
await upload(client, result, interaction, true);
} else {
await interaction[replyMethod]({
content: "The resulting image was more than 8MB in size, so I can't upload it.",
flags: 64
});
}
} else {
await interaction[replyMethod]({
content: "The resulting image was more than 8MB in size, so I can't upload it.",
flags: 64
});
await interaction[replyMethod](result.text ? result.text : { files: [result] });
}
} else {
await interaction[replyMethod](result.text ? result.text : { files: [result] });
await interaction[replyMethod](Object.assign({
flags: result.flags ?? (commandClass.success ? 0 : 64)
}, result));
}
}
} catch (error) {
Expand Down
2 changes: 1 addition & 1 deletion utils/soundplayer.js
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ export function reload() {
export async function play(client, sound, options, music = false) {
if (!manager) return { content: "The sound commands are still starting up!", flags: 64 };
if (!options.channel.guild) return { content: "This command only works in servers!", flags: 64 };
if (!options.member.voiceState.channelID) return { content: "You need to be in a voice channel first!", flags: 64 };
if (!options.member.voiceState) return { content: "You need to be in a voice channel first!", flags: 64 };
if (!options.channel.guild.permissionsOf(client.user.id.toString()).has("CONNECT")) return { content: "I can't join this voice channel!", flags: 64 };
const voiceChannel = options.channel.guild.channels.get(options.member.voiceState.channelID);
if (!voiceChannel.permissionsOf(client.user.id.toString()).has("CONNECT")) return { content: "I don't have permission to join this voice channel!", flags: 64 };
Expand Down

0 comments on commit 7c9f22c

Please sign in to comment.