From e6ea9051dbf4a0705bcbbbda8948bc708a553012 Mon Sep 17 00:00:00 2001 From: phit <2097483+phit@users.noreply.github.com> Date: Sun, 22 Dec 2024 18:54:02 +0100 Subject: [PATCH] Gotta make sure special formatting is kept for Discord --- .../simpleircbridge/GameEventHandler.java | 30 +++++++++++-------- .../simpleircbridge/SIBConstants.java | 2 +- .../SimpleIRCBridgeCommon.java | 5 ++-- gradle.properties | 2 +- 4 files changed, 23 insertions(+), 16 deletions(-) diff --git a/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/GameEventHandler.java b/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/GameEventHandler.java index 891f414..7c737db 100644 --- a/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/GameEventHandler.java +++ b/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/GameEventHandler.java @@ -55,12 +55,27 @@ public void playerLoggedOut(ServerPlayer e) { // } // } - public void serverChat(ServerPlayer player, ChatEvent.ChatComponent component) { + public void formatServerChat(ServerPlayer player, ChatEvent.ChatComponent component) { Component chatComponent = component.get().copy(); String content = SIBUtil.getRawText(chatComponent); component.set(SimpleIRCBridgeCommon.newChatWithLinks(content, false)); - if (player != null) { - String playername = player.getName().getString(); + } + + public EventResult livingDeath(LivingEntity livingEntity, DamageSource damageSource) { + if (livingEntity instanceof ServerPlayer) { + toIrc(String.format(FORMAT1_MC_DEATH, damageSource.getLocalizedDeathMessage(livingEntity).getString().replace(livingEntity.getName().toString(), SIBUtil.mangle(livingEntity.getName().toString())) )); + } + return EventResult.pass(); + } + + private void toIrc(String s) { + this.bridge.sendToIrc(s); + } + + public EventResult serverChat(ServerPlayer serverPlayer, Component component) { + String content = SIBUtil.getRawText(component); + if (serverPlayer != null) { + String playername = SIBUtil.mangle(serverPlayer.getName().getString()); if (Config.ircFormatting) { content = IRCMinecraftConverter.convMinecraftToIRC(content); } @@ -71,16 +86,7 @@ public void serverChat(ServerPlayer player, ChatEvent.ChatComponent component) { } toIrc(String.format(FORMAT2_MC_CHAT, "Server", content)); } - } - public EventResult livingDeath(LivingEntity livingEntity, DamageSource damageSource) { - if (livingEntity instanceof ServerPlayer) { - toIrc(String.format(FORMAT1_MC_DEATH, damageSource.getLocalizedDeathMessage(livingEntity).getString().replace(livingEntity.getName().toString(), SIBUtil.mangle(livingEntity.getName().toString())) )); - } return EventResult.pass(); } - - private void toIrc(String s) { - this.bridge.sendToIrc(s); - } } diff --git a/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/SIBConstants.java b/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/SIBConstants.java index 44f2864..4f0d740 100644 --- a/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/SIBConstants.java +++ b/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/SIBConstants.java @@ -9,7 +9,7 @@ public class SIBConstants { public static final String FORMAT1_MC_LOGIN = "> %s joined the game"; public static final String FORMAT1_MC_LOGOUT = "< %s left the game"; public static final String FORMAT1_MC_DEATH = "%s"; - public static final String FORMAT1_MC_LOGOUT_STOP = ">>>%s was still online when time came to a halt<<<"; + public static final String FORMAT1_MC_LOGOUT_STOP = "< %s left the game when time came to a halt"; /* == MC FORMATS, 2 PARAMETERS == */ public static final String FORMAT2_MC_EMOTE = "* %s %s"; diff --git a/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/SimpleIRCBridgeCommon.java b/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/SimpleIRCBridgeCommon.java index 797659c..0db9281 100644 --- a/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/SimpleIRCBridgeCommon.java +++ b/common/src/main/java/net/stonebound/simpleircbridge/simpleircbridge/SimpleIRCBridgeCommon.java @@ -34,7 +34,8 @@ public SimpleIRCBridgeCommon() { PlayerEvent.PLAYER_QUIT.register((Playerquit) -> eventHandler.playerLoggedOut(Playerquit)); EntityEvent.LIVING_DEATH.register(eventHandler::livingDeath); - ChatEvent.DECORATE.register(eventHandler::serverChat); + ChatEvent.DECORATE.register(eventHandler::formatServerChat); + ChatEvent.RECEIVED.register(eventHandler::serverChat); LifecycleEvent.SERVER_STARTING.register(Config::serverStarting); LifecycleEvent.SERVER_STOPPING.register(Config::serverStopping); @@ -55,7 +56,7 @@ public void serverStopping(MinecraftServer instance) { if (this.mcServer != null && Config.timestop) { this.mcServer.getPlayerList() .getPlayers() - .forEach(player -> sendToIrc(MircColors.BOLD + MircColors.LIGHT_RED + String.format(FORMAT1_MC_LOGOUT_STOP, SIBUtil.mangle(player.getName().getString())))); + .forEach(player -> sendToIrc(String.format(FORMAT1_MC_LOGOUT_STOP, SIBUtil.mangle(player.getName().getString())))); } if (this.bot != null) { this.bot.disconnect(); diff --git a/gradle.properties b/gradle.properties index d7d3da4..9056a90 100644 --- a/gradle.properties +++ b/gradle.properties @@ -3,7 +3,7 @@ org.gradle.jvmargs=-Xmx2G org.gradle.parallel=true # Mod properties -mod_version = 1.1.1 +mod_version = 1.1.3 maven_group = net.stonebound.simpleircbridge archives_name = simpleircbridge enabled_platforms = fabric,neoforge