From f9d9325384bdf15f87fca30cb40ba37e7dbee2d9 Mon Sep 17 00:00:00 2001 From: Moritz Zwerger Date: Tue, 10 Oct 2023 20:14:07 +0200 Subject: [PATCH] replace BiomePrecipitation.NONE ang GrassColorModifiers.NONE with null --- .../registries/versions/registries/RegistryLoadingTest.kt | 4 +++- .../de/bixilon/minosoft/data/registries/biomes/Biome.kt | 6 +++--- .../minosoft/data/registries/biomes/BiomePrecipitation.kt | 3 +-- .../minosoft/data/registries/biomes/GrassColorModifiers.kt | 3 +-- .../world/overlay/overlays/weather/WeatherOverlay.kt | 6 +++--- .../minosoft/gui/rendering/tint/GrassTintCalculator.kt | 2 +- 6 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/integration-test/kotlin/de/bixilon/minosoft/data/registries/versions/registries/RegistryLoadingTest.kt b/src/integration-test/kotlin/de/bixilon/minosoft/data/registries/versions/registries/RegistryLoadingTest.kt index 888cf1a6c..5d87262a7 100644 --- a/src/integration-test/kotlin/de/bixilon/minosoft/data/registries/versions/registries/RegistryLoadingTest.kt +++ b/src/integration-test/kotlin/de/bixilon/minosoft/data/registries/versions/registries/RegistryLoadingTest.kt @@ -59,6 +59,8 @@ abstract class RegistryLoadingTest(val versionName: String) { fun biome() { if (version >= V_1_17) throw SkipException("Biomes are datapack only") - assertNotNull(registries.biome[minecraft("plains")]?.identifier) + val plains = registries.biome[minecraft("plains")]!! + assertEquals(plains.temperature, 0.8f) + assertEquals(plains.downfall, 0.4f) } } diff --git a/src/main/java/de/bixilon/minosoft/data/registries/biomes/Biome.kt b/src/main/java/de/bixilon/minosoft/data/registries/biomes/Biome.kt index b5bce40e0..f34bb23bf 100644 --- a/src/main/java/de/bixilon/minosoft/data/registries/biomes/Biome.kt +++ b/src/main/java/de/bixilon/minosoft/data/registries/biomes/Biome.kt @@ -32,9 +32,9 @@ data class Biome( val fogColor: RGBColor? = null, val waterColor: RGBColor?, val waterFogColor: RGBColor?, - val precipitation: BiomePrecipitation, + val precipitation: BiomePrecipitation?, ) : RegistryItem() { - val grassColorModifier = GrassColorModifiers.BIOME_MAP[identifier] ?: GrassColorModifiers.NONE + val grassColorModifier = GrassColorModifiers.BIOME_MAP[identifier] val temperatureColorMapCoordinate = getColorMapCoordinate(temperature) val downfallColorMapCoordinate = getColorMapCoordinate(downfall * temperature) val colorMapPixelIndex = downfallColorMapCoordinate shl 8 or temperatureColorMapCoordinate @@ -70,7 +70,7 @@ data class Biome( fogColor = fogColor, waterColor = waterColor, waterFogColor = waterFogColor, - precipitation = data["precipitation"]?.let { BiomePrecipitation[it] } ?: BiomePrecipitation.NONE, + precipitation = data["precipitation"]?.let { BiomePrecipitation[it] }, ) } } diff --git a/src/main/java/de/bixilon/minosoft/data/registries/biomes/BiomePrecipitation.kt b/src/main/java/de/bixilon/minosoft/data/registries/biomes/BiomePrecipitation.kt index 7f304744a..57117413c 100644 --- a/src/main/java/de/bixilon/minosoft/data/registries/biomes/BiomePrecipitation.kt +++ b/src/main/java/de/bixilon/minosoft/data/registries/biomes/BiomePrecipitation.kt @@ -1,6 +1,6 @@ /* * Minosoft - * Copyright (C) 2020-2022 Moritz Zwerger + * Copyright (C) 2020-2023 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. * @@ -17,7 +17,6 @@ import de.bixilon.kutil.enums.EnumUtil import de.bixilon.kutil.enums.ValuesEnum enum class BiomePrecipitation { - NONE, RAIN, SNOW, ; diff --git a/src/main/java/de/bixilon/minosoft/data/registries/biomes/GrassColorModifiers.kt b/src/main/java/de/bixilon/minosoft/data/registries/biomes/GrassColorModifiers.kt index 8506b21ef..dc441d065 100644 --- a/src/main/java/de/bixilon/minosoft/data/registries/biomes/GrassColorModifiers.kt +++ b/src/main/java/de/bixilon/minosoft/data/registries/biomes/GrassColorModifiers.kt @@ -1,6 +1,6 @@ /* * Minosoft - * Copyright (C) 2020-2022 Moritz Zwerger + * Copyright (C) 2020-2023 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. * @@ -17,7 +17,6 @@ import de.bixilon.kutil.enums.EnumUtil import de.bixilon.kutil.enums.ValuesEnum enum class GrassColorModifiers { - NONE, DARK_FOREST, SWAMP, ; diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/framebuffer/world/overlay/overlays/weather/WeatherOverlay.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/framebuffer/world/overlay/overlays/weather/WeatherOverlay.kt index 6f6225d5d..3c2e8fcac 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/framebuffer/world/overlay/overlays/weather/WeatherOverlay.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/framebuffer/world/overlay/overlays/weather/WeatherOverlay.kt @@ -35,16 +35,16 @@ class WeatherOverlay(private val context: RenderContext) : Overlay { private val config = context.connection.profiles.rendering.overlay.weather private val rain = context.textures.staticTextures.createTexture(RAIN) private val snow = context.textures.staticTextures.createTexture(SNOW) - private val precipitation get() = context.connection.player.physics.positionInfo.biome?.precipitation ?: BiomePrecipitation.NONE + private val precipitation get() = context.connection.player.physics.positionInfo.biome?.precipitation override val render: Boolean get() = world.dimension.effects.weather && world.weather.raining && when (precipitation) { // ToDo: Check if exposed to the sky - BiomePrecipitation.NONE -> false + null -> false BiomePrecipitation.RAIN -> config.rain BiomePrecipitation.SNOW -> config.snow } private val texture: Texture? get() = when (precipitation) { - BiomePrecipitation.NONE -> null + null -> null BiomePrecipitation.RAIN -> rain BiomePrecipitation.SNOW -> snow } diff --git a/src/main/java/de/bixilon/minosoft/gui/rendering/tint/GrassTintCalculator.kt b/src/main/java/de/bixilon/minosoft/gui/rendering/tint/GrassTintCalculator.kt index d26bf6fa7..599459c61 100644 --- a/src/main/java/de/bixilon/minosoft/gui/rendering/tint/GrassTintCalculator.kt +++ b/src/main/java/de/bixilon/minosoft/gui/rendering/tint/GrassTintCalculator.kt @@ -54,7 +54,7 @@ class GrassTintCalculator : TintProvider { val color = getColor(biome.colorMapPixelIndex) return when (biome.grassColorModifier) { - GrassColorModifiers.NONE -> color + null -> color GrassColorModifiers.SWAMP -> 0x6A7039 // ToDo: Biome noise is applied here GrassColorModifiers.DARK_FOREST -> (color and 0xFEFEFE) + 0x28340A shr 1 }