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 boolean paused = false;
|
||||||
private static String prefix = ".";
|
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.
|
* 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 void setPaused(boolean p) { paused = p; }
|
||||||
|
|
||||||
|
public static long getBotOwnerId() { return botOwnerId; }
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -53,17 +53,6 @@ public class MessageListener extends ListenerAdapter
|
|||||||
return;
|
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"))
|
if(eventMessage.equalsIgnoreCase("hideko verbose"))
|
||||||
{
|
{
|
||||||
MessageChannel channel = event.getChannel();
|
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.interactions.commands.OptionMapping;
|
||||||
import net.dv8tion.jda.api.requests.restaction.interactions.ReplyCallbackAction;
|
import net.dv8tion.jda.api.requests.restaction.interactions.ReplyCallbackAction;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
|
import wtf.beatrice.hidekobot.Configuration;
|
||||||
|
import wtf.beatrice.hidekobot.HidekoBot;
|
||||||
import wtf.beatrice.hidekobot.utils.RandomUtil;
|
import wtf.beatrice.hidekobot.utils.RandomUtil;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.concurrent.Executors;
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
public class SlashCommandListener extends ListenerAdapter
|
public class SlashCommandListener extends ListenerAdapter
|
||||||
{
|
{
|
||||||
@@ -26,6 +30,17 @@ public class SlashCommandListener extends ListenerAdapter
|
|||||||
event.reply("Pong!").queue();
|
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"))
|
else if (event.getName().equals("coinflip"))
|
||||||
{
|
{
|
||||||
int rand = RandomUtil.getRandomNumber(0, 1);
|
int rand = RandomUtil.getRandomNumber(0, 1);
|
||||||
|
|||||||
@@ -20,11 +20,13 @@ public class SlashCommandsUtil
|
|||||||
|
|
||||||
static List<CommandData> allCommands = new ArrayList<>()
|
static List<CommandData> allCommands = new ArrayList<>()
|
||||||
{{
|
{{
|
||||||
add(Commands.slash("ping", "Test if the bot is responsive."));
|
add(Commands.slash("die", "Stop the bot's process")
|
||||||
add(Commands.slash("coinflip", "Flip a coin and get head or tails."));
|
.setDefaultPermissions(DefaultMemberPermissions.DISABLED));
|
||||||
add(Commands.slash("clear", "Clear the current channel's chat.")
|
add(Commands.slash("clear", "Clear the current channel's chat.")
|
||||||
.addOption(OptionType.INTEGER, "amount", "The amount of messages to delete.")
|
.addOption(OptionType.INTEGER, "amount", "The amount of messages to delete.")
|
||||||
.setDefaultPermissions(DefaultMemberPermissions.enabledFor(Permission.MESSAGE_MANAGE)));
|
.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()
|
public static void updateSlashCommands()
|
||||||
|
|||||||
Reference in New Issue
Block a user