Конечно, я могу помочь вам с этим. Вам нужно создать мод, который будет перехватывать событие открытия чата и изменять текст перед его отображением. Вам понадобится использовать хуки (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.