From ce7fd22553e0e3ca8fd23a373654d5954bae5582 Mon Sep 17 00:00:00 2001 From: nea Date: Thu, 13 Jul 2023 18:23:46 +0200 Subject: Add screen rendering events for buttons --- .../nea/firmament/events/HandledScreenForegroundEvent.kt | 10 ++++++++++ .../nea/firmament/events/HandledScreenPushREIEvent.kt | 16 ++++++++++++++++ .../kotlin/moe/nea/firmament/events/ScreenClickEvent.kt | 8 ++++++++ 3 files changed, 34 insertions(+) create mode 100644 src/main/kotlin/moe/nea/firmament/events/HandledScreenForegroundEvent.kt create mode 100644 src/main/kotlin/moe/nea/firmament/events/HandledScreenPushREIEvent.kt create mode 100644 src/main/kotlin/moe/nea/firmament/events/ScreenClickEvent.kt (limited to 'src/main/kotlin/moe/nea/firmament/events') diff --git a/src/main/kotlin/moe/nea/firmament/events/HandledScreenForegroundEvent.kt b/src/main/kotlin/moe/nea/firmament/events/HandledScreenForegroundEvent.kt new file mode 100644 index 0000000..2d4b652 --- /dev/null +++ b/src/main/kotlin/moe/nea/firmament/events/HandledScreenForegroundEvent.kt @@ -0,0 +1,10 @@ +package moe.nea.firmament.events + +import net.minecraft.client.gui.screen.ingame.HandledScreen + +data class HandledScreenForegroundEvent( + val screen: HandledScreen<*>, + val mouseX: Int, val mouseY: Int, val delta: Float +) : FirmamentEvent() { + companion object : FirmamentEventBus() +} diff --git a/src/main/kotlin/moe/nea/firmament/events/HandledScreenPushREIEvent.kt b/src/main/kotlin/moe/nea/firmament/events/HandledScreenPushREIEvent.kt new file mode 100644 index 0000000..b809513 --- /dev/null +++ b/src/main/kotlin/moe/nea/firmament/events/HandledScreenPushREIEvent.kt @@ -0,0 +1,16 @@ +package moe.nea.firmament.events + +import me.shedaniel.math.Rectangle +import net.minecraft.client.gui.screen.ingame.HandledScreen + +data class HandledScreenPushREIEvent( + val screen: HandledScreen<*>, + val rectangles: MutableList = mutableListOf() +) : FirmamentEvent() { + + fun block(rectangle: Rectangle) { + rectangles.add(rectangle) + } + + companion object : FirmamentEventBus() +} diff --git a/src/main/kotlin/moe/nea/firmament/events/ScreenClickEvent.kt b/src/main/kotlin/moe/nea/firmament/events/ScreenClickEvent.kt new file mode 100644 index 0000000..cd25991 --- /dev/null +++ b/src/main/kotlin/moe/nea/firmament/events/ScreenClickEvent.kt @@ -0,0 +1,8 @@ +package moe.nea.firmament.events + +import net.minecraft.client.gui.screen.ingame.HandledScreen + +data class ScreenClickEvent(val screen: HandledScreen<*>, val mouseX: Double, val mouseY: Double, val button: Int) : + FirmamentEvent.Cancellable() { + companion object : FirmamentEventBus() +} -- cgit