Search in sources :

Example 1 with Command

use of meteordevelopment.meteorclient.systems.commands.Command in project meteor-rejects by AntiCope.

the class CommandsMixin method onAdd.

@Inject(method = "add", at = @At("HEAD"), remap = false, cancellable = true)
private void onAdd(Command cmd, CallbackInfo ci) {
    if (cmd instanceof meteordevelopment.meteorclient.systems.commands.commands.LocateCommand) {
        Command command = new LocateCommand();
        commands.removeIf(command1 -> command1.getName().equals(command.getName()));
        commandInstances.values().removeIf(command1 -> command1.getName().equals(command.getName()));
        command.registerTo(DISPATCHER);
        commands.add(command);
        commandInstances.put(command.getClass(), command);
        ci.cancel();
    }
}
Also used : LocateCommand(anticope.rejects.commands.LocateCommand) LocateCommand(anticope.rejects.commands.LocateCommand) Command(meteordevelopment.meteorclient.systems.commands.Command) Inject(org.spongepowered.asm.mixin.injection.Inject)

Example 2 with Command

use of meteordevelopment.meteorclient.systems.commands.Command in project meteor-rejects by AntiCope.

the class KickCommand method build.

@Override
public void build(LiteralArgumentBuilder<CommandSource> builder) {
    builder.then(literal("disconnect").executes(ctx -> {
        mc.player.networkHandler.onDisconnect(new DisconnectS2CPacket(new LiteralText("Disconnected via .kick command")));
        return SINGLE_SUCCESS;
    }));
    builder.then(literal("pos").executes(ctx -> {
        mc.player.networkHandler.sendPacket(new PlayerMoveC2SPacket.PositionAndOnGround(Double.NaN, Double.NEGATIVE_INFINITY, Double.POSITIVE_INFINITY, !mc.player.isOnGround()));
        return SINGLE_SUCCESS;
    }));
    builder.then(literal("hurt").executes(ctx -> {
        mc.player.networkHandler.sendPacket(PlayerInteractEntityC2SPacket.attack(mc.player, mc.player.isSneaking()));
        return SINGLE_SUCCESS;
    }));
    builder.then(literal("chat").executes(ctx -> {
        mc.player.sendChatMessage("§0§1§");
        return SINGLE_SUCCESS;
    }));
    builder.then(literal("shutdown").executes(ctx -> {
        try {
            shutdown();
        } catch (Exception exception) {
            error("Couldn't disconnect. IOException");
        }
        return SINGLE_SUCCESS;
    }));
    builder.then(literal("crash").executes(ctx -> {
        GlfwUtil.makeJvmCrash();
        return SINGLE_SUCCESS;
    }));
}
Also used : CommandSource(net.minecraft.command.CommandSource) SINGLE_SUCCESS(com.mojang.brigadier.Command.SINGLE_SUCCESS) LiteralText(net.minecraft.text.LiteralText) Command(meteordevelopment.meteorclient.systems.commands.Command) SystemUtils(org.apache.commons.lang3.SystemUtils) PlayerInteractEntityC2SPacket(net.minecraft.network.packet.c2s.play.PlayerInteractEntityC2SPacket) GlfwUtil(net.minecraft.client.util.GlfwUtil) PlayerMoveC2SPacket(net.minecraft.network.packet.c2s.play.PlayerMoveC2SPacket) DisconnectS2CPacket(net.minecraft.network.packet.s2c.play.DisconnectS2CPacket) LiteralArgumentBuilder(com.mojang.brigadier.builder.LiteralArgumentBuilder) DisconnectS2CPacket(net.minecraft.network.packet.s2c.play.DisconnectS2CPacket) LiteralText(net.minecraft.text.LiteralText)

Example 3 with Command

use of meteordevelopment.meteorclient.systems.commands.Command in project meteor-client by MeteorDevelopment.

the class SwarmCommand method build.

@Override
public void build(LiteralArgumentBuilder<CommandSource> builder) {
    builder.then(literal("disconnect").executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            swarm.close();
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }));
    builder.then(literal("join").then(argument("ip", StringArgumentType.string()).then(argument("port", IntegerArgumentType.integer(0, 65535)).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (!swarm.isActive())
            swarm.toggle();
        swarm.close();
        swarm.mode.set(Swarm.Mode.Worker);
        swarm.worker = new SwarmWorker(StringArgumentType.getString(context, "ip"), IntegerArgumentType.getInteger(context, "port"));
        return SINGLE_SUCCESS;
    }))));
    builder.then(literal("connections").executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                if (swarm.host.getConnectionCount() > 0) {
                    ChatUtils.info("--- Swarm Connections (highlight)(%s/%s)(default) ---", swarm.host.getConnectionCount(), swarm.host.getConnections().length);
                    for (int i = 0; i < swarm.host.getConnections().length; i++) {
                        SwarmConnection connection = swarm.host.getConnections()[i];
                        if (connection != null)
                            ChatUtils.info("(highlight)Worker %s(default): %s.", i, connection.getConnection());
                    }
                } else {
                    warning("No active connections");
                }
            } else if (swarm.isWorker()) {
                info("Connected to (highlight)%s", swarm.worker.getConnection());
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }));
    builder.then(literal("follow").executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput() + " " + mc.player.getEntityName());
            } else if (swarm.isWorker()) {
                error("The follow host command must be used by the host.");
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }).then(argument("player", PlayerArgumentType.player()).executes(context -> {
        PlayerEntity playerEntity = PlayerArgumentType.getPlayer(context);
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker() && playerEntity != null) {
                BaritoneAPI.getProvider().getPrimaryBaritone().getFollowProcess().follow(entity -> entity.getEntityName().equalsIgnoreCase(playerEntity.getEntityName()));
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    })));
    builder.then(literal("goto").then(argument("x", IntegerArgumentType.integer()).then(argument("z", IntegerArgumentType.integer()).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                int x = IntegerArgumentType.getInteger(context, "x");
                int z = IntegerArgumentType.getInteger(context, "z");
                BaritoneAPI.getProvider().getPrimaryBaritone().getCustomGoalProcess().setGoalAndPath(new GoalXZ(x, z));
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }))));
    builder.then(literal("infinity-miner").executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                runInfinityMiner();
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }).then(argument("target", BlockStateArgumentType.blockState()).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                Modules.get().get(InfinityMiner.class).targetBlocks.set(List.of(context.getArgument("target", BlockStateArgument.class).getBlockState().getBlock()));
                runInfinityMiner();
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }).then(argument("repair", BlockStateArgumentType.blockState()).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                Modules.get().get(InfinityMiner.class).targetBlocks.set(List.of(context.getArgument("target", BlockStateArgument.class).getBlockState().getBlock()));
                Modules.get().get(InfinityMiner.class).repairBlocks.set(List.of(context.getArgument("repair", BlockStateArgument.class).getBlockState().getBlock()));
                runInfinityMiner();
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }))).then(literal("logout").then(argument("logout", BoolArgumentType.bool()).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                Modules.get().get(InfinityMiner.class).logOut.set(BoolArgumentType.getBool(context, "logout"));
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }))).then(literal("walkhome").then(argument("walkhome", BoolArgumentType.bool()).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                Modules.get().get(InfinityMiner.class).walkHome.set(BoolArgumentType.getBool(context, "walkhome"));
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }))));
    builder.then(literal("mine").then(argument("block", BlockStateArgumentType.blockState()).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                swarm.worker.target = context.getArgument("block", BlockStateArgument.class).getBlockState().getBlock();
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    })));
    builder.then(literal("toggle").then(argument("module", ModuleArgumentType.module()).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                Module module = ModuleArgumentType.getModule(context, "module");
                module.toggle();
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }).then(literal("on").executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                Module m = ModuleArgumentType.getModule(context, "module");
                if (!m.isActive())
                    m.toggle();
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    })).then(literal("off").executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                Module m = ModuleArgumentType.getModule(context, "module");
                if (m.isActive())
                    m.toggle();
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }))));
    builder.then(literal("scatter").executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                scatter(100);
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }).then(argument("radius", IntegerArgumentType.integer()).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                scatter(IntegerArgumentType.getInteger(context, "radius"));
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    })));
    builder.then(literal("stop").executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                BaritoneAPI.getProvider().getPrimaryBaritone().getPathingBehavior().cancelEverything();
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    }));
    builder.then(literal("exec").then(argument("command", StringArgumentType.greedyString()).executes(context -> {
        Swarm swarm = Modules.get().get(Swarm.class);
        if (swarm.isActive()) {
            if (swarm.isHost()) {
                swarm.host.sendMessage(context.getInput());
            } else if (swarm.isWorker()) {
                mc.player.sendChatMessage(StringArgumentType.getString(context, "command"));
            }
        } else {
            throw SWARM_NOT_ACTIVE.create();
        }
        return SINGLE_SUCCESS;
    })));
}
Also used : LiteralText(net.minecraft.text.LiteralText) PlayerArgumentType(meteordevelopment.meteorclient.systems.commands.arguments.PlayerArgumentType) Random(java.util.Random) SimpleCommandExceptionType(com.mojang.brigadier.exceptions.SimpleCommandExceptionType) ModuleArgumentType(meteordevelopment.meteorclient.systems.commands.arguments.ModuleArgumentType) SINGLE_SUCCESS(com.mojang.brigadier.Command.SINGLE_SUCCESS) BoolArgumentType(com.mojang.brigadier.arguments.BoolArgumentType) StringArgumentType(com.mojang.brigadier.arguments.StringArgumentType) GoalXZ(baritone.api.pathing.goals.GoalXZ) Command(meteordevelopment.meteorclient.systems.commands.Command) Module(meteordevelopment.meteorclient.systems.modules.Module) Modules(meteordevelopment.meteorclient.systems.modules.Modules) ChatUtils(meteordevelopment.meteorclient.utils.player.ChatUtils) BlockStateArgument(net.minecraft.command.argument.BlockStateArgument) BaritoneAPI(baritone.api.BaritoneAPI) PlayerEntity(net.minecraft.entity.player.PlayerEntity) LiteralArgumentBuilder(com.mojang.brigadier.builder.LiteralArgumentBuilder) CommandSource(net.minecraft.command.CommandSource) BlockStateArgumentType(net.minecraft.command.argument.BlockStateArgumentType) Swarm(meteordevelopment.meteorclient.systems.modules.misc.swarm.Swarm) List(java.util.List) InfinityMiner(meteordevelopment.meteorclient.systems.modules.world.InfinityMiner) IntegerArgumentType(com.mojang.brigadier.arguments.IntegerArgumentType) SwarmConnection(meteordevelopment.meteorclient.systems.modules.misc.swarm.SwarmConnection) SwarmWorker(meteordevelopment.meteorclient.systems.modules.misc.swarm.SwarmWorker) Swarm(meteordevelopment.meteorclient.systems.modules.misc.swarm.Swarm) GoalXZ(baritone.api.pathing.goals.GoalXZ) SwarmConnection(meteordevelopment.meteorclient.systems.modules.misc.swarm.SwarmConnection) InfinityMiner(meteordevelopment.meteorclient.systems.modules.world.InfinityMiner) SwarmWorker(meteordevelopment.meteorclient.systems.modules.misc.swarm.SwarmWorker) Module(meteordevelopment.meteorclient.systems.modules.Module) PlayerEntity(net.minecraft.entity.player.PlayerEntity)

Aggregations

Command (meteordevelopment.meteorclient.systems.commands.Command)3 SINGLE_SUCCESS (com.mojang.brigadier.Command.SINGLE_SUCCESS)2 LiteralArgumentBuilder (com.mojang.brigadier.builder.LiteralArgumentBuilder)2 CommandSource (net.minecraft.command.CommandSource)2 LiteralText (net.minecraft.text.LiteralText)2 LocateCommand (anticope.rejects.commands.LocateCommand)1 BaritoneAPI (baritone.api.BaritoneAPI)1 GoalXZ (baritone.api.pathing.goals.GoalXZ)1 BoolArgumentType (com.mojang.brigadier.arguments.BoolArgumentType)1 IntegerArgumentType (com.mojang.brigadier.arguments.IntegerArgumentType)1 StringArgumentType (com.mojang.brigadier.arguments.StringArgumentType)1 SimpleCommandExceptionType (com.mojang.brigadier.exceptions.SimpleCommandExceptionType)1 List (java.util.List)1 Random (java.util.Random)1 ModuleArgumentType (meteordevelopment.meteorclient.systems.commands.arguments.ModuleArgumentType)1 PlayerArgumentType (meteordevelopment.meteorclient.systems.commands.arguments.PlayerArgumentType)1 Module (meteordevelopment.meteorclient.systems.modules.Module)1 Modules (meteordevelopment.meteorclient.systems.modules.Modules)1 Swarm (meteordevelopment.meteorclient.systems.modules.misc.swarm.Swarm)1 SwarmConnection (meteordevelopment.meteorclient.systems.modules.misc.swarm.SwarmConnection)1