Files
compose-ui-mod/src/client/kotlin/net/airgame/compose/ui/client/ComposeUiMod.kt

34 lines
1.1 KiB
Kotlin

package net.airgame.compose.ui.client
import net.airgame.compose.ui.client.screen.ComposeScreen
import net.fabricmc.api.ClientModInitializer
import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientTickEvents
import net.fabricmc.fabric.api.client.keybinding.v1.KeyBindingHelper
import net.minecraft.client.option.KeyBinding
import net.minecraft.client.util.InputUtil
import org.slf4j.Logger
import org.slf4j.LoggerFactory
class ComposeUiMod : ClientModInitializer {
companion object {
val logger: Logger = LoggerFactory.getLogger("ComposeUiMod")
}
private val key = KeyBinding("测试", InputUtil.GLFW_KEY_G, "测试")
override fun onInitializeClient() {
KeyBindingHelper.registerKeyBinding(key)
ClientTickEvents.END_CLIENT_TICK.register(ClientTickEvents.EndTick { client ->
if (key.wasPressed()) {
val screen = ComposeScreen {
CenterUI {
TestUI()
}
}
client.setScreen(screen)
return@EndTick
}
})
}
}