From f1fa629c5cadf2d5802be90c441d294cf61c842b Mon Sep 17 00:00:00 2001 From: octarine-noise Date: Wed, 28 Apr 2021 16:56:24 +0200 Subject: [PATCH] bring back the fade-out feature for falling leaf particles --- src/main/kotlin/mods/betterfoliage/config/MainConfig.kt | 1 + .../mods/betterfoliage/render/particle/FallingLeaves.kt | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/main/kotlin/mods/betterfoliage/config/MainConfig.kt b/src/main/kotlin/mods/betterfoliage/config/MainConfig.kt index f582f09..194b1ca 100644 --- a/src/main/kotlin/mods/betterfoliage/config/MainConfig.kt +++ b/src/main/kotlin/mods/betterfoliage/config/MainConfig.kt @@ -132,6 +132,7 @@ class NetherrackConfig(node: ConfigNode) : DelegatingConfigGroup(node) { class FallingLeavesConfig(node: ConfigNode) : DelegatingConfigGroup(node) { val enabled by boolean(true, langKey = recurring) + val opacityHack by boolean(false) val speed by double(0.05, min = 0.01, max = 0.15) val windStrength by double(0.5, min = 0.1, max = 2.0) val stormStrength by double(0.8, min = 0.1, max = 2.0) { it.coerceAtLeast(windStrength) } diff --git a/src/main/kotlin/mods/betterfoliage/render/particle/FallingLeaves.kt b/src/main/kotlin/mods/betterfoliage/render/particle/FallingLeaves.kt index 764827c..3502b27 100644 --- a/src/main/kotlin/mods/betterfoliage/render/particle/FallingLeaves.kt +++ b/src/main/kotlin/mods/betterfoliage/render/particle/FallingLeaves.kt @@ -7,6 +7,7 @@ import mods.betterfoliage.render.block.vanilla.LeafKey import mods.betterfoliage.util.* import net.fabricmc.fabric.api.event.world.WorldTickCallback import net.minecraft.client.MinecraftClient +import net.minecraft.client.particle.ParticleTextureSheet import net.minecraft.client.render.BufferBuilder import net.minecraft.client.world.ClientWorld import net.minecraft.util.math.BlockPos @@ -49,7 +50,7 @@ class FallingLeafParticle( override fun update() { if (randomF() > 0.95f) rotPositive = !rotPositive -// if (age > maxAge - 20) colorAlpha = 0.05f * (maxAge - age) + if (age > maxAge - 20) colorAlpha = 0.05f * (maxAge - age) if (onGround || wasCollided) { velocity.setTo(0.0, 0.0, 0.0) @@ -74,6 +75,10 @@ class FallingLeafParticle( val color = overrideColor ?: blockColor setColor(color) } + + override fun getType() = + if (BetterFoliage.config.fallingLeaves.opacityHack) ParticleTextureSheet.PARTICLE_SHEET_OPAQUE + else ParticleTextureSheet.PARTICLE_SHEET_TRANSLUCENT } object LeafWindTracker : WorldTickCallback, ClientWorldLoadCallback {