This commit is contained in:
2024-04-04 23:05:43 +02:00
commit bd63714396
11 changed files with 350 additions and 0 deletions

View File

@@ -0,0 +1,34 @@
package systems.brn.chatencryptor;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
import net.fabricmc.fabric.api.client.message.v1.ClientReceiveMessageEvents;
import net.minecraft.client.MinecraftClient;
import net.minecraft.text.Text;
import net.minecraft.text.TranslatableTextContent;
import java.util.Base64;
public class ChatDecryptorClient implements ClientModInitializer {
@Override
public void onInitializeClient() {
ClientLifecycleEvents.CLIENT_STARTED.register(client -> {
// Register event listener for ClientTickEvents.END_CLIENT_TICK
ClientReceiveMessageEvents.ALLOW_CHAT.register((message, signedMessage, sender, params, receptionTimestamp) -> {
TranslatableTextContent content = (TranslatableTextContent) message.getContent();
String message_content = content.getArg(1).getString();
if(message_content.startsWith("BRNCrypt:")){
String strippedMessage = message_content.replace("BRNCrypt:", "");
String decodedMessage = new String(Base64.getDecoder().decode(strippedMessage));
String outputMessage = "Decoded:" + decodedMessage;
MinecraftClient.getInstance().inGameHud.getChatHud().addMessage(Text.of(outputMessage));
return false;
}
else {
MinecraftClient.getInstance().inGameHud.getChatHud().addMessage(Text.of("S:" + message_content + ":E"));
return false;
}
//return true;
});
});
}
}

View File

@@ -0,0 +1,21 @@
package systems.brn.chatencryptor;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientLifecycleEvents;
import net.fabricmc.fabric.api.client.message.v1.ClientSendMessageEvents;
import java.nio.charset.StandardCharsets;
import java.util.Base64;
public class ChatEncryptorClient implements ClientModInitializer {
@Override
public void onInitializeClient() {
ClientLifecycleEvents.CLIENT_STARTED.register(client -> {
// Register event listener for ClientTickEvents.END_CLIENT_TICK
ClientSendMessageEvents.MODIFY_CHAT.register(message -> {
String encodedMessage = Base64.getEncoder().withoutPadding().encodeToString(message.getBytes(StandardCharsets.UTF_8));
return "BRNCrypt:" + encodedMessage;
});
});
}
}

View File

@@ -0,0 +1,13 @@
{
"required": true,
"minVersion": "0.8",
"package": "systems.brn.chatencryptor",
"compatibilityLevel": "JAVA_17",
"mixins": [
],
"client": [
],
"injectors": {
"defaultRequire": 1
}
}

View File

@@ -0,0 +1,31 @@
{
"schemaVersion": 1,
"id": "chatencryptor",
"version": "${version}",
"name": "chatencryptor",
"description": "",
"authors": [
"BRNSystems"
],
"contact": {
"website": "https://git.brn.systems/BRNSystems/chatencryptor",
"repo": "https://git.brn.systems/BRNSystems/chatencryptoratencryptor"
},
"license": "MIT",
"icon": "icon.png",
"environment": "client",
"entrypoints": {
"client": [
"systems.brn.chatencryptor.ChatEncryptorClient",
"systems.brn.chatencryptor.ChatDecryptorClient"
]
},
"mixins": [
"chatencryptor.mixins.json"
],
"depends": {
"fabricloader": ">=${loader_version}",
"fabric": "*",
"minecraft": "${minecraft_version}"
}
}

BIN
src/main/resources/icon.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB