Minecraft Fabric 1.21.5 Mixin, как отправить сообщение в качестве игрокаJAVA

Программисты JAVA общаются здесь
Anonymous
Minecraft Fabric 1.21.5 Mixin, как отправить сообщение в качестве игрока

Сообщение Anonymous »

Как заменить одно сообщение на другое в Minecraft Fabric 1.21.5
Я выпустил Simple Mixin, который вставлял код в метод записи < /p>

Код: Выделить всё

package org.emil.chatmod.mixin;

import net.minecraft.client.gui.hud.ChatHud;
import net.minecraft.client.network.ClientPlayNetworkHandler;
import net.minecraft.text.Text;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.ModifyArg;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;

import java.util.Objects;
import java.util.Optional;

@Mixin(ClientPlayNetworkHandler.class)
public abstract class ClientPlayNetworkHandlerMixin {
@Shadow public abstract void sendChatMessage(String content);

@Inject(method = "sendChatMessage", at = @At("HEAD"))
private void onsendChatMessage(String message, CallbackInfo ci) {
if (message.contains("foo")){
this.sendChatMessage("bar");
}
}

}
Но когда сообщение содержит Foo, я хочу отправить «Бар» на сервер, но когда я выполняю Sendchatmessage, происходит цикл, и Minecraft сбои

Подробнее здесь: https://stackoverflow.com/questions/796 ... -as-player

Вернуться в «JAVA»