From ef31a9516b5d9efffffc75e4bc944bba4a9bc080 Mon Sep 17 00:00:00 2001 From: Alessandro Proto Date: Fri, 25 Oct 2024 14:11:18 +0200 Subject: [PATCH] Update to RccServer 1.13.0 --- build.gradle | 2 +- gradle.properties | 8 ++-- .../cc/reconnected/chatbox/ChatboxEvents.java | 6 +-- .../cc/reconnected/chatbox/models/User.java | 3 +- .../parsers/MarkdownComponentParser.java | 40 ------------------- .../chatbox/parsers/MarkdownParser.java | 28 ------------- .../chatbox/utils/TextComponents.java | 4 +- 7 files changed, 12 insertions(+), 79 deletions(-) delete mode 100644 src/main/java/cc/reconnected/chatbox/parsers/MarkdownComponentParser.java delete mode 100644 src/main/java/cc/reconnected/chatbox/parsers/MarkdownParser.java diff --git a/build.gradle b/build.gradle index 93a30c7..c584d0f 100644 --- a/build.gradle +++ b/build.gradle @@ -1,5 +1,5 @@ plugins { - id 'fabric-loom' version '1.7-SNAPSHOT' + id 'fabric-loom' version '1.8-SNAPSHOT' id 'maven-publish' } diff --git a/gradle.properties b/gradle.properties index d614ec9..af87014 100644 --- a/gradle.properties +++ b/gradle.properties @@ -6,18 +6,18 @@ org.gradle.parallel=true # check these on https://fabricmc.net/develop minecraft_version=1.20.1 yarn_mappings=1.20.1+build.10 -loader_version=0.16.5 +loader_version=0.16.7 # Mod Properties -mod_version=1.7.2 +mod_version=1.7.3 maven_group=cc.reconnected archives_base_name=rcc-chatbox # Dependencies fabric_version=0.92.2+1.20.1 -rccserver_version=1.10.1 -rccdiscord_version=1.7.1 +rccserver_version=1.13.0 +rccdiscord_version=1.7.7 permissions_api_version=0.2-SNAPSHOT diff --git a/src/main/java/cc/reconnected/chatbox/ChatboxEvents.java b/src/main/java/cc/reconnected/chatbox/ChatboxEvents.java index 76964d9..f778667 100644 --- a/src/main/java/cc/reconnected/chatbox/ChatboxEvents.java +++ b/src/main/java/cc/reconnected/chatbox/ChatboxEvents.java @@ -9,13 +9,13 @@ import cc.reconnected.chatbox.packets.serverPackets.PlayersPacket; import cc.reconnected.chatbox.packets.serverPackets.events.*; import cc.reconnected.chatbox.models.User; -import cc.reconnected.chatbox.parsers.MarkdownParser; import cc.reconnected.chatbox.utils.DateUtils; import cc.reconnected.chatbox.ws.CloseCodes; import cc.reconnected.chatbox.ws.WsServer; import cc.reconnected.discordbridge.events.DiscordMessageEvents; import cc.reconnected.server.database.PlayerData; import cc.reconnected.server.events.PlayerActivityEvents; +import cc.reconnected.server.parser.MarkdownParser; import net.dv8tion.jda.api.entities.Member; import net.dv8tion.jda.api.entities.Message; import net.fabricmc.fabric.api.entity.event.v1.ServerEntityWorldChangeEvents; @@ -161,7 +161,7 @@ public static void register() { ServerMessageEvents.CHAT_MESSAGE.register((message, sender, params) -> { var packet = new InGameChatEvent(); - var parsedMessage = MarkdownParser.contentParser.parseNode(message.getContent().getString()).toText(); + var parsedMessage = MarkdownParser.defaultParser.parseNode(message.getContent().getString()).toText(); packet.text = parsedMessage.getString(); packet.rawText = message.getContent().getString(); packet.renderedText = Text.Serializer.toJsonTree(parsedMessage); @@ -255,7 +255,7 @@ private static void emitDiscordChatEvent(Message message, Member member, boolean var packet = new DiscordChatEvent(); packet.text = message.getContentStripped(); packet.rawText = message.getContentRaw(); - packet.renderedText = Text.Serializer.toJsonTree(MarkdownParser.contentParser.parseNode(message.getContentDisplay()).toText()); + packet.renderedText = Text.Serializer.toJsonTree(MarkdownParser.defaultParser.parseNode(message.getContentDisplay()).toText()); packet.discordId = message.getId(); packet.discordUser = user; packet.edited = isEdited; diff --git a/src/main/java/cc/reconnected/chatbox/models/User.java b/src/main/java/cc/reconnected/chatbox/models/User.java index b71c5c7..f2e6aa8 100644 --- a/src/main/java/cc/reconnected/chatbox/models/User.java +++ b/src/main/java/cc/reconnected/chatbox/models/User.java @@ -2,6 +2,7 @@ import cc.reconnected.discordbridge.Bridge; import cc.reconnected.server.RccServer; +import cc.reconnected.server.core.AfkTracker; import cc.reconnected.server.database.PlayerData; import net.dv8tion.jda.api.entities.UserSnowflake; import net.minecraft.server.network.ServerPlayerEntity; @@ -28,7 +29,7 @@ private static void fillInData(User user, @Nullable ServerPlayerEntity entity, b PlayerData playerData; if(entity != null) { playerData = PlayerData.getPlayer(entity); - user.afk = RccServer.getInstance().isPlayerAfk(entity); + user.afk = AfkTracker.getInstance().isPlayerAfk(entity.getUuid()); } else { playerData = PlayerData.getPlayer(UUID.fromString(user.uuid)); user.afk = false; diff --git a/src/main/java/cc/reconnected/chatbox/parsers/MarkdownComponentParser.java b/src/main/java/cc/reconnected/chatbox/parsers/MarkdownComponentParser.java deleted file mode 100644 index 0227c0b..0000000 --- a/src/main/java/cc/reconnected/chatbox/parsers/MarkdownComponentParser.java +++ /dev/null @@ -1,40 +0,0 @@ -package cc.reconnected.chatbox.parsers; - -import eu.pb4.placeholders.api.node.TextNode; -import eu.pb4.placeholders.api.node.parent.ClickActionNode; -import eu.pb4.placeholders.api.node.parent.FormattingNode; -import eu.pb4.placeholders.api.node.parent.HoverNode; -import net.minecraft.text.ClickEvent; -import net.minecraft.util.Formatting; - -public class MarkdownComponentParser { - public static TextNode spoilerFormatting(TextNode[] textNodes) { - var text = TextNode.asSingle(textNodes); - return new HoverNode<>( - TextNode.array( - new FormattingNode(TextNode.array(TextNode.of("\u258C".repeat(text.toText().getString().length()))), Formatting.DARK_GRAY) - ), - HoverNode.Action.TEXT, text); - } - - public static TextNode quoteFormatting(TextNode[] textNodes) { - return new ClickActionNode( - TextNode.array( - new HoverNode<>( - TextNode.array(new FormattingNode(textNodes, Formatting.GRAY)), - HoverNode.Action.TEXT, TextNode.of("Click to copy")) - ), - ClickEvent.Action.COPY_TO_CLIPBOARD, TextNode.asSingle(textNodes) - ); - } - - public static TextNode urlFormatting(TextNode[] textNodes, TextNode url) { - return new HoverNode<>(TextNode.array( - new ClickActionNode( - TextNode.array( - new FormattingNode(textNodes, Formatting.BLUE, Formatting.UNDERLINE)), - ClickEvent.Action.OPEN_URL, url)), - HoverNode.Action.TEXT, TextNode.of("Click to open: " + url.toText().getString()) - ); - } -} diff --git a/src/main/java/cc/reconnected/chatbox/parsers/MarkdownParser.java b/src/main/java/cc/reconnected/chatbox/parsers/MarkdownParser.java deleted file mode 100644 index 05430a4..0000000 --- a/src/main/java/cc/reconnected/chatbox/parsers/MarkdownParser.java +++ /dev/null @@ -1,28 +0,0 @@ -package cc.reconnected.chatbox.parsers; - -import eu.pb4.placeholders.api.parsers.MarkdownLiteParserV1; -import static eu.pb4.placeholders.api.parsers.MarkdownLiteParserV1.MarkdownFormat; -import eu.pb4.placeholders.api.parsers.NodeParser; - -public class MarkdownParser { - public static final MarkdownFormat[] ALL = new MarkdownFormat[] { - MarkdownLiteParserV1.MarkdownFormat.QUOTE, - MarkdownLiteParserV1.MarkdownFormat.BOLD, - MarkdownLiteParserV1.MarkdownFormat.ITALIC, - MarkdownLiteParserV1.MarkdownFormat.UNDERLINE, - MarkdownLiteParserV1.MarkdownFormat.STRIKETHROUGH, - MarkdownLiteParserV1.MarkdownFormat.SPOILER, - MarkdownLiteParserV1.MarkdownFormat.URL - }; - - public static final NodeParser contentParser = createParser(ALL); - - public static NodeParser createParser(MarkdownFormat[] capabilities) { - return new MarkdownLiteParserV1( - MarkdownComponentParser::spoilerFormatting, - MarkdownComponentParser::quoteFormatting, - MarkdownComponentParser::urlFormatting, - capabilities - ); - } -} diff --git a/src/main/java/cc/reconnected/chatbox/utils/TextComponents.java b/src/main/java/cc/reconnected/chatbox/utils/TextComponents.java index 07b6834..47372ff 100644 --- a/src/main/java/cc/reconnected/chatbox/utils/TextComponents.java +++ b/src/main/java/cc/reconnected/chatbox/utils/TextComponents.java @@ -1,8 +1,8 @@ package cc.reconnected.chatbox.utils; -import cc.reconnected.chatbox.parsers.MarkdownParser; import cc.reconnected.chatbox.parsers.MiniMessageSerializer; import cc.reconnected.server.database.PlayerData; +import cc.reconnected.server.parser.MarkdownParser; import net.kyori.adventure.text.Component; import net.kyori.adventure.text.event.HoverEvent; import net.kyori.adventure.text.format.NamedTextColor; @@ -39,7 +39,7 @@ public static Component formatContent(String content, @Nullable String type) { switch (type) { case "format" -> formattedContent = legacySerializer.deserialize(content); case "markdown" -> { - var rawContent = MarkdownParser.contentParser.parseNode(content).toText(); + var rawContent = MarkdownParser.defaultParser.parseNode(content).toText(); var json = JSONComponentSerializer.json(); formattedContent = json.deserialize(Text.Serializer.toJson(rawContent)); }