bring back the fade-out feature for falling leaf particles

This commit is contained in:
octarine-noise
2021-04-28 16:56:24 +02:00
parent ad914ac03a
commit f1fa629c5c
2 changed files with 7 additions and 1 deletions

View File

@@ -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) }

View File

@@ -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 {