util: shortcut for minosoft namespace

This commit is contained in:
Bixilon 2022-08-16 22:41:05 +02:00
parent b3d36351ca
commit acff5fc660
No known key found for this signature in database
GPG Key ID: 5CAD791931B09AC4
9 changed files with 25 additions and 23 deletions

View File

@ -30,7 +30,6 @@ import de.bixilon.minosoft.config.profile.profiles.eros.ErosProfileManager
import de.bixilon.minosoft.data.language.LanguageManager.Companion.load import de.bixilon.minosoft.data.language.LanguageManager.Companion.load
import de.bixilon.minosoft.data.language.MultiLanguageManager import de.bixilon.minosoft.data.language.MultiLanguageManager
import de.bixilon.minosoft.data.registries.DefaultRegistries import de.bixilon.minosoft.data.registries.DefaultRegistries
import de.bixilon.minosoft.data.registries.ResourceLocation
import de.bixilon.minosoft.data.registries.versions.Versions import de.bixilon.minosoft.data.registries.versions.Versions
import de.bixilon.minosoft.gui.eros.Eros import de.bixilon.minosoft.gui.eros.Eros
import de.bixilon.minosoft.gui.eros.XStartOnFirstThreadWarning import de.bixilon.minosoft.gui.eros.XStartOnFirstThreadWarning
@ -49,6 +48,7 @@ import de.bixilon.minosoft.terminal.RunConfiguration
import de.bixilon.minosoft.terminal.cli.CLI import de.bixilon.minosoft.terminal.cli.CLI
import de.bixilon.minosoft.util.GitInfo import de.bixilon.minosoft.util.GitInfo
import de.bixilon.minosoft.util.KUtil import de.bixilon.minosoft.util.KUtil
import de.bixilon.minosoft.util.KUtil.minosoft
import de.bixilon.minosoft.util.RenderPolling import de.bixilon.minosoft.util.RenderPolling
import de.bixilon.minosoft.util.YggdrasilUtil import de.bixilon.minosoft.util.YggdrasilUtil
import de.bixilon.minosoft.util.logging.Log import de.bixilon.minosoft.util.logging.Log
@ -128,7 +128,7 @@ object Minosoft {
val language = ErosProfileManager.selected.general.language val language = ErosProfileManager.selected.general.language
ErosProfileManager.selected.general::language.profileWatch(this, true) { ErosProfileManager.selected.general::language.profileWatch(this, true) {
Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Loading language files (${language})" } Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Loading language files (${language})" }
LANGUAGE_MANAGER.translators[ProtocolDefinition.MINOSOFT_NAMESPACE] = load(it, null, MINOSOFT_ASSETS_MANAGER, ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "language/")) LANGUAGE_MANAGER.translators[ProtocolDefinition.MINOSOFT_NAMESPACE] = load(it, null, MINOSOFT_ASSETS_MANAGER, minosoft("language/"))
Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Language files loaded!" } Log.log(LogMessageType.OTHER, LogLevels.VERBOSE) { "Language files loaded!" }
} }
} }

View File

@ -1,6 +1,6 @@
/* /*
* Minosoft * Minosoft
* Copyright (C) 2022 Moritz Zwerger * Copyright (C) 2020-2022 Moritz Zwerger
* *
* This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. * This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
* *
@ -13,8 +13,8 @@
package de.bixilon.minosoft.data.language package de.bixilon.minosoft.data.language
import de.bixilon.minosoft.data.registries.ResourceLocation
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
import de.bixilon.minosoft.util.KUtil.minosoft
import de.bixilon.minosoft.util.KUtil.toResourceLocation import de.bixilon.minosoft.util.KUtil.toResourceLocation
object LanguageUtil { object LanguageUtil {
@ -23,7 +23,7 @@ object LanguageUtil {
fun String?.i18n(): Translated { fun String?.i18n(): Translated {
val resourceLocation = this.toResourceLocation() val resourceLocation = this.toResourceLocation()
if (resourceLocation.namespace == ProtocolDefinition.DEFAULT_NAMESPACE) { if (resourceLocation.namespace == ProtocolDefinition.DEFAULT_NAMESPACE) {
return Translated(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, resourceLocation.path)) return Translated(minosoft(resourceLocation.path))
} }
return Translated(resourceLocation) return Translated(resourceLocation)
} }

View File

@ -13,16 +13,15 @@
package de.bixilon.minosoft.gui.rendering package de.bixilon.minosoft.gui.rendering
import de.bixilon.minosoft.data.registries.ResourceLocation
import de.bixilon.minosoft.gui.rendering.system.base.shader.Shader.Companion.loadAnimated import de.bixilon.minosoft.gui.rendering.system.base.shader.Shader.Companion.loadAnimated
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition import de.bixilon.minosoft.util.KUtil.minosoft
class ShaderManager( class ShaderManager(
val renderWindow: RenderWindow, val renderWindow: RenderWindow,
) { ) {
val genericColorShader = renderWindow.renderSystem.createShader(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "generic/color")) val genericColorShader = renderWindow.renderSystem.createShader(minosoft("generic/color"))
val genericTextureShader = renderWindow.renderSystem.createShader(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "generic/texture")) val genericTextureShader = renderWindow.renderSystem.createShader(minosoft("generic/texture"))
val genericTexture2dShader = renderWindow.renderSystem.createShader(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "generic/texture_2d")) val genericTexture2dShader = renderWindow.renderSystem.createShader(minosoft("generic/texture_2d"))
fun postInit() { fun postInit() {

View File

@ -41,6 +41,7 @@ import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnectionStates import de.bixilon.minosoft.protocol.network.connection.play.PlayConnectionStates
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnectionStates.Companion.disconnected import de.bixilon.minosoft.protocol.network.connection.play.PlayConnectionStates.Companion.disconnected
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
import de.bixilon.minosoft.util.KUtil.minosoft
import de.bixilon.minosoft.util.chunk.ChunkUtil.isInViewDistance import de.bixilon.minosoft.util.chunk.ChunkUtil.isInViewDistance
import de.bixilon.minosoft.util.collections.floats.DirectArrayFloatList import de.bixilon.minosoft.util.collections.floats.DirectArrayFloatList
@ -51,8 +52,8 @@ class ParticleRenderer(
) : Renderer, TransparentDrawable, TranslucentDrawable, SkipAll, AbstractParticleRenderer { ) : Renderer, TransparentDrawable, TranslucentDrawable, SkipAll, AbstractParticleRenderer {
override val renderSystem: RenderSystem = renderWindow.renderSystem override val renderSystem: RenderSystem = renderWindow.renderSystem
private val profile = connection.profiles.particle private val profile = connection.profiles.particle
private val transparentShader: Shader = renderSystem.createShader(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "particle")) private val transparentShader: Shader = renderSystem.createShader(minosoft("particle"))
private val translucentShader: Shader = renderSystem.createShader(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "particle")) private val translucentShader: Shader = renderSystem.createShader(minosoft("particle"))
// There is no opaque mesh because it is simply not needed (every particle has transparency) // There is no opaque mesh because it is simply not needed (every particle has transparency)
private var transparentMesh = ParticleMesh(renderWindow, DirectArrayFloatList(RenderConstants.MAXIMUM_PARTICLE_AMOUNT * ParticleMesh.ParticleMeshStruct.FLOATS_PER_VERTEX)) private var transparentMesh = ParticleMesh(renderWindow, DirectArrayFloatList(RenderConstants.MAXIMUM_PARTICLE_AMOUNT * ParticleMesh.ParticleMeshStruct.FLOATS_PER_VERTEX))

View File

@ -13,17 +13,16 @@
package de.bixilon.minosoft.gui.rendering.skeletal package de.bixilon.minosoft.gui.rendering.skeletal
import de.bixilon.minosoft.data.registries.ResourceLocation
import de.bixilon.minosoft.gui.rendering.RenderWindow import de.bixilon.minosoft.gui.rendering.RenderWindow
import de.bixilon.minosoft.gui.rendering.skeletal.instance.SkeletalInstance import de.bixilon.minosoft.gui.rendering.skeletal.instance.SkeletalInstance
import de.bixilon.minosoft.gui.rendering.system.base.shader.Shader.Companion.loadAnimated import de.bixilon.minosoft.gui.rendering.system.base.shader.Shader.Companion.loadAnimated
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition import de.bixilon.minosoft.util.KUtil.minosoft
import org.lwjgl.system.MemoryUtil.memAllocFloat import org.lwjgl.system.MemoryUtil.memAllocFloat
class SkeletalManager( class SkeletalManager(
val renderWindow: RenderWindow, val renderWindow: RenderWindow,
) { ) {
val shader = renderWindow.renderSystem.createShader(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "skeletal")) val shader = renderWindow.renderSystem.createShader(minosoft("skeletal"))
private val uniformBuffer = renderWindow.renderSystem.createFloatUniformBuffer(memAllocFloat(TRANSFORMS * MAT4_SIZE)) private val uniformBuffer = renderWindow.renderSystem.createFloatUniformBuffer(memAllocFloat(TRANSFORMS * MAT4_SIZE))
fun init() { fun init() {

View File

@ -34,15 +34,15 @@ import de.bixilon.minosoft.gui.rendering.util.mesh.SimpleTextureMesh
import de.bixilon.minosoft.modding.event.events.TimeChangeEvent import de.bixilon.minosoft.modding.event.events.TimeChangeEvent
import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker import de.bixilon.minosoft.modding.event.invoker.CallbackEventInvoker
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition import de.bixilon.minosoft.util.KUtil.minosoft
class SkyRenderer( class SkyRenderer(
private val connection: PlayConnection, private val connection: PlayConnection,
override val renderWindow: RenderWindow, override val renderWindow: RenderWindow,
) : Renderer, PreDrawable { ) : Renderer, PreDrawable {
override val renderSystem: RenderSystem = renderWindow.renderSystem override val renderSystem: RenderSystem = renderWindow.renderSystem
private val skyboxShader = renderSystem.createShader(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "sky/skybox")) private val skyboxShader = renderSystem.createShader(minosoft("sky/skybox"))
private val skySunShader = renderSystem.createShader(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "sky/sun")) private val skySunShader = renderSystem.createShader(minosoft("sky/sun"))
private val skyboxMesh = SkyboxMesh(renderWindow) private val skyboxMesh = SkyboxMesh(renderWindow)
private var skySunMesh = SimpleTextureMesh(renderWindow) private var skySunMesh = SimpleTextureMesh(renderWindow)
private lateinit var sunTexture: AbstractTexture private lateinit var sunTexture: AbstractTexture

View File

@ -30,14 +30,14 @@ import de.bixilon.minosoft.gui.rendering.system.base.shader.ShaderUniforms
import de.bixilon.minosoft.gui.rendering.system.base.texture.texture.AbstractTexture import de.bixilon.minosoft.gui.rendering.system.base.texture.texture.AbstractTexture
import de.bixilon.minosoft.gui.rendering.textures.TextureUtil.texture import de.bixilon.minosoft.gui.rendering.textures.TextureUtil.texture
import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection import de.bixilon.minosoft.protocol.network.connection.play.PlayConnection
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition import de.bixilon.minosoft.util.KUtil.minosoft
import de.bixilon.minosoft.util.KUtil.toResourceLocation import de.bixilon.minosoft.util.KUtil.toResourceLocation
class WorldBorderRenderer( class WorldBorderRenderer(
override val renderWindow: RenderWindow, override val renderWindow: RenderWindow,
) : Renderer, TranslucentDrawable { ) : Renderer, TranslucentDrawable {
override val renderSystem: RenderSystem = renderWindow.renderSystem override val renderSystem: RenderSystem = renderWindow.renderSystem
private val shader = renderSystem.createShader(ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "world/border")) private val shader = renderSystem.createShader(minosoft("world/border"))
private var borderMesh = WorldBorderMesh(renderWindow) private var borderMesh = WorldBorderMesh(renderWindow)
private val border = renderWindow.connection.world.border private val border = renderWindow.connection.world.border
private lateinit var texture: AbstractTexture private lateinit var texture: AbstractTexture

View File

@ -18,9 +18,8 @@ import de.bixilon.kutil.primitive.BooleanUtil.toBoolean
import de.bixilon.kutil.primitive.IntUtil.toInt import de.bixilon.kutil.primitive.IntUtil.toInt
import de.bixilon.minosoft.Minosoft import de.bixilon.minosoft.Minosoft
import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject import de.bixilon.minosoft.assets.util.FileUtil.readJsonObject
import de.bixilon.minosoft.data.registries.ResourceLocation
import de.bixilon.minosoft.protocol.protocol.ProtocolDefinition
import de.bixilon.minosoft.terminal.RunConfiguration import de.bixilon.minosoft.terminal.RunConfiguration
import de.bixilon.minosoft.util.KUtil.minosoft
import de.bixilon.minosoft.util.logging.Log import de.bixilon.minosoft.util.logging.Log
import de.bixilon.minosoft.util.logging.LogLevels import de.bixilon.minosoft.util.logging.LogLevels
import de.bixilon.minosoft.util.logging.LogMessageType import de.bixilon.minosoft.util.logging.LogMessageType
@ -80,7 +79,7 @@ object GitInfo {
fun load() { fun load() {
try { try {
val dateFormat: DateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZZZZZ") val dateFormat: DateFormat = SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ssZZZZZ")
val json = Minosoft.MINOSOFT_ASSETS_MANAGER[ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, "git.json")].readJsonObject() val json = Minosoft.MINOSOFT_ASSETS_MANAGER[minosoft("git.json")].readJsonObject()
GIT_BRANCH = json["git.branch"].unsafeCast() GIT_BRANCH = json["git.branch"].unsafeCast()
GIT_BUILD_HOST_BRANCH = json["git.build.host"].unsafeCast() GIT_BUILD_HOST_BRANCH = json["git.build.host"].unsafeCast()
GIT_BUILD_TIME = dateFormat.parse(json["git.build.time"].unsafeCast()).time GIT_BUILD_TIME = dateFormat.parse(json["git.build.time"].unsafeCast()).time

View File

@ -71,6 +71,10 @@ object KUtil {
} }
} }
fun minosoft(path: String): ResourceLocation {
return ResourceLocation(ProtocolDefinition.MINOSOFT_NAMESPACE, path)
}
fun <T> T.synchronizedDeepCopy(): T { fun <T> T.synchronizedDeepCopy(): T {
return when (this) { return when (this) {
is Map<*, *> -> { is Map<*, *> -> {