Files
2024-10-26 20:33:18 +08:00

26 lines
971 B
TypeScript

import { ChatInputCommandInteraction, SlashCommandBuilder } from "discord.js";
import { bot } from "../index";
import { i18n } from "../utils/i18n";
import { canModifyQueue } from "../utils/queue";
import { safeReply } from "../utils/safeReply";
export default {
data: new SlashCommandBuilder().setName("loop").setDescription(i18n.__("loop.description")),
execute(interaction: ChatInputCommandInteraction) {
const queue = bot.queues.get(interaction.guild!.id);
const guildMemer = interaction.guild!.members.cache.get(interaction.user.id);
if (!queue)
return interaction.reply({ content: i18n.__("loop.errorNotQueue"), ephemeral: true }).catch(console.error);
if (!guildMemer || !canModifyQueue(guildMemer)) return i18n.__("common.errorNotChannel");
queue.loop = !queue.loop;
const content = i18n.__mf("loop.result", { loop: queue.loop ? i18n.__("common.on") : i18n.__("common.off") });
safeReply(interaction, content);
}
};