From 8875710f3df33eeb546a884c7e09b89bfde4be41 Mon Sep 17 00:00:00 2001 From: embeddedt <42941056+embeddedt@users.noreply.github.com> Date: Mon, 7 Aug 2023 21:51:54 -0400 Subject: [PATCH] Use client commands on 1.18+ for /mfrc --- .../forge/init/ModernFixClientForge.java | 17 +++++++++-------- .../modernfix/forge/init/ModernFixForge.java | 3 +-- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/init/ModernFixClientForge.java b/forge/src/main/java/org/embeddedt/modernfix/forge/init/ModernFixClientForge.java index b64c6c0d..6915a9b5 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/init/ModernFixClientForge.java +++ b/forge/src/main/java/org/embeddedt/modernfix/forge/init/ModernFixClientForge.java @@ -1,13 +1,15 @@ package org.embeddedt.modernfix.forge.init; import com.mojang.blaze3d.platform.InputConstants; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; import net.minecraft.client.KeyMapping; import net.minecraft.client.Minecraft; import net.minecraft.client.gui.components.DebugScreenOverlay; +import net.minecraft.commands.CommandSourceStack; import net.minecraftforge.client.ClientRegistry; import net.minecraftforge.client.ConfigGuiHandler; -import net.minecraftforge.client.event.ClientChatEvent; import net.minecraftforge.client.event.RecipesUpdatedEvent; +import net.minecraftforge.client.event.RegisterClientCommandsEvent; import net.minecraftforge.client.event.RenderGameOverlayEvent; import net.minecraftforge.client.gui.ForgeIngameGui; import net.minecraftforge.client.settings.KeyConflictContext; @@ -55,13 +57,12 @@ public class ModernFixClientForge { } @SubscribeEvent(priority = EventPriority.LOW) - public void onClientChat(ClientChatEvent event) { - if(event.getMessage() != null && event.getMessage().trim().equals("/mfrc")) { - NightConfigFixer.runReloads(); - event.setCanceled(true); - // add it to chat history - Minecraft.getInstance().gui.getChat().addRecentChat(event.getMessage()); - } + public void onClientChat(RegisterClientCommandsEvent event) { + event.getDispatcher().register(LiteralArgumentBuilder.literal("mfrc") + .executes(context -> { + NightConfigFixer.runReloads(); + return 1; + })); } private static final List brandingList = new ArrayList<>(); diff --git a/forge/src/main/java/org/embeddedt/modernfix/forge/init/ModernFixForge.java b/forge/src/main/java/org/embeddedt/modernfix/forge/init/ModernFixForge.java index f5aa6c11..20696876 100644 --- a/forge/src/main/java/org/embeddedt/modernfix/forge/init/ModernFixForge.java +++ b/forge/src/main/java/org/embeddedt/modernfix/forge/init/ModernFixForge.java @@ -58,8 +58,7 @@ public class ModernFixForge { @SubscribeEvent public void onCommandRegister(RegisterCommandsEvent event) { - // Register separate commands since redirecting doesn't work without arguments - for(String name : new String[] { "mfrc", "mfsrc"}) { + for(String name : new String[] { "mfsrc"}) { event.getDispatcher().register(LiteralArgumentBuilder.literal(name) .requires(source -> source.hasPermission(3)) .executes(context -> {