Previously, anyone could send the keywords in chat and kill the bot. Now, only the set bot owner can run the command.
This commit is contained in:
@@ -11,6 +11,9 @@ public class Configuration
|
||||
private static boolean paused = false;
|
||||
private static String prefix = ".";
|
||||
|
||||
// todo: allow people to set their own user id
|
||||
private static final long botOwnerId = 979809420714332260L;
|
||||
|
||||
|
||||
/**
|
||||
* Checks if the bot has been started with the verbose argument.
|
||||
@@ -61,4 +64,6 @@ public class Configuration
|
||||
*/
|
||||
public static void setPaused(boolean p) { paused = p; }
|
||||
|
||||
public static long getBotOwnerId() { return botOwnerId; }
|
||||
|
||||
}
|
||||
|
||||
@@ -53,17 +53,6 @@ public class MessageListener extends ListenerAdapter
|
||||
return;
|
||||
}
|
||||
|
||||
if(eventMessage.equalsIgnoreCase("hideko die"))
|
||||
{
|
||||
MessageChannel channel = event.getChannel();
|
||||
|
||||
channel.sendMessage("Going to sleep! Cya :sparkles:").queue();
|
||||
|
||||
Executors.newSingleThreadScheduledExecutor().schedule(HidekoBot::shutdown, 3, TimeUnit.SECONDS);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if(eventMessage.equalsIgnoreCase("hideko verbose"))
|
||||
{
|
||||
MessageChannel channel = event.getChannel();
|
||||
|
||||
@@ -10,10 +10,14 @@ import net.dv8tion.jda.api.interactions.InteractionHook;
|
||||
import net.dv8tion.jda.api.interactions.commands.OptionMapping;
|
||||
import net.dv8tion.jda.api.requests.restaction.interactions.ReplyCallbackAction;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
import wtf.beatrice.hidekobot.Configuration;
|
||||
import wtf.beatrice.hidekobot.HidekoBot;
|
||||
import wtf.beatrice.hidekobot.utils.RandomUtil;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
public class SlashCommandListener extends ListenerAdapter
|
||||
{
|
||||
@@ -26,6 +30,17 @@ public class SlashCommandListener extends ListenerAdapter
|
||||
event.reply("Pong!").queue();
|
||||
}
|
||||
|
||||
else if (event.getName().equals("die"))
|
||||
{
|
||||
if(Configuration.getBotOwnerId() != event.getMember().getIdLong())
|
||||
{
|
||||
event.reply("Sorry, only the bot owner can run this command!").setEphemeral(true).queue();
|
||||
} else {
|
||||
event.reply("Going to sleep! Cya :sparkles:").queue();
|
||||
Executors.newSingleThreadScheduledExecutor().schedule(HidekoBot::shutdown, 3, TimeUnit.SECONDS);
|
||||
}
|
||||
}
|
||||
|
||||
else if (event.getName().equals("coinflip"))
|
||||
{
|
||||
int rand = RandomUtil.getRandomNumber(0, 1);
|
||||
|
||||
@@ -20,11 +20,13 @@ public class SlashCommandsUtil
|
||||
|
||||
static List<CommandData> allCommands = new ArrayList<>()
|
||||
{{
|
||||
add(Commands.slash("ping", "Test if the bot is responsive."));
|
||||
add(Commands.slash("coinflip", "Flip a coin and get head or tails."));
|
||||
add(Commands.slash("die", "Stop the bot's process")
|
||||
.setDefaultPermissions(DefaultMemberPermissions.DISABLED));
|
||||
add(Commands.slash("clear", "Clear the current channel's chat.")
|
||||
.addOption(OptionType.INTEGER, "amount", "The amount of messages to delete.")
|
||||
.setDefaultPermissions(DefaultMemberPermissions.enabledFor(Permission.MESSAGE_MANAGE)));
|
||||
add(Commands.slash("coinflip", "Flip a coin and get head or tails."));
|
||||
add(Commands.slash("ping", "Test if the bot is responsive."));
|
||||
}};
|
||||
|
||||
public static void updateSlashCommands()
|
||||
|
||||
Reference in New Issue
Block a user