From 933af5c5e02264bd6422df60ebf9ecb7a327269c Mon Sep 17 00:00:00 2001 From: pixtaded Date: Tue, 11 Feb 2025 15:06:34 +0300 Subject: [PATCH] Mefedroniy color support --- src/main/java/net/pixtaded/crab/client/ClientUtil.java | 8 ++------ src/main/java/net/pixtaded/crab/client/CrabClient.java | 2 +- src/main/java/net/pixtaded/crab/server/ServerThread.java | 5 +++-- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/src/main/java/net/pixtaded/crab/client/ClientUtil.java b/src/main/java/net/pixtaded/crab/client/ClientUtil.java index 48568c5..66e605f 100644 --- a/src/main/java/net/pixtaded/crab/client/ClientUtil.java +++ b/src/main/java/net/pixtaded/crab/client/ClientUtil.java @@ -10,12 +10,8 @@ public class ClientUtil { public static final ClientColor[] colors = { new ClientColor( COLOR_KEY + "(<.*?>)", "\033[0;31m$1\033[0m"), new ClientColor("\uB9AC\u3E70(<.*?>)", "\033[0;32m$1\033[0m"), - new ClientColor(" (<.*?>)", " \033[0;34m$1\033[0m") - /* - I'm too lazy to add a message parser, which is absolutely required for Mefedroniy color support. For now, it will be just white. - Also, there is another problem with that - there is no "server log format" in the protocol specification, - and I want my client to be as compatible as possible. - */ + new ClientColor(" (<.*?>)", " \033[0;34m$1\033[0m"), + new ClientColor("\u00B0\u0298(<.*?>)", "\033[0;35m$1\033[0m") }; public static String clientColors(String s) { diff --git a/src/main/java/net/pixtaded/crab/client/CrabClient.java b/src/main/java/net/pixtaded/crab/client/CrabClient.java index 8a58ca8..918258d 100644 --- a/src/main/java/net/pixtaded/crab/client/CrabClient.java +++ b/src/main/java/net/pixtaded/crab/client/CrabClient.java @@ -158,4 +158,4 @@ public class CrabClient implements Crab { System.out.print("\033[999999S\033[H\033[2J"); } -} +} \ No newline at end of file diff --git a/src/main/java/net/pixtaded/crab/server/ServerThread.java b/src/main/java/net/pixtaded/crab/server/ServerThread.java index 40df329..8be9e9e 100644 --- a/src/main/java/net/pixtaded/crab/server/ServerThread.java +++ b/src/main/java/net/pixtaded/crab/server/ServerThread.java @@ -69,8 +69,9 @@ public class ServerThread implements Runnable { } private void sendLogs(byte PID) throws IOException { - if (PID == COMMUNICATION) respond(server.cache.content()); - if (PID == LOGS) { + if (PID == COMMUNICATION) { + respond(server.cache.content()); + } else if (PID == LOGS) { String clientSize = Util.readAsciiNumber(in); int clientSizeNum = Integer.parseInt(clientSize); byte[] serverLogs = server.cache.content().getBytes(StandardCharsets.UTF_8);