push for first alpha

way too many additions for detailed description.
This commit is contained in:
Jonas_Jones 2022-12-15 21:28:40 +01:00
parent 8c55afe3e6
commit d38b68cc1e
16 changed files with 966 additions and 2 deletions

View file

@ -0,0 +1,41 @@
package me.jonasjones.betterconsolemc.command;
import com.mojang.brigadier.CommandDispatcher;
import com.mojang.brigadier.context.CommandContext;
import me.jonasjones.betterconsolemc.BetterConsoleMC;
import me.jonasjones.betterconsolemc.cmdconfig.CmdConfigHandler;
import me.jonasjones.betterconsolemc.system.ShellCommand;
import me.jonasjones.betterconsolemc.util.CommandPreRegistry;
import net.minecraft.command.CommandRegistryAccess;
import net.minecraft.command.argument.MessageArgumentType;
import net.minecraft.server.command.CommandManager;
import net.minecraft.server.command.ServerCommandSource;
import net.minecraft.text.Text;
import static me.jonasjones.betterconsolemc.BetterConsoleMC.COMMANDPREREGISTRY;
public class GameCommandHandler {
public static void register(CommandDispatcher<ServerCommandSource> serverCommandSourceCommandDispatcher, CommandRegistryAccess commandRegistryAccess, CommandManager.RegistrationEnvironment registrationEnvironment) {
serverCommandSourceCommandDispatcher.register((CommandManager.literal(COMMANDPREREGISTRY.getIngamecommand()).requires(source -> source.hasPermissionLevel(COMMANDPREREGISTRY.getPermissionLevel()))
.executes((context -> {
context.getSource().sendFeedback(runCommand(COMMANDPREREGISTRY, context), COMMANDPREREGISTRY.doBroadcastToOp());
return 1;
})))
);
serverCommandSourceCommandDispatcher.register((CommandManager.literal("cmd").requires(source -> source.hasPermissionLevel(4))
.then(CommandManager.argument("Console Command", MessageArgumentType.message())
.executes((context -> {
System.out.println("UWU");
return 0;
})))));
}
public static Text runCommand(CommandPreRegistry commandPreRegistry, CommandContext<ServerCommandSource> context) {
new Thread(() -> {ShellCommand.execute(commandPreRegistry, context);}).start();
return Text.of("Return");
}
public static void returnCommandOutput(String cmd, String commandFeedback, CommandContext<ServerCommandSource> context) {
String consoleLog = " [" + cmd + "]: " + commandFeedback;
BetterConsoleMC.LOGGER.info(consoleLog);
}
}