From 37234e6503c06a2d8c30fd22fc73bc1f8550a66c Mon Sep 17 00:00:00 2001 From: DBotThePony Date: Fri, 2 Sep 2022 15:59:01 +0700 Subject: [PATCH] Refactor widgets atlas --- .../client/screen/panels/AbstractSlotPanel.kt | 10 ++++---- .../mc/otm/client/screen/panels/CheckBox.kt | 8 +++---- .../mc/otm/client/screen/widget/Gauges.kt | 22 +++++++++--------- .../textures/gui/widgets.png | Bin 3270 -> 3051 bytes .../textures/gui/widgets.xcf | 4 ++-- 5 files changed, 21 insertions(+), 23 deletions(-) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/panels/AbstractSlotPanel.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/panels/AbstractSlotPanel.kt index b9b59d0b7..04da77a37 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/panels/AbstractSlotPanel.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/panels/AbstractSlotPanel.kt @@ -23,9 +23,8 @@ abstract class AbstractSlotPanel @JvmOverloads constructor( ) : EditablePanel( screen, parent, x, y, width, height ) { - protected open fun renderSlotBackground(stack: PoseStack, mouse_x: Float, mouse_y: Float, flag: Float) { - RenderSystem.setShaderTexture(0, WidgetLocation.WIDGETS) - drawTexturedRectAuto(stack, 0f, 0f, 18f, 18f, 0f, 96f, 256f, 256f) + protected open fun renderSlotBackground(stack: PoseStack, mouseX: Float, mouseY: Float, partialTick: Float) { + SLOT_BACKGROUND.render(stack, width = width, height = height) } protected open fun renderRegular(stack: PoseStack, itemstack: ItemStack, count_override: String? = null) { @@ -119,10 +118,9 @@ abstract class AbstractSlotPanel @JvmOverloads constructor( } companion object { - @JvmField val SLOT_HIGHLIGHT = RGBAColor(255, 255, 255, 100) - @JvmField val SLOT_HIGHLIGHT_DRAG = RGBAColor(200, 200, 200, 150) const val SIZE = 18f + val SLOT_BACKGROUND = WidgetLocation.WIDGETS.element(0f, 0f, SIZE, SIZE) } -} \ No newline at end of file +} diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/panels/CheckBox.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/panels/CheckBox.kt index 203385113..d9c736923 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/panels/CheckBox.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/panels/CheckBox.kt @@ -42,16 +42,16 @@ open class CheckBoxPanel( val CHECKBOX_UNCHECKED = SkinElement( WidgetLocation.WIDGETS, - x = 18f, - y = 65f, + x = 59f, + y = 241f, w = REGULAR_DIMENSIONS, h = REGULAR_DIMENSIONS, ) val CHECKBOX_CHECKED = SkinElement( WidgetLocation.WIDGETS, - x = 18f, - y = 80f, + x = 44f, + y = 241f, w = REGULAR_DIMENSIONS, h = REGULAR_DIMENSIONS, ) diff --git a/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/widget/Gauges.kt b/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/widget/Gauges.kt index 5ea9b5862..edcbea89d 100644 --- a/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/widget/Gauges.kt +++ b/src/main/kotlin/ru/dbotthepony/mc/otm/client/screen/widget/Gauges.kt @@ -13,7 +13,7 @@ import ru.dbotthepony.mc.otm.core.formatPowerLevel import ru.dbotthepony.mc.otm.menu.widget.LevelGaugeWidget import ru.dbotthepony.mc.otm.menu.widget.ProgressGaugeWidget -open class PowerGaugePanel @JvmOverloads constructor( +open class PowerGaugePanel( screen: MatteryScreen<*>, parent: EditablePanel? = null, val widget: LevelGaugeWidget, @@ -65,8 +65,8 @@ open class PowerGaugePanel @JvmOverloads constructor( } companion object { - val GAUGE_BACKGROUND = WidgetLocation.WIDGETS.element(x = 0f, y = 48f, w = 9f, h = 48f) - val GAUGE_FOREGROUND = WidgetLocation.WIDGETS.element(x = 9f, y = 48f, w = 9f, h = 48f) + val GAUGE_BACKGROUND = WidgetLocation.WIDGETS.element(x = 202f, y = 0f, w = 9f, h = 48f) + val GAUGE_FOREGROUND = WidgetLocation.WIDGETS.element(x = 211f, y = 0f, w = 9f, h = 48f) val GAUGE_BACKGROUND_WIDE = WidgetLocation.WIDGETS.element(x = 238f, y = 0f, w = 18f, h = 48f) val GAUGE_FOREGROUND_WIDE = WidgetLocation.WIDGETS.element(x = 220f, y = 0f, w = 18f, h = 48f) @@ -86,7 +86,7 @@ fun WidePowerGaugePanel( height: Float = 48f ) = PowerGaugePanel(screen, parent, widget, x, y, width, height) -open class MatterGaugePanel @JvmOverloads constructor( +open class MatterGaugePanel( screen: MatteryScreen<*>, parent: EditablePanel? = null, val widget: LevelGaugeWidget, @@ -120,12 +120,12 @@ open class MatterGaugePanel @JvmOverloads constructor( } companion object { - val GAUGE_BACKGROUND = WidgetLocation.WIDGETS.element(x = 0f, y = 0f, w = 9f, h = 48f) - val GAUGE_FOREGROUND = WidgetLocation.WIDGETS.element(x = 9f, y = 0f, w = 9f, h = 48f) + val GAUGE_BACKGROUND = WidgetLocation.WIDGETS.element(x = 184f, y = 0f, w = 9f, h = 48f) + val GAUGE_FOREGROUND = WidgetLocation.WIDGETS.element(x = 193f, y = 0f, w = 9f, h = 48f) } } -open class PatternGaugePanel @JvmOverloads constructor( +open class PatternGaugePanel( screen: MatteryScreen<*>, parent: EditablePanel? = null, val widget: LevelGaugeWidget, @@ -159,8 +159,8 @@ open class PatternGaugePanel @JvmOverloads constructor( } companion object { - val GAUGE_BACKGROUND = WidgetLocation.WIDGETS.element(x = 0f, y = 148f, w = 9f, h = 48f) - val GAUGE_FOREGROUND = WidgetLocation.WIDGETS.element(x = 9f, y = 148f, w = 9f, h = 48f) + val GAUGE_BACKGROUND = WidgetLocation.WIDGETS.element(x = 166f, y = 0f, w = 9f, h = 48f) + val GAUGE_FOREGROUND = WidgetLocation.WIDGETS.element(x = 175f, y = 0f, w = 9f, h = 48f) } } @@ -230,7 +230,7 @@ open class ProgressGaugePanel @JvmOverloads constructor( } companion object { - val GAUGE_BACKGROUND = WidgetLocation.WIDGETS.element(x = 0f, y = 132f, w = 22f, h = 16f) - val GAUGE_FOREGROUND = WidgetLocation.WIDGETS.element(x = 22f, y = 132f, w = 22f, h = 16f) + val GAUGE_BACKGROUND = WidgetLocation.WIDGETS.element(x = 0f, y = 240f, w = 22f, h = 16f) + val GAUGE_FOREGROUND = WidgetLocation.WIDGETS.element(x = 22f, y = 240f, w = 22f, h = 16f) } } diff --git a/src/main/resources/assets/overdrive_that_matters/textures/gui/widgets.png b/src/main/resources/assets/overdrive_that_matters/textures/gui/widgets.png index 8401ea7507420177e0839686c6759546241b76ef..de2812a3d57245cc92eb48493bbf3f9198303f7f 100644 GIT binary patch delta 2433 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 delta 2766 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 bgm2PU8_`qlS)puMfPlNpUgugzV*0-UYZ(*c diff --git a/src/main/resources/assets/overdrive_that_matters/textures/gui/widgets.xcf b/src/main/resources/assets/overdrive_that_matters/textures/gui/widgets.xcf index a2d1f7936..d92884c98 100644 --- a/src/main/resources/assets/overdrive_that_matters/textures/gui/widgets.xcf +++ b/src/main/resources/assets/overdrive_that_matters/textures/gui/widgets.xcf @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:23dae5bfdcdfdd4937f3b107a5553773a0f0c2dc99819e6c07892a0b7a3358df -size 48490 +oid sha256:7b4c94442e8d563837693ab8743838a20c8643979d2e0be369d0784c9a5b9a6a +size 52633