Package net.minecraftforge.client
Class ClientCommandHandler
java.lang.Object
net.minecraftforge.client.ClientCommandHandler
-
Field Summary
Modifier and TypeFieldDescriptionprivate static com.mojang.brigadier.CommandDispatcher<CommandSourceStack>
private static final org.apache.logging.log4j.Logger
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprivate static <S> void
copy
(com.mojang.brigadier.tree.CommandNode<S> sourceNode, com.mojang.brigadier.tree.CommandNode<S> resultNode) Creates a deep copy of the sourceNode while keeping the redirects referring to the old command treestatic com.mojang.brigadier.CommandDispatcher<CommandSourceStack>
static ClientCommandSourceStack
private static void
static void
init()
static com.mojang.brigadier.CommandDispatcher<SharedSuggestionProvider>
mergeServerCommands
(com.mojang.brigadier.CommandDispatcher<SharedSuggestionProvider> serverCommands, CommandBuildContext buildContext) static boolean
runCommand
(String command) Always try to execute the cached parsing of a typed command as a clientside command.
-
Field Details
-
LOGGER
private static final org.apache.logging.log4j.Logger LOGGER -
commands
-
-
Constructor Details
-
ClientCommandHandler
public ClientCommandHandler()
-
-
Method Details
-
init
public static void init() -
handleClientPlayerLogin
-
mergeServerCommands
public static com.mojang.brigadier.CommandDispatcher<SharedSuggestionProvider> mergeServerCommands(com.mojang.brigadier.CommandDispatcher<SharedSuggestionProvider> serverCommands, CommandBuildContext buildContext) -
getDispatcher
- Returns:
- The command dispatcher for client side commands
-
getSource
- Returns:
- A
ClientCommandSourceStack
for the player in the current client
-
copy
private static <S> void copy(com.mojang.brigadier.tree.CommandNode<S> sourceNode, com.mojang.brigadier.tree.CommandNode<S> resultNode) Creates a deep copy of the sourceNode while keeping the redirects referring to the old command tree- Parameters:
sourceNode
- the originalresultNode
- the result
-
runCommand
Always try to execute the cached parsing of a typed command as a clientside command. Requires that the execute field of the commands to be set to send to server so that they aren't\ treated as client command's that do nothing.net.minecraft.commands.Commands#performCommand(CommandSourceStack, String)
for reference- Parameters:
command
- the full command to execute, no preceding slash- Returns:
false
leaves the message to be sent to the server, whiletrue
means it should be caught before LocalPlayer#sendCommand
-