Initial commit of karuta-starboard bot
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
const { SlashCommandBuilder, PermissionFlagsBits } = require('discord.js');
|
||||
const { getMessages } = require('../utils/configManager');
|
||||
const { setGuildData } = require('../utils/dbManager');
|
||||
|
||||
module.exports = {
|
||||
data: new SlashCommandBuilder()
|
||||
.setName('setemoji')
|
||||
.setDescription('Set the reaction emoji')
|
||||
.addStringOption(option =>
|
||||
option.setName('emoji')
|
||||
.setDescription('Emoji (ex: ⭐ or <:name:id> or <a:name:id>)')
|
||||
.setRequired(true))
|
||||
.setDefaultMemberPermissions(PermissionFlagsBits.Administrator),
|
||||
|
||||
async execute(interaction) {
|
||||
const emoji = interaction.options.getString('emoji');
|
||||
setGuildData(interaction.guildId, { emoji });
|
||||
|
||||
const messages = getMessages();
|
||||
if (!messages.emoji_set_success) {
|
||||
return interaction.reply({
|
||||
content: '❌ Missing `emoji_set_success` message in config.yml.',
|
||||
ephemeral: true
|
||||
});
|
||||
}
|
||||
|
||||
const reply = messages.emoji_set_success.replace('{emoji}', emoji);
|
||||
await interaction.reply({ content: reply, ephemeral: true });
|
||||
}
|
||||
};
|
||||
@@ -0,0 +1,30 @@
|
||||
const { SlashCommandBuilder, PermissionFlagsBits } = require('discord.js');
|
||||
const { getMessages } = require('../utils/configManager');
|
||||
const { setGuildData } = require('../utils/dbManager');
|
||||
|
||||
module.exports = {
|
||||
data: new SlashCommandBuilder()
|
||||
.setName('setstarboard')
|
||||
.setDescription('Set up the highlight channel')
|
||||
.addChannelOption(option =>
|
||||
option.setName('channel')
|
||||
.setDescription('Select the channel for highlighted messages')
|
||||
.setRequired(true))
|
||||
.setDefaultMemberPermissions(PermissionFlagsBits.ManageGuild),
|
||||
|
||||
async execute(interaction) {
|
||||
const channel = interaction.options.getChannel('channel');
|
||||
setGuildData(interaction.guildId, { starboard: channel.id });
|
||||
|
||||
const messages = getMessages();
|
||||
if (!messages.starboard_set_success) {
|
||||
return interaction.reply({
|
||||
content: '❌ Missing `starboard_set_success` message in config.yml.',
|
||||
ephemeral: true
|
||||
});
|
||||
}
|
||||
|
||||
const reply = messages.starboard_set_success.replace('{channel}', `<#${channel.id}>`);
|
||||
await interaction.reply({ content: reply, ephemeral: true });
|
||||
}
|
||||
};
|
||||
Reference in New Issue
Block a user