rcc-server/src/main/java/cc/reconnected/server/commands/AfkCommand.java

32 lines
1.3 KiB
Java

package cc.reconnected.server.commands;
import cc.reconnected.server.RccServer;
import com.mojang.brigadier.CommandDispatcher;
import me.lucko.fabric.api.permissions.v0.Permissions;
import net.minecraft.command.CommandRegistryAccess;
import net.minecraft.server.command.CommandManager;
import net.minecraft.server.command.ServerCommandSource;
import net.minecraft.text.Text;
import static net.minecraft.server.command.CommandManager.literal;
public class AfkCommand {
public static void register(CommandDispatcher<ServerCommandSource> dispatcher, CommandRegistryAccess registryAccess, CommandManager.RegistrationEnvironment environment) {
var rootCommand = literal("afk")
.requires(Permissions.require("rcc.afk.command", true))
.executes(context -> {
if(!context.getSource().isExecutedByPlayer()) {
context.getSource().sendFeedback(() -> Text.of("This command can only be executed by players!"), false);
return 1;
}
var player = context.getSource().getPlayer();
RccServer.getInstance().setPlayerAfk(player, true);
return 1;
});
dispatcher.register(rootCommand);
}
}