TapeMouse/src/main/java/eu/oskar3123/fabric/test/mixin/MixinClientPlayerEntity.java

34 lines
1.1 KiB
Java

package eu.oskar3123.fabric.test.mixin;
import eu.oskar3123.fabric.test.TapemouseCommand;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.network.ClientPlayerEntity;
import net.minecraft.text.StringTextComponent;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(ClientPlayerEntity.class)
public class MixinClientPlayerEntity
{
@Inject(at = @At("HEAD"), method = "sendChatMessage(Ljava/lang/String;)V", cancellable = true)
public void onSendChatMessage(String string, CallbackInfo info)
{
if (string == null)
{
return;
}
String str = string + " ";
if (str.toLowerCase().startsWith(".tapemouse "))
{
TapemouseCommand.toggle();
MinecraftClient client = MinecraftClient.getInstance();
client.player.addChatMessage(new StringTextComponent("Tapemouse enabled: " + TapemouseCommand.isEnabled()), false);
info.cancel();
}
}
}