From 45f26edd4175e34ed5e59a7891d3ab6f63f90af5 Mon Sep 17 00:00:00 2001 From: Moritz Zwerger Date: Mon, 27 Nov 2023 23:52:46 +0100 Subject: [PATCH] move some RenderConstants to correct class --- .../data/chat/message/internal/DebugChatMessage.kt | 8 ++++++-- .../chat/message/internal/InternalChatMessage.kt | 4 ++-- .../minosoft/gui/rendering/RenderConstants.kt | 12 ++---------- .../container/enchanting/EnchantmentButtonElement.kt | 4 ++-- .../elements/hotbar/HotbarExperienceBarElement.kt | 5 +++-- .../key/manager/binding/actions/KeyActionFilter.kt | 8 +++++--- .../rendering/system/opengl/OpenGLRenderSystem.kt | 4 ++-- 7 files changed, 22 insertions(+), 23 deletions(-) diff --git a/src/main/java/de/bixilon/minosoft/data/chat/message/internal/DebugChatMessage.kt b/src/main/java/de/bixilon/minosoft/data/chat/message/internal/DebugChatMessage.kt index d3c26c345..2e8aab0c0 100644 --- a/src/main/java/de/bixilon/minosoft/data/chat/message/internal/DebugChatMessage.kt +++ b/src/main/java/de/bixilon/minosoft/data/chat/message/internal/DebugChatMessage.kt @@ -16,6 +16,10 @@ package de.bixilon.minosoft.data.chat.message.internal import de.bixilon.minosoft.data.text.BaseComponent import de.bixilon.minosoft.data.text.ChatComponent import de.bixilon.minosoft.data.text.formatting.color.ChatColors -import de.bixilon.minosoft.gui.rendering.RenderConstants -class DebugChatMessage(message: ChatComponent) : InternalChatMessage(BaseComponent(RenderConstants.DEBUG_MESSAGES_PREFIX, ChatComponent.of(message).apply { this.setFallbackColor(ChatColors.BLUE) })) +class DebugChatMessage(message: ChatComponent) : InternalChatMessage(BaseComponent(PREFIX, ChatComponent.of(message).apply { this.setFallbackColor(ChatColors.BLUE) })) { + + companion object { + const val PREFIX = "§f[§e§lDEBUG§f] " + } +} diff --git a/src/main/java/de/bixilon/minosoft/data/chat/message/internal/InternalChatMessage.kt b/src/main/java/de/bixilon/minosoft/data/chat/message/internal/InternalChatMessage.kt index 5d9372eb0..200929996 100644 --- a/src/main/java/de/bixilon/minosoft/data/chat/message/internal/InternalChatMessage.kt +++ b/src/main/java/de/bixilon/minosoft/data/chat/message/internal/InternalChatMessage.kt @@ -22,7 +22,6 @@ import de.bixilon.minosoft.data.registries.chat.TypeProperties import de.bixilon.minosoft.data.registries.identified.Namespaces.minosoft import de.bixilon.minosoft.data.text.BaseComponent import de.bixilon.minosoft.data.text.ChatComponent -import de.bixilon.minosoft.gui.rendering.RenderConstants open class InternalChatMessage( val raw: ChatComponent, @@ -33,9 +32,10 @@ open class InternalChatMessage( raw.setFallbackColor(ChatUtil.DEFAULT_CHAT_COLOR) } - override val text: ChatComponent = BaseComponent(RenderConstants.INTERNAL_MESSAGES_PREFIX, raw) + override val text: ChatComponent = BaseComponent(PREFIX, raw) companion object { val TYPE = ChatMessageType(minosoft("internal_message"), TypeProperties("%s", listOf(ChatParameter.CONTENT), mapOf()), narration = null, position = ChatTextPositions.CHAT) + const val PREFIX = "§f[§a§lINTERNAL§f] " } } diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/RenderConstants.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/RenderConstants.kt index 3c4f69eb4..9fa27f365 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/RenderConstants.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/RenderConstants.kt @@ -15,15 +15,11 @@ package de.bixilon.minosoft.gui.rendering import de.bixilon.minosoft.data.registries.identified.Namespaces.minosoft import de.bixilon.minosoft.data.text.formatting.color.RGBColor -import de.bixilon.minosoft.data.text.formatting.color.RGBColor.Companion.asColor +import de.bixilon.minosoft.gui.rendering.textures.TextureUtil.texture object RenderConstants { - val EXPERIENCE_BAR_LEVEL_COLOR = "#80ff20".asColor() - const val COLORMAP_SIZE = 255 - const val DEBUG_MESSAGES_PREFIX = "§f[§e§lDEBUG§f] " - const val INTERNAL_MESSAGES_PREFIX = "§f[§a§lINTERNAL§f] " val TEXT_BACKGROUND_COLOR = RGBColor(0, 0, 0, 80) @@ -35,10 +31,7 @@ object RenderConstants { const val MAXIMUM_QUEUE_TIME_PER_FRAME = 20L - val DEBUG_TEXTURE_RESOURCE_LOCATION = minosoft("textures/debug.png") - - const val DOUBLE_PRESS_KEY_PRESS_MAX_DELAY = 300 - const val DOUBLE_PRESS_DELAY_BETWEEN_PRESSED = 500 + val DEBUG_TEXTURE_RESOURCE_LOCATION = minosoft("debug").texture() const val DEFAULT_LINE_WIDTH = 1.0f / 128.0f @@ -48,6 +41,5 @@ object RenderConstants { const val DISABLE_GUI_CACHE = false - const val OPENGL_DEBUG_MODE = false const val DIRTY_BUFFER_UNBIND = true } diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/gui/gui/screen/container/enchanting/EnchantmentButtonElement.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/gui/gui/screen/container/enchanting/EnchantmentButtonElement.kt index df8e24aa8..b4cae5031 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/gui/gui/screen/container/enchanting/EnchantmentButtonElement.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/gui/gui/screen/container/enchanting/EnchantmentButtonElement.kt @@ -19,7 +19,6 @@ import de.bixilon.minosoft.data.registries.enchantment.Enchantment import de.bixilon.minosoft.data.text.ChatComponent import de.bixilon.minosoft.data.text.TextComponent import de.bixilon.minosoft.data.text.formatting.color.ChatColors -import de.bixilon.minosoft.gui.rendering.RenderConstants import de.bixilon.minosoft.gui.rendering.gui.GUIRenderer import de.bixilon.minosoft.gui.rendering.gui.atlas.Atlas.Companion.get import de.bixilon.minosoft.gui.rendering.gui.atlas.AtlasElement @@ -30,6 +29,7 @@ import de.bixilon.minosoft.gui.rendering.gui.elements.VerticalAlignments.Compani import de.bixilon.minosoft.gui.rendering.gui.elements.input.button.AbstractButtonElement import de.bixilon.minosoft.gui.rendering.gui.elements.primitive.AtlasImageElement import de.bixilon.minosoft.gui.rendering.gui.elements.text.TextElement +import de.bixilon.minosoft.gui.rendering.gui.hud.elements.hotbar.HotbarExperienceBarElement import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexConsumer import de.bixilon.minosoft.gui.rendering.gui.mesh.GUIVertexOptions @@ -69,7 +69,7 @@ class EnchantmentButtonElement( fun update(disabled: Boolean, cost: Int, enchantment: Enchantment?, level: Int) { _disabled = disabled || cost <= 0 - levelText.text = TextComponent(cost).color(RenderConstants.EXPERIENCE_BAR_LEVEL_COLOR) + levelText.text = TextComponent(cost).color(HotbarExperienceBarElement.LEVEL_COLOR) textElement._chatComponent = if (enchantment == null) ChatComponent.EMPTY else TextComponent(enchantment.identifier.toMinifiedString() + " $level").color(ChatColors.BLUE) textElement.forceSilentApply() diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/gui/hud/elements/hotbar/HotbarExperienceBarElement.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/gui/hud/elements/hotbar/HotbarExperienceBarElement.kt index e92b695ea..c316276bb 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/gui/hud/elements/hotbar/HotbarExperienceBarElement.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/gui/hud/elements/hotbar/HotbarExperienceBarElement.kt @@ -17,7 +17,7 @@ import de.bixilon.kotlinglm.vec2.Vec2 import de.bixilon.kotlinglm.vec2.Vec2i import de.bixilon.minosoft.data.registries.identified.Namespaces.minecraft import de.bixilon.minosoft.data.text.TextComponent -import de.bixilon.minosoft.gui.rendering.RenderConstants +import de.bixilon.minosoft.data.text.formatting.color.RGBColor.Companion.asColor import de.bixilon.minosoft.gui.rendering.font.renderer.element.TextRenderProperties import de.bixilon.minosoft.gui.rendering.gui.GUIRenderer import de.bixilon.minosoft.gui.rendering.gui.atlas.Atlas.Companion.get @@ -66,7 +66,7 @@ class HotbarExperienceBarElement(guiRenderer: GUIRenderer) : Element(guiRenderer if (level > 0) { // level - val text = TextElement(guiRenderer, TextComponent(level).apply { color = RenderConstants.EXPERIENCE_BAR_LEVEL_COLOR }, background = null, properties = TextRenderProperties(HorizontalAlignments.CENTER, shadow = false)) + val text = TextElement(guiRenderer, TextComponent(level).apply { color = LEVEL_COLOR }, background = null, properties = TextRenderProperties(HorizontalAlignments.CENTER, shadow = false)) text.render(offset + Vec2i(HorizontalAlignments.CENTER.getOffset(size.x, text.size.x), -TEXT_PROPERTIES.lineHeight + 1), consumer, options) } @@ -95,5 +95,6 @@ class HotbarExperienceBarElement(guiRenderer: GUIRenderer) : Element(guiRenderer val ATLAS = minecraft("hud/hotbar/experience") private val TEXT_PROPERTIES = TextRenderProperties(HorizontalAlignments.CENTER, shadow = false) private val SIZE = Vec2(182, 5) + val LEVEL_COLOR = "#80ff20".asColor() } } diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/input/key/manager/binding/actions/KeyActionFilter.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/input/key/manager/binding/actions/KeyActionFilter.kt index 487801073..9a34a835c 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/input/key/manager/binding/actions/KeyActionFilter.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/input/key/manager/binding/actions/KeyActionFilter.kt @@ -16,7 +16,6 @@ package de.bixilon.minosoft.gui.rendering.input.key.manager.binding.actions import de.bixilon.minosoft.config.key.KeyActions import de.bixilon.minosoft.config.key.KeyCodes import de.bixilon.minosoft.data.registries.identified.ResourceLocation -import de.bixilon.minosoft.gui.rendering.RenderConstants import de.bixilon.minosoft.gui.rendering.input.key.manager.InputManager import de.bixilon.minosoft.gui.rendering.input.key.manager.binding.KeyBindingFilterState import de.bixilon.minosoft.gui.rendering.input.key.manager.binding.KeyBindingState @@ -94,6 +93,9 @@ interface KeyActionFilter { object DoublePress : KeyActionFilter { + const val PRESS_MAX_DELAY = 300 + const val DELAY_BETWEEN_PRESSED = 500 + override fun check(filter: KeyBindingFilterState, codes: Set, input: InputManager, name: ResourceLocation, state: KeyBindingState, code: KeyCodes, pressed: Boolean, millis: Long) { if (!pressed) { @@ -110,11 +112,11 @@ interface KeyActionFilter { return } - if (millis - previous > RenderConstants.DOUBLE_PRESS_KEY_PRESS_MAX_DELAY) { + if (millis - previous > PRESS_MAX_DELAY) { filter.satisfied = false return } - if (millis - state.lastChange <= RenderConstants.DOUBLE_PRESS_DELAY_BETWEEN_PRESSED) { + if (millis - state.lastChange <= DELAY_BETWEEN_PRESSED) { filter.satisfied = false return } diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/system/opengl/OpenGLRenderSystem.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/system/opengl/OpenGLRenderSystem.kt index 220a27a2a..dc832bb6e 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/system/opengl/OpenGLRenderSystem.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/system/opengl/OpenGLRenderSystem.kt @@ -18,7 +18,6 @@ import de.bixilon.kutil.concurrent.lock.thread.ThreadMissmatchException import de.bixilon.minosoft.data.registries.identified.ResourceLocation import de.bixilon.minosoft.data.text.formatting.color.Colors import de.bixilon.minosoft.data.text.formatting.color.RGBColor -import de.bixilon.minosoft.gui.rendering.RenderConstants import de.bixilon.minosoft.gui.rendering.RenderContext import de.bixilon.minosoft.gui.rendering.events.ResizeWindowEvent import de.bixilon.minosoft.gui.rendering.shader.Shader @@ -135,7 +134,7 @@ class OpenGLRenderSystem( glViewport(0, 0, it.size.x, it.size.y) } } - if (RenderConstants.OPENGL_DEBUG_MODE) { + if (DEBUG_MODE) { glEnable(GL_DEBUG_OUTPUT) glDebugMessageCallback({ source, type, id, severity, length, message, userParameter -> Log.log(LogMessageType.RENDERING, LogLevels.VERBOSE) { "OpenGL error: source=$source, type=$type, id=$id, severity=$severity, length=$length, message=$message, userParameter=$userParameter" } @@ -327,6 +326,7 @@ class OpenGLRenderSystem( } companion object : RenderSystemFactory { + const val DEBUG_MODE = false override fun create(context: RenderContext) = OpenGLRenderSystem(context)