package space.autistic.uwumode import com.mojang.brigadier.arguments.BoolArgumentType; import com.mojang.brigadier.arguments.IntegerArgumentType; import com.mojang.brigadier.context.CommandContext; import net.fabricmc.fabric.api.client.command.v1.ClientCommandManager; import net.fabricmc.fabric.api.client.command.v1.FabricClientCommandSource; import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents; // For support join https://discord.gg/v6v4pMv var enabled = false var timer = 0 fun uwutimer(c: CommandContext): Int { val time = IntegerArgumentType.getInteger(c, "seconds"); if (timer != time) { timer = time*20; enabled = true; return 1 } return 0 } fun uwumode(c: CommandContext): Int { val enable = BoolArgumentType.getBool(c, "enable"); if (timer > 0 || enabled != enable) { timer = 0; enabled = enable; return 1 } return 0 } @Suppress("unused") fun init() { // This mod is client-only, so this is the client init. ClientCommandManager.DISPATCHER.register( ClientCommandManager.literal("uwu") .then( ClientCommandManager.argument( "seconds", IntegerArgumentType.integer(0, 0x7FFFFFFF/20) ).executes(::uwutimer) ) .then( ClientCommandManager.argument( "enable", BoolArgumentType.bool() ).executes(::uwumode) ) ); ClientTickEvents.START_CLIENT_TICK.register { if (timer > 0) { --timer; if (timer == 0) { enabled = false; } } }; }