From 160f98295542580eecf8d793b5b1ae26a6d0d941 Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Fri, 7 Nov 2025 08:34:19 +0100 Subject: [PATCH 1/6] 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"); } From f0e18bfc720eb8ee4e668e9972d45044ab8d0ba6 Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Fri, 7 Nov 2025 08:39:42 +0100 Subject: [PATCH 2/6] Improve CouncilChannel and StaticMessageChannel --- .../velocitycore/discord/channels/CouncilChannel.java | 4 +++- .../velocitycore/discord/channels/StaticMessageChannel.java | 3 ++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/VelocityCore/src/de/steamwar/velocitycore/discord/channels/CouncilChannel.java b/VelocityCore/src/de/steamwar/velocitycore/discord/channels/CouncilChannel.java index 7f1b1d60..0f0b8417 100644 --- a/VelocityCore/src/de/steamwar/velocitycore/discord/channels/CouncilChannel.java +++ b/VelocityCore/src/de/steamwar/velocitycore/discord/channels/CouncilChannel.java @@ -46,7 +46,9 @@ public class CouncilChannel extends StaticMessageChannel { List members; try { - members = DiscordBot.getGuild().findMembersWithRoles(role).get(); + members = DiscordBot.getGuild().findMembersWithRoles(role).onError(throwable -> { + // Ignore + }).get(); } catch (Exception e) { VelocityCore.getLogger().warning("Could not get members for " + role.getName()); return messageCreateBuilder; diff --git a/VelocityCore/src/de/steamwar/velocitycore/discord/channels/StaticMessageChannel.java b/VelocityCore/src/de/steamwar/velocitycore/discord/channels/StaticMessageChannel.java index 5108b1d2..f959e1f4 100644 --- a/VelocityCore/src/de/steamwar/velocitycore/discord/channels/StaticMessageChannel.java +++ b/VelocityCore/src/de/steamwar/velocitycore/discord/channels/StaticMessageChannel.java @@ -19,6 +19,7 @@ package de.steamwar.velocitycore.discord.channels; +import de.steamwar.velocitycore.VelocityCore; import net.dv8tion.jda.api.EmbedBuilder; import net.dv8tion.jda.api.entities.Message; import net.dv8tion.jda.api.entities.channel.middleman.MessageChannel; @@ -64,7 +65,7 @@ public class StaticMessageChannel extends DiscordChannel { if(getChannel().getLatestMessageIdLong() != 0) message = getChannel().getIterableHistory().complete().stream().filter(m -> m.getAuthor().isBot()).findFirst().orElse(null); - update(); + VelocityCore.schedule(this::update); } public void update() { From c17b76851df917d87bdf3a46fce84d96723e922a Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Fri, 7 Nov 2025 08:44:07 +0100 Subject: [PATCH 3/6] Improve chat from discord --- VelocityCore/src/de/steamwar/messages/BungeeCore.properties | 2 +- VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/VelocityCore/src/de/steamwar/messages/BungeeCore.properties b/VelocityCore/src/de/steamwar/messages/BungeeCore.properties index 42605662..14c82866 100644 --- a/VelocityCore/src/de/steamwar/messages/BungeeCore.properties +++ b/VelocityCore/src/de/steamwar/messages/BungeeCore.properties @@ -578,7 +578,7 @@ CHAT_EMPTY=§cDon\'t write meaningless empty messages. CHAT_SERVERTEAM=§8STC §e{0}§8» §f{2} CHAT_DISCORD_SERVERTEAM=§8STC §e{0}§8» §f{2} CHAT_GLOBAL={3}{4}{5}{6}{0}§8» {7}{2} -CHAT_DISCORD_GLOBAL=§8Dc {5}{6}{0}§8» {7}{2} +CHAT_DISCORD_GLOBAL=§8DC {3}{4}{5}{6}{0}§8» {7}{2} CHAT_TEAM=§8TC §e{0}§8» §f{2} CHAT_MSG=§e{0}§8»§e{1} §7{2} diff --git a/VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties b/VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties index a79cfdf7..ced0dabc 100644 --- a/VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties +++ b/VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties @@ -552,7 +552,7 @@ CHAT_EMPTY=§cSchreibe keine inhaltslosen Nachrichten. CHAT_SERVERTEAM=§8STC §e{0}§8» §f{2} CHAT_DISCORD_SERVERTEAM=§8STC §e{0}§8» §f{2} CHAT_GLOBAL={3}{4}{5}{6}{0}§8» {7}{2} -CHAT_DISCORD_GLOBAL=§8Dc {5}{6}{0}§8» {7}{2} +CHAT_DISCORD_GLOBAL=§8DC {3}{4}{5}{6}{0}§8» {7}{2} CHAT_TEAM=§8TC §e{0}§8» §f{2} CHAT_MSG=§e{0}§8»§e{1} §7{2} From 3ccfe92afbddf7ff871dcb9bd22d4a616b5b2017 Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Fri, 7 Nov 2025 08:46:26 +0100 Subject: [PATCH 4/6] Remove DC prefix for discord send messages to cleanup the chat --- VelocityCore/src/de/steamwar/messages/BungeeCore.properties | 2 +- VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/VelocityCore/src/de/steamwar/messages/BungeeCore.properties b/VelocityCore/src/de/steamwar/messages/BungeeCore.properties index 14c82866..9eb776fb 100644 --- a/VelocityCore/src/de/steamwar/messages/BungeeCore.properties +++ b/VelocityCore/src/de/steamwar/messages/BungeeCore.properties @@ -578,7 +578,7 @@ CHAT_EMPTY=§cDon\'t write meaningless empty messages. CHAT_SERVERTEAM=§8STC §e{0}§8» §f{2} CHAT_DISCORD_SERVERTEAM=§8STC §e{0}§8» §f{2} CHAT_GLOBAL={3}{4}{5}{6}{0}§8» {7}{2} -CHAT_DISCORD_GLOBAL=§8DC {3}{4}{5}{6}{0}§8» {7}{2} +CHAT_DISCORD_GLOBAL={3}{4}{5}{6}{0}§8» {7}{2} CHAT_TEAM=§8TC §e{0}§8» §f{2} CHAT_MSG=§e{0}§8»§e{1} §7{2} diff --git a/VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties b/VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties index ced0dabc..82005c6d 100644 --- a/VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties +++ b/VelocityCore/src/de/steamwar/messages/BungeeCore_de.properties @@ -552,7 +552,7 @@ CHAT_EMPTY=§cSchreibe keine inhaltslosen Nachrichten. CHAT_SERVERTEAM=§8STC §e{0}§8» §f{2} CHAT_DISCORD_SERVERTEAM=§8STC §e{0}§8» §f{2} CHAT_GLOBAL={3}{4}{5}{6}{0}§8» {7}{2} -CHAT_DISCORD_GLOBAL=§8DC {3}{4}{5}{6}{0}§8» {7}{2} +CHAT_DISCORD_GLOBAL={3}{4}{5}{6}{0}§8» {7}{2} CHAT_TEAM=§8TC §e{0}§8» §f{2} CHAT_MSG=§e{0}§8»§e{1} §7{2} From f9b3dd34cfdfc19ceba39a04903cd5e7c189d36e Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Fri, 7 Nov 2025 15:25:20 +0100 Subject: [PATCH 5/6] Trigger rebuild --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ad9f4739..ff33e203 100644 --- a/README.md +++ b/README.md @@ -1 +1 @@ -# SteamWar +# SteamWar \ No newline at end of file From cac0ae3e1305c99fa098c1cef83a21fc64938088 Mon Sep 17 00:00:00 2001 From: YoyoNow Date: Fri, 7 Nov 2025 15:41:48 +0100 Subject: [PATCH 6/6] Hotfix MaterialLazyInit for 1.21 --- .../de/steamwar/bausystem/features/util/MaterialLazyInit.java | 1 + 1 file changed, 1 insertion(+) diff --git a/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/features/util/MaterialLazyInit.java b/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/features/util/MaterialLazyInit.java index f05e0de9..4f174c12 100644 --- a/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/features/util/MaterialLazyInit.java +++ b/BauSystem/BauSystem_Main/src/de/steamwar/bausystem/features/util/MaterialLazyInit.java @@ -87,6 +87,7 @@ public class MaterialLazyInit { Block block = Bukkit.getWorlds().get(0).getBlockAt(0, 0, 0); block.setType(material); unmoveable = block.getPistonMoveReaction() == PistonMoveReaction.BLOCK || block.getPistonMoveReaction() == PistonMoveReaction.IGNORE || block.getState() instanceof TileState; + block.setType(Material.AIR); } if (material.isItem() && material != Material.AIR) {