[CHORE] Update Discord JDA

This commit is contained in:
2023-11-10 19:00:52 +02:00
parent b0a0a551a0
commit 15b2796206
3 changed files with 76 additions and 65 deletions

View File

@@ -1,11 +1,11 @@
version_major=0
version_minor=0
version_patch=39
version_patch=40
shade_group=com.hypherionmc.sdlink.shaded.
# Core Dependencies
jda=5.0.0-beta.16
jda=5.0.0-beta.17
chewtils=2.0-SNAPSHOT
webhooks=0.7.5
commons4=4.4

View File

@@ -35,49 +35,54 @@ public class PlayerListSlashCommand extends SDLinkSlashCommand {
@Override
protected void execute(SlashCommandEvent event) {
List<MinecraftAccount> players = SDLinkPlatform.minecraftHelper.getOnlinePlayers();
try {
List<MinecraftAccount> players = SDLinkPlatform.minecraftHelper.getOnlinePlayers();
EmbedBuilder builder = new EmbedBuilder();
List<MessageEmbed> pages = new ArrayList<>();
AtomicInteger count = new AtomicInteger();
EmbedBuilder builder = new EmbedBuilder();
List<MessageEmbed> pages = new ArrayList<>();
AtomicInteger count = new AtomicInteger();
if (players.isEmpty()) {
builder.setTitle("Online Players");
builder.setColor(Color.RED);
builder.setDescription("There are currently no players online");
event.replyEmbeds(builder.build()).setEphemeral(true).queue();
return;
}
if (players.isEmpty()) {
builder.setTitle("Online Players");
builder.setColor(Color.RED);
builder.setDescription("There are currently no players online");
event.replyEmbeds(builder.build()).setEphemeral(true).queue();
return;
}
EmbedPaginator.Builder paginator = MessageUtil.defaultPaginator(event);
EmbedPaginator.Builder paginator = MessageUtil.defaultPaginator(event);
/**
* Use Pagination to avoid message limits
*/
MessageUtil.listBatches(players, 10).forEach(p -> {
StringBuilder sb = new StringBuilder();
count.getAndIncrement();
builder.clear();
builder.setTitle("Online Players - Page " + count.get() + "/" + (int)Math.ceil(((float)players.size() / 10)));
builder.setColor(Color.GREEN);
/**
* Use Pagination to avoid message limits
*/
MessageUtil.listBatches(players, 10).forEach(p -> {
StringBuilder sb = new StringBuilder();
count.getAndIncrement();
builder.clear();
builder.setTitle("Online Players - Page " + count.get() + "/" + (int)Math.ceil(((float)players.size() / 10)));
builder.setColor(Color.GREEN);
p.forEach(account -> {
sb.append("`").append(account.getUsername()).append("`");
p.forEach(account -> {
sb.append("`").append(account.getUsername()).append("`");
if (SDLinkConfig.INSTANCE.accessControl.enabled && account.getDiscordUser() != null) {
sb.append(" - ").append(account.getDiscordUser().getAsMention());
}
sb.append("\r\n");
if (SDLinkConfig.INSTANCE.accessControl.enabled && account.getDiscordUser() != null) {
sb.append(" - ").append(account.getDiscordUser().getAsMention());
}
sb.append("\r\n");
});
builder.setDescription(sb.toString());
pages.add(builder.build());
});
builder.setDescription(sb.toString());
pages.add(builder.build());
});
paginator.setItems(pages);
EmbedPaginator embedPaginator = paginator.build();
paginator.setItems(pages);
EmbedPaginator embedPaginator = paginator.build();
event.replyEmbeds(pages.get(0)).setEphemeral(false).queue(success ->
success.retrieveOriginal().queue(msg -> embedPaginator.paginate(msg, 1)));
event.replyEmbeds(pages.get(0)).setEphemeral(false).queue(success ->
success.retrieveOriginal().queue(msg -> embedPaginator.paginate(msg, 1)));
} catch (Exception e) {
if (SDLinkConfig.INSTANCE.generalConfig.debugging)
e.printStackTrace();
}
}
}

View File

@@ -4,6 +4,7 @@
*/
package com.hypherionmc.sdlink.core.discord.commands.slash.verification;
import com.hypherionmc.sdlink.core.config.SDLinkConfig;
import com.hypherionmc.sdlink.core.database.SDLinkAccount;
import com.hypherionmc.sdlink.core.discord.commands.slash.SDLinkSlashCommand;
import com.hypherionmc.sdlink.core.util.MessageUtil;
@@ -35,44 +36,49 @@ public class ViewVerifiedAccounts extends SDLinkSlashCommand {
@Override
protected void execute(SlashCommandEvent event) {
EmbedPaginator.Builder paginator = MessageUtil.defaultPaginator(event);
try {
EmbedPaginator.Builder paginator = MessageUtil.defaultPaginator(event);
sdlinkDatabase.reloadCollection("verifiedaccounts");
List<SDLinkAccount> accounts = sdlinkDatabase.findAll(SDLinkAccount.class);
sdlinkDatabase.reloadCollection("verifiedaccounts");
List<SDLinkAccount> accounts = sdlinkDatabase.findAll(SDLinkAccount.class);
EmbedBuilder builder = new EmbedBuilder();
ArrayList<MessageEmbed> pages = new ArrayList<>();
AtomicInteger count = new AtomicInteger();
EmbedBuilder builder = new EmbedBuilder();
ArrayList<MessageEmbed> pages = new ArrayList<>();
AtomicInteger count = new AtomicInteger();
if (accounts.isEmpty()) {
event.reply("There are no verified accounts for this discord").setEphemeral(true).queue();
return;
}
if (accounts.isEmpty()) {
event.reply("There are no verified accounts for this discord").setEphemeral(true).queue();
return;
}
MessageUtil.listBatches(accounts, 10).forEach(itm -> {
count.getAndIncrement();
builder.clear();
builder.setTitle("Verified Accounts - Page " + count + "/" + (int)Math.ceil(((float)accounts.size() / 10)));
builder.setColor(Color.GREEN);
StringBuilder sBuilder = new StringBuilder();
MessageUtil.listBatches(accounts, 10).forEach(itm -> {
count.getAndIncrement();
builder.clear();
builder.setTitle("Verified Accounts - Page " + count + "/" + (int)Math.ceil(((float)accounts.size() / 10)));
builder.setColor(Color.GREEN);
StringBuilder sBuilder = new StringBuilder();
itm.forEach(v -> {
Member member = null;
itm.forEach(v -> {
Member member = null;
if (v.getDiscordID() != null && !v.getDiscordID().isEmpty()) {
member = event.getGuild().getMemberById(v.getDiscordID());
}
if (v.getDiscordID() != null && !v.getDiscordID().isEmpty()) {
member = event.getGuild().getMemberById(v.getDiscordID());
}
sBuilder.append(v.getUsername()).append(" -> ").append(member == null ? "Unlinked" : member.getAsMention()).append("\r\n");
sBuilder.append(v.getUsername()).append(" -> ").append(member == null ? "Unlinked" : member.getAsMention()).append("\r\n");
});
builder.setDescription(sBuilder);
pages.add(builder.build());
});
builder.setDescription(sBuilder);
pages.add(builder.build());
});
paginator.setItems(pages);
EmbedPaginator embedPaginator = paginator.build();
paginator.setItems(pages);
EmbedPaginator embedPaginator = paginator.build();
event.replyEmbeds(pages.get(0)).setEphemeral(false).queue(success -> success.retrieveOriginal().queue(msg -> embedPaginator.paginate(msg, 1)));
event.replyEmbeds(pages.get(0)).setEphemeral(false).queue(success -> success.retrieveOriginal().queue(msg -> embedPaginator.paginate(msg, 1)));
} catch (Exception e) {
if (SDLinkConfig.INSTANCE.generalConfig.debugging)
e.printStackTrace();
}
}
}