Forge API 1.8.9 - 11.15.1.2318 Помогите мне написать мод на автопрефикс

Версия Minecraft
1.8.9
API
Forge
Ку, мне нужна ваша помощь. Как мне написать мод который при открытии чата (чата именно на "T", не через "/") вводил &color префикс
  • net.minecraft.client.gui.GuiChat
И после каретки тоже &e

Возможно ли такое реализовать с такой старой API
Ресурсы по классам этого API Forge API 1.8.9-11.15.1.2318
 
12
0
Конечно, я могу помочь вам с этим. Вам нужно создать мод, который будет перехватывать событие открытия чата и изменять текст перед его отображением. Вам понадобится использовать хуки (hooks) или события Forge API для достижения этой цели.

Вот пример кода, который вы можете использовать:

java

import net.minecraftforge.client.event.ClientChatReceivedEvent;
import net.minecraftforge.common.MinecraftForge;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;

@Mod(modid = "chatmod", version = "1.0")
public class ChatMod {

@Mod.EventHandler
public void init(FMLInitializationEvent event) {
MinecraftForge.EVENT_BUS.register(this);
}

@SubscribeEvent
public void onChatReceived(ClientChatReceivedEvent event) {
// Проверяем, если сообщение открывает чат
if (event.type == 0) {
// Добавляем префикс &color
String message = "&color" + event.message.getUnformattedText();
// Заменяем символ каретки на &e
message = message.replaceAll("\u00A7", "&e");
// Обновляем сообщение
event.message = net.minecraft.util.text.TextComponentString(message);
}
}
}

Прежде чем применять этот код, убедитесь, что у вас уже настроена среда разработки и установлены необходимые зависимости, включая Forge API 1.8.9-11.15.1.2318.

Этот код регистрирует ваш класс мода как слушателя события. Когда игрок получает сообщение чата (в том числе и при его открытии), метод onChatReceived будет вызываться. Внутри этого метода мы изменяем текст сообщения в соответствии с вашими требованиями.

Не забудьте зарегистрировать мод в файле mods.toml.
 
Сверху