From 160f98295542580eecf8d793b5b1ae26a6d0d941 Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Fri, 7 Nov 2025 08:34:19 +0100 Subject: [PATCH] Improve ChatListener for STC Chat Add debug output for DiscordChannel Fix CouncilChannel --- .../discord/channels/CouncilChannel.java | 18 ++++++++++++------ .../discord/channels/StaticMessageChannel.java | 1 + .../velocitycore/listeners/ChatListener.java | 2 +- 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/VelocityCore/src/de/steamwar/velocitycore/discord/channels/CouncilChannel.java b/VelocityCore/src/de/steamwar/velocitycore/discord/channels/CouncilChannel.java index cb46e718..7f1b1d60 100644 --- a/VelocityCore/src/de/steamwar/velocitycore/discord/channels/CouncilChannel.java +++ b/VelocityCore/src/de/steamwar/velocitycore/discord/channels/CouncilChannel.java @@ -20,17 +20,16 @@ package de.steamwar.velocitycore.discord.channels; import de.steamwar.sql.SteamwarUser; +import de.steamwar.velocitycore.VelocityCore; import de.steamwar.velocitycore.discord.DiscordBot; import it.unimi.dsi.fastutil.Pair; import net.dv8tion.jda.api.EmbedBuilder; +import net.dv8tion.jda.api.entities.Member; import net.dv8tion.jda.api.entities.Role; import net.dv8tion.jda.api.entities.channel.concrete.ThreadChannel; import net.dv8tion.jda.api.utils.messages.MessageCreateBuilder; -import java.util.Comparator; -import java.util.HashSet; -import java.util.Set; -import java.util.UUID; +import java.util.*; public class CouncilChannel extends StaticMessageChannel { @@ -45,8 +44,15 @@ public class CouncilChannel extends StaticMessageChannel { MessageCreateBuilder messageCreateBuilder = new MessageCreateBuilder(); messageCreateBuilder.setContent("# Ratsmitglieder"); - DiscordBot.getGuild().findMembersWithRoles(role).get() - .stream() + List members; + try { + members = DiscordBot.getGuild().findMembersWithRoles(role).get(); + } catch (Exception e) { + VelocityCore.getLogger().warning("Could not get members for " + role.getName()); + return messageCreateBuilder; + } + + members.stream() .map(member -> { SteamwarUser steamwarUser = SteamwarUser.get(member.getIdLong()); String name = steamwarUser == null ? member.getEffectiveName() : steamwarUser.getUserName(); diff --git a/VelocityCore/src/de/steamwar/velocitycore/discord/channels/StaticMessageChannel.java b/VelocityCore/src/de/steamwar/velocitycore/discord/channels/StaticMessageChannel.java index 178acbcd..5108b1d2 100644 --- a/VelocityCore/src/de/steamwar/velocitycore/discord/channels/StaticMessageChannel.java +++ b/VelocityCore/src/de/steamwar/velocitycore/discord/channels/StaticMessageChannel.java @@ -26,6 +26,7 @@ import net.dv8tion.jda.api.events.interaction.component.GenericComponentInteract import net.dv8tion.jda.api.utils.messages.MessageCreateBuilder; import net.dv8tion.jda.api.utils.messages.MessageEditData; +import java.util.concurrent.TimeoutException; import java.util.function.Consumer; import java.util.function.Supplier; diff --git a/VelocityCore/src/de/steamwar/velocitycore/listeners/ChatListener.java b/VelocityCore/src/de/steamwar/velocitycore/listeners/ChatListener.java index 6b0c7059..d0bfe2a7 100644 --- a/VelocityCore/src/de/steamwar/velocitycore/listeners/ChatListener.java +++ b/VelocityCore/src/de/steamwar/velocitycore/listeners/ChatListener.java @@ -189,7 +189,7 @@ public class ChatListener extends BasicListener { if(format.equals("CHAT_GLOBAL")) { DiscordBot.withBot(bot -> chatToReciever(bot.getIngameChat(), msgReceiver, user, format, coloredMessage)); } else if (format.equals("CHAT_SERVERTEAM")) { - DiscordBot.withBot(bot -> chatToReciever(bot.getServerTeamChat(), msgReceiver, user, format, coloredMessage)); + DiscordBot.withBot(bot -> chatToReciever(bot.getServerTeamChat(), msgReceiver, user, "CHAT_GLOBAL", coloredMessage)); } else if (noReceiver) { sender.system("CHAT_NO_RECEIVER"); }