All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.peanuuutz.fork.ui.internal.util.MixinHelper.kt Maven / Gradle / Ivy

package net.peanuuutz.fork.ui.internal.util

import net.minecraft.client.Keyboard
import net.minecraft.client.Mouse
import net.peanuuutz.fork.ui.internal.KeyboardHacker
import net.peanuuutz.fork.ui.internal.MouseHacker
import net.peanuuutz.fork.ui.ui.context.key.KeyboardModifier
import net.peanuuutz.fork.ui.ui.context.pointer.MouseButton
import net.peanuuutz.fork.ui.ui.unit.FloatOffset
import net.peanuuutz.fork.util.minecraft.client

// ======== MixinMouse ========

internal inline val Mouse.hacker: MouseHacker
    get() = this as MouseHacker

internal inline val currentMousePosition: FloatOffset
    get() = FloatOffset(client.mouse.hacker.`forkui$getPosition`())

internal inline val currentMouseOffset: FloatOffset
    get() = FloatOffset(client.mouse.hacker.`forkui$getOffset`())

internal inline val currentMouseButton: MouseButton
    get() = MouseButton(client.mouse.hacker.`forkui$getMouseButton`())

// ======== MixinKeyboard ========

internal inline val Keyboard.hacker: KeyboardHacker
    get() = this as KeyboardHacker

internal inline val currentKeyboardModifier : KeyboardModifier
    get() = KeyboardModifier(client.keyboard.hacker.`forkui$getKeyboardModifier`())




© 2015 - 2025 Weber Informatics LLC | Privacy Policy