From b50e30ffc5f4d8d915f7f0dbb9c9f758280fc519 Mon Sep 17 00:00:00 2001 From: Liam Date: Thu, 27 Jun 2024 13:11:58 +0100 Subject: [PATCH] add invite command --- .../bat/command/impl/InviteCommand.java | 32 +++++++++++++++++++ .../fascinated/bat/service/GuildService.java | 5 +-- 2 files changed, 35 insertions(+), 2 deletions(-) create mode 100644 src/main/java/cc/fascinated/bat/command/impl/InviteCommand.java diff --git a/src/main/java/cc/fascinated/bat/command/impl/InviteCommand.java b/src/main/java/cc/fascinated/bat/command/impl/InviteCommand.java new file mode 100644 index 0000000..53e1d5a --- /dev/null +++ b/src/main/java/cc/fascinated/bat/command/impl/InviteCommand.java @@ -0,0 +1,32 @@ +package cc.fascinated.bat.command.impl; + +import cc.fascinated.bat.command.BatCommand; +import cc.fascinated.bat.common.EmbedUtils; +import cc.fascinated.bat.model.BatGuild; +import cc.fascinated.bat.model.BatUser; +import lombok.NonNull; +import net.dv8tion.jda.api.entities.Member; +import net.dv8tion.jda.api.entities.channel.middleman.MessageChannel; +import net.dv8tion.jda.api.interactions.commands.SlashCommandInteraction; +import org.springframework.stereotype.Component; + +/** + * @author Fascinated (fascinated7) + */ +@Component +public class InviteCommand extends BatCommand { + private static final String INVITE_URL = "https://discord.com/oauth2/authorize?client_id=1254161119975833652&permissions=8&integration_type=0&scope=bot+applications.commands"; + + public InviteCommand() { + super("invite", "Invite the bot to your server!"); + } + + @Override + public void execute(BatGuild guild, @NonNull BatUser user, @NonNull MessageChannel channel, Member member, @NonNull SlashCommandInteraction interaction) { + interaction.replyEmbeds(EmbedUtils.genericEmbed() + .setDescription("You can invite the bot to your server by clicking [here](%s)".formatted(INVITE_URL)) + .build()) + .setEphemeral(true) + .queue(); + } +} diff --git a/src/main/java/cc/fascinated/bat/service/GuildService.java b/src/main/java/cc/fascinated/bat/service/GuildService.java index cd2fa8a..ee1cb00 100644 --- a/src/main/java/cc/fascinated/bat/service/GuildService.java +++ b/src/main/java/cc/fascinated/bat/service/GuildService.java @@ -83,7 +83,8 @@ public class GuildService extends ListenerAdapter { @Override public final void onGuildJoin(GuildJoinEvent event) { - log.info("Joined guild \"{}\"", event.getGuild().getId()); - getGuild(event.getGuild().getId()); // Ensure the guild is in the database + Guild guild = event.getGuild(); + log.info("Joined guild \"{}\"", guild.getId()); + getGuild(guild.getId()); // Ensure the guild is in the database } }