From 1000fced607ccfa1c90ab0868f230452f7adb918 Mon Sep 17 00:00:00 2001 From: Micle Date: Fri, 6 Jun 2025 20:52:01 +0100 Subject: [PATCH] Created some inital extra settings. --- .../firefly_bush_backport/config/Config.java | 26 +++++++++++++++++++ .../particle/FireflyParticle.java | 14 +++++----- 2 files changed, 33 insertions(+), 7 deletions(-) diff --git a/src/main/java/dev/micle/firefly_bush_backport/config/Config.java b/src/main/java/dev/micle/firefly_bush_backport/config/Config.java index 0a11d7e..1ab96d6 100644 --- a/src/main/java/dev/micle/firefly_bush_backport/config/Config.java +++ b/src/main/java/dev/micle/firefly_bush_backport/config/Config.java @@ -2,6 +2,7 @@ package dev.micle.firefly_bush_backport.config; import dev.micle.firefly_bush_backport.FireflyBushBackport; import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; import net.minecraftforge.common.ForgeConfigSpec; import net.minecraftforge.eventbus.api.SubscribeEvent; import net.minecraftforge.fml.common.Mod; @@ -63,6 +64,14 @@ public final class Config { public static ForgeConfigSpec.IntValue particleMinLifetime; public static ForgeConfigSpec.IntValue particleMaxLifetime; + public static ForgeConfigSpec.DoubleValue particleExtraFriction; + public static ForgeConfigSpec.DoubleValue particleExtraQuadSize; + public static ForgeConfigSpec.DoubleValue particleExtraSpeedMultiplierX; + public static ForgeConfigSpec.DoubleValue particleExtraSpeedMultiplierY; + public static ForgeConfigSpec.DoubleValue particleExtraSpeedMultiplierZ; + public static ForgeConfigSpec.DoubleValue particleExtraLightColor; + public static ForgeConfigSpec.DoubleValue particleExtraScale; + Client(ForgeConfigSpec.Builder builder) { builder.comment("Settings for the firefly bush.").push("bush"); bushFireflyChancePerTick = builder @@ -90,6 +99,23 @@ public final class Config { .defineInRange("particleMinLifetime", 36, 0, Integer.MAX_VALUE); particleMaxLifetime = builder .defineInRange("particleMaxLifetime", 180, 0, Integer.MAX_VALUE); + + builder.comment("Extra settings for the firefly particle.").push("extra"); + particleExtraFriction = builder + .defineInRange("particleExtraFriction", 0.96, 0, Double.MAX_VALUE); + particleExtraQuadSize = builder + .defineInRange("particleExtraQuadSize", 0.75, 0, Double.MAX_VALUE); + particleExtraSpeedMultiplierX = builder + .defineInRange("particleExtraSpeedMultiplierX", 0.8, Double.MIN_VALUE, Double.MAX_VALUE); + particleExtraSpeedMultiplierY = builder + .defineInRange("particleExtraSpeedMultiplierY", 0.8, Double.MIN_VALUE, Double.MAX_VALUE); + particleExtraSpeedMultiplierZ = builder + .defineInRange("particleExtraSpeedMultiplierZ", 0.8, Double.MIN_VALUE, Double.MAX_VALUE); + particleExtraLightColor = builder + .defineInRange("particleExtraLightColor", 255.0, 0, 255); + particleExtraScale = builder + .defineInRange("particleExtraScale", 1.5, 0, Double.MAX_VALUE); + builder.pop(); builder.pop(); } diff --git a/src/main/java/dev/micle/firefly_bush_backport/particle/FireflyParticle.java b/src/main/java/dev/micle/firefly_bush_backport/particle/FireflyParticle.java index 69be934..77c1fde 100644 --- a/src/main/java/dev/micle/firefly_bush_backport/particle/FireflyParticle.java +++ b/src/main/java/dev/micle/firefly_bush_backport/particle/FireflyParticle.java @@ -17,11 +17,11 @@ public class FireflyParticle extends TextureSheetParticle { protected FireflyParticle(ClientLevel clientLevel, double x, double y, double z, double xSpeed, double ySpeed, double zSpeed) { super(clientLevel, x, y, z, xSpeed, ySpeed, zSpeed); this.speedUpWhenYMotionIsBlocked = true; - this.friction = 0.96F; - this.quadSize *= 0.75F; - this.yd *= 0.8F; - this.xd *= 0.8F; - this.zd *= 0.8F; + this.friction = Config.Client.particleExtraFriction.get().floatValue(); + this.quadSize *= Config.Client.particleExtraQuadSize.get().floatValue(); + this.yd *= Config.Client.particleExtraSpeedMultiplierY.get(); + this.xd *= Config.Client.particleExtraSpeedMultiplierX.get(); + this.zd *= Config.Client.particleExtraSpeedMultiplierZ.get(); } @Override @@ -31,7 +31,7 @@ public class FireflyParticle extends TextureSheetParticle { @Override public int getLightColor(float partialTick) { - return (int) (255.0F * getFadeAmount( + return (int) (Config.Client.particleExtraLightColor.get().floatValue() * getFadeAmount( this.getLifetimeProgress(this.age + partialTick), Config.Client.particleFadeInLightTime.get().floatValue(), Config.Client.particleFadeOutLightTime.get().floatValue()) @@ -97,7 +97,7 @@ public class FireflyParticle extends TextureSheetParticle { fireflyParticle.setLifetime(clientLevel.random.nextIntBetweenInclusive( Config.Client.particleMinLifetime.get(), Config.Client.particleMaxLifetime.get() )); - fireflyParticle.scale(1.5F); + fireflyParticle.scale(Config.Client.particleExtraScale.get().floatValue()); fireflyParticle.pickSprite(this.sprite); fireflyParticle.setAlpha(0.0F);