From 3bfec3033e9d905514d5c1c6c62953c2a1646af0 Mon Sep 17 00:00:00 2001 From: Linnea Gräf Date: Fri, 1 Mar 2024 21:31:48 +0100 Subject: Add mob drop viewer to item list --- .../firmament/util/render/TranslatedScissors.kt | 27 ++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 src/main/kotlin/moe/nea/firmament/util/render/TranslatedScissors.kt (limited to 'src/main/kotlin/moe/nea/firmament/util/render') diff --git a/src/main/kotlin/moe/nea/firmament/util/render/TranslatedScissors.kt b/src/main/kotlin/moe/nea/firmament/util/render/TranslatedScissors.kt new file mode 100644 index 0000000..8f80f1b --- /dev/null +++ b/src/main/kotlin/moe/nea/firmament/util/render/TranslatedScissors.kt @@ -0,0 +1,27 @@ +/* + * SPDX-FileCopyrightText: 2024 Linnea Gräf + * + * SPDX-License-Identifier: GPL-3.0-or-later + */ + +package moe.nea.firmament.util.render + +import org.joml.Vector4f +import net.minecraft.client.gui.DrawContext + +fun DrawContext.enableScissorWithTranslation(x1: Float, y1: Float, x2: Float, y2: Float) { + val pMat = matrices.peek().positionMatrix + val target = Vector4f() + + target.set(x1, y1, 0f, 1f) + target.mul(pMat) + val scissorX1 = target.x + val scissorY1 = target.y + + target.set(x2, y2, 0f, 1f) + target.mul(pMat) + val scissorX2 = target.x + val scissorY2 = target.y + + enableScissor(scissorX1.toInt(), scissorY1.toInt(), scissorX2.toInt(), scissorY2.toInt()) +} -- cgit