Skip to content

Commit

Permalink
clean up config stuff
Browse files Browse the repository at this point in the history
  • Loading branch information
Wyvest committed Dec 30, 2024
1 parent e9a431b commit 7163137
Show file tree
Hide file tree
Showing 29 changed files with 210 additions and 261 deletions.
17 changes: 7 additions & 10 deletions build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -16,17 +16,18 @@ plugins {
toolkitLoomHelper {
// Adds OneConfig to our project
useOneConfig {
version = "1.0.0-alpha.47"
loaderVersion = "1.1.0-alpha.34"
version = "1.0.0-alpha.48"
loaderVersion = "1.1.0-alpha.35"

//usePolyMixin = true
//polyMixinVersion = "0.8.4+build.2"
usePolyMixin = true
polyMixinVersion = "0.8.4+build.2"

for (module in arrayOf("commands", "config-impl", "events", "hud", "internal", "ui")) {
+module
}
}
useDevAuth()
useMixinExtras("0.4.1")
useDevAuth("1.2.1")

// Removes the server configs from IntelliJ IDEA, leaving only client runs.
// If you're developing a server-side mod, you can remove this line.
Expand All @@ -39,7 +40,6 @@ toolkitLoomHelper {

// Adds the tweak class if we are building legacy version of forge as per the documentation (https://docs.polyfrost.org)
if (mcData.isLegacyForge) {
useTweaker("org.polyfrost.oneconfig.loader.stage0.LaunchWrapperTweaker", GameSide.CLIENT)
useForgeMixin(modData.id) // Configures the mixins if we are building for forge, useful for when we are dealing with cross-platform projects.
}
}
Expand All @@ -63,8 +63,5 @@ repositories {

// Configures the libraries/dependencies for your mod.
dependencies {
compileOnly("io.github.llamalad7:mixinextras-common:0.4.1")
annotationProcessor("io.github.llamalad7:mixinextras-common:0.4.1")
compileOnly("org.polyfrost:polymixin:0.8.4+build.2")
implementation("org.polyfrost.oneconfig:internal:1.0.0-alpha.47")
implementation("org.polyfrost.oneconfig:internal:1.0.0-alpha.48")
}
1 change: 0 additions & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
# Gradle Configuration -- DO NOT TOUCH THESE VALUES.
polyfrost.defaults.loom=3
org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.configureoncommand=true
Expand Down
2 changes: 1 addition & 1 deletion settings.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ pluginManagement {

plugins {
kotlin("jvm") version("2.0.0")
id("dev.deftu.gradle.multiversion-root") version("2.14.1")
id("dev.deftu.gradle.multiversion-root") version("2.17.0")
}
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import net.minecraft.client.renderer.vertex.DefaultVertexFormats;
import net.minecraft.entity.Entity;
import org.polyfrost.overflowparticles.OverflowParticles;
import org.polyfrost.overflowparticles.config.ModConfig;
import org.polyfrost.overflowparticles.config.ConfigManager;
import org.polyfrost.overflowparticles.config.ParticleConfig;
import org.polyfrost.overflowparticles.config.Settings;
import org.polyfrost.overflowparticles.utils.UtilKt;
Expand All @@ -26,27 +26,17 @@ public abstract class EffectRendererMixin {
@Unique
private int overflowParticles$ID;

//@WrapOperation(method = "renderLitParticles", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/particle/EntityFX;renderParticle(Lnet/minecraft/client/renderer/WorldRenderer;Lnet/minecraft/entity/Entity;FFFFFF)V"))
//private void a(EntityFX instance, WorldRenderer worldRendererIn, Entity entityIn, float partialTicks, float rotationX, float rotationZ, float rotationYZ, float rotationXY, float rotationXZ, Operation<Void> original) {
// OverflowParticles.INSTANCE.setRenderingEntity(instance);
// ParticleConfig config = ModConfig.INSTANCE.getConfig(instance);
// if (config != null && !config.getEntry().getEnabled() && config.getId() != 37) return;
// OverflowParticles.INSTANCE.setRendering(true);
// original.call(instance, worldRendererIn, entityIn, partialTicks, rotationX, rotationZ, rotationYZ, rotationXY, rotationXZ);
// OverflowParticles.INSTANCE.setRendering(false);
//}

@Redirect(method = "renderLitParticles", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/particle/EntityFX;renderParticle(Lnet/minecraft/client/renderer/WorldRenderer;Lnet/minecraft/entity/Entity;FFFFFF)V"))
private void a(EntityFX instance, WorldRenderer worldRendererIn, Entity entityIn, float partialTicks, float rotationX, float rotationZ, float rotationYZ, float rotationXY, float rotationXZ) {
@WrapOperation(method = "renderLitParticles", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/particle/EntityFX;renderParticle(Lnet/minecraft/client/renderer/WorldRenderer;Lnet/minecraft/entity/Entity;FFFFFF)V"))
private void a(EntityFX instance, WorldRenderer worldRendererIn, Entity entityIn, float partialTicks, float rotationX, float rotationZ, float rotationYZ, float rotationXY, float rotationXZ, Operation<Void> original) {
OverflowParticles.INSTANCE.setRenderingEntity(instance);
ParticleConfig config = ModConfig.INSTANCE.getConfig(instance);
if (config != null && !config.getEntry().getEnabled() && config.getId() != 37) return;
ParticleConfig config = ConfigManager.INSTANCE.getConfig(instance);
if (config != null && !config.getEnabled() && config.getId() != 37) return;
OverflowParticles.INSTANCE.setRendering(true);
instance.renderParticle(worldRendererIn, entityIn, partialTicks, rotationX, rotationZ, rotationYZ, rotationXY, rotationXZ);
original.call(instance, worldRendererIn, entityIn, partialTicks, rotationX, rotationZ, rotationYZ, rotationXY, rotationXZ);
OverflowParticles.INSTANCE.setRendering(false);
}


@SuppressWarnings("MixinAnnotationTarget")
@ModifyVariable(method = "renderParticles", at = @At(value = "STORE"), ordinal = 0)
private EntityFX capture(EntityFX entityFX) {
OverflowParticles.INSTANCE.setRenderingEntity(entityFX);
Expand All @@ -72,8 +62,8 @@ private void start(Entity entityIn, float partialTicks, CallbackInfo ci) {
@Inject(method = "renderParticles", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/particle/EntityFX;renderParticle(Lnet/minecraft/client/renderer/WorldRenderer;Lnet/minecraft/entity/Entity;FFFFFF)V", shift = At.Shift.AFTER))
private void end(Entity entityIn, float partialTicks, CallbackInfo ci) {
OverflowParticles.INSTANCE.setRendering(false);
ParticleConfig config = ModConfig.INSTANCE.getConfig(OverflowParticles.INSTANCE.getRenderingEntity());
if (config != null && !config.getEntry().getEnabled() && config.getId() != 37) {
ParticleConfig config = ConfigManager.INSTANCE.getConfig(OverflowParticles.INSTANCE.getRenderingEntity());
if (config != null && !config.getEnabled() && config.getId() != 37) {
Tessellator.getInstance().getWorldRenderer().reset();
}
Tessellator.getInstance().draw();
Expand Down Expand Up @@ -110,7 +100,7 @@ private int changeMaxParticleLimit(int original) {
at = @At("HEAD"), cancellable = true
)
private void removeBlockBreakingParticles(CallbackInfo ci) {
if (!OverflowParticles.INSTANCE.getConfigs().get(37).getEntry().getEnabled() || ModConfig.INSTANCE.getBlockSetting().getHideDigging()) {
if (!ConfigManager.INSTANCE.getConfigs().get(37).getEnabled() || ConfigManager.INSTANCE.getBlockSetting().getHideDigging()) {
ci.cancel();
}
}
Expand All @@ -120,7 +110,7 @@ private void removeBlockBreakingParticles(CallbackInfo ci) {
at = @At("HEAD"), cancellable = true, remap = false
)
private void removeBlockBreakingParticles_Forge(CallbackInfo ci) {
if (!OverflowParticles.INSTANCE.getConfigs().get(37).getEntry().getEnabled() || ModConfig.INSTANCE.getBlockSetting().getHideDigging()) {
if (!ConfigManager.INSTANCE.getConfigs().get(37).getEnabled() || ConfigManager.INSTANCE.getBlockSetting().getHideDigging()) {
ci.cancel();
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,16 +26,15 @@ public abstract class EntityFXMixin implements EntityFXHook {
@Inject(method = "renderParticle", at = @At(value = "HEAD"))
private void setScale(WorldRenderer worldRendererIn, Entity entityIn, float partialTicks, float rotationX, float rotationZ, float rotationYZ, float rotationXY, float rotationXZ, CallbackInfo ci) {
overflowParticles$scale = particleScale;
ParticleConfig config = ModConfig.INSTANCE.getConfig((EntityFX) (Object) this);
ParticleConfig config = ConfigManager.INSTANCE.getConfig((EntityFX) (Object) this);
if (config == null) return;
ParticleEntry entry = config.getEntry();
particleScale *= entry.getSize();
particleScale *= config.getSize();
int id = config.getId();
boolean fade = entry.getFade();
float fadeStart = entry.getFadeStart();
boolean fade = config.getFade();
float fadeStart = config.getFadeStart();
if (id == 37) {
fade = ModConfig.INSTANCE.getBlockSetting().getFade();
fadeStart = ModConfig.INSTANCE.getBlockSetting().getFadeStart();
fade = ConfigManager.INSTANCE.getBlockSetting().getFade();
fadeStart = ConfigManager.INSTANCE.getBlockSetting().getFadeStart();
}

float age = (float) particleAge / particleMaxAge;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,8 @@
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.world.World;
import org.polyfrost.overflowparticles.OverflowParticles;
import org.polyfrost.overflowparticles.config.BlockParticleEntry;
import org.polyfrost.overflowparticles.config.ModConfig;
import org.polyfrost.overflowparticles.config.ConfigManager;
import org.polyfrost.overflowparticles.config.ParticleConfig;
import org.polyfrost.overflowparticles.config.Settings;
import org.polyfrost.overflowparticles.utils.UtilKt;
Expand Down Expand Up @@ -37,9 +36,9 @@ private void cleanView(CallbackInfo ci) {
@ModifyExpressionValue(method = "updateFallState", at = @At(value = "INVOKE", target = "Lnet/minecraft/block/Block;getMaterial()Lnet/minecraft/block/material/Material;"))
private Material fall(Material original) {
if (worldObj != null && !worldObj.isRemote) return original;
ParticleConfig config = OverflowParticles.INSTANCE.getConfigs().get(37);
if (!config.getEntry().getEnabled()) return Material.air;
BlockParticleEntry entry = ModConfig.INSTANCE.getBlockSetting();
ParticleConfig config = ConfigManager.INSTANCE.getConfigs().get(37);
if (!config.getEnabled()) return Material.air;
BlockParticleEntry entry = ConfigManager.INSTANCE.getBlockSetting();
if (entry.getHideRunning()) {
if (entry.getHideMode() == 1) {
return Material.air;
Expand All @@ -53,9 +52,9 @@ private Material fall(Material original) {

@ModifyConstant(method = "onDeathUpdate", constant = @Constant(intValue = 20, ordinal = 1))
private int multiplier(int constant) {
ParticleConfig config = OverflowParticles.INSTANCE.getConfigs().get(0);
if (config == null || config.getEntry().getMultiplier() == 1) return constant;
return (int) (constant * config.getEntry().getMultiplier());
ParticleConfig config = ConfigManager.INSTANCE.getConfigs().get(0);
if (config == null || config.getMultiplier() == 1) return constant;
return (int) (constant * config.getMultiplier());
}

@Inject(method = "onDeathUpdate", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/World;spawnParticle(Lnet/minecraft/util/EnumParticleTypes;DDDDDD[I)V"))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,8 @@
import net.minecraft.entity.Entity;
import net.minecraft.util.AxisAlignedBB;
import net.minecraft.world.World;
import org.polyfrost.overflowparticles.OverflowParticles;
import org.polyfrost.overflowparticles.config.BlockParticleEntry;
import org.polyfrost.overflowparticles.config.ModConfig;
import org.polyfrost.overflowparticles.config.ConfigManager;
import org.polyfrost.overflowparticles.config.ParticleConfig;
import org.polyfrost.overflowparticles.config.Settings;
import org.spongepowered.asm.mixin.*;
Expand Down Expand Up @@ -47,9 +46,9 @@ private void enableNoClip(double x, double y, double z, CallbackInfo ci) {
@Inject(method = "createRunningParticles", at = @At("HEAD"), cancellable = true)
private void runningParticle(CallbackInfo ci) {
if (worldObj != null && !worldObj.isRemote) return;
ParticleConfig config = OverflowParticles.INSTANCE.getConfigs().get(37);
if (!config.getEntry().getEnabled()) ci.cancel();
BlockParticleEntry entry = ModConfig.INSTANCE.getBlockSetting();
ParticleConfig config = ConfigManager.INSTANCE.getConfigs().get(37);
if (!config.getEnabled()) ci.cancel();
BlockParticleEntry entry = ConfigManager.INSTANCE.getBlockSetting();
if (entry.getHideRunning()) {
if (entry.getHideMode() == 1) {
ci.cancel();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,8 @@
import net.minecraft.client.network.NetHandlerPlayClient;
import net.minecraft.network.play.server.S2APacketParticles;
import net.minecraft.util.EnumParticleTypes;
import org.polyfrost.overflowparticles.OverflowParticles;
import org.polyfrost.overflowparticles.config.BlockParticleEntry;
import org.polyfrost.overflowparticles.config.ModConfig;
import org.polyfrost.overflowparticles.config.ConfigManager;
import org.polyfrost.overflowparticles.config.ParticleConfig;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
Expand All @@ -18,9 +17,9 @@ public class NetHandlerPlayClientMixin {
@Inject(method = "handleParticles", at = @At("HEAD"), cancellable = true)
private void serverFalling(S2APacketParticles packetIn, CallbackInfo ci) {
if (packetIn.getParticleType() != EnumParticleTypes.BLOCK_DUST) return;
ParticleConfig config = OverflowParticles.INSTANCE.getConfigs().get(37);
if (!config.getEntry().getEnabled()) ci.cancel();
BlockParticleEntry entry = ModConfig.INSTANCE.getBlockSetting();
ParticleConfig config = ConfigManager.INSTANCE.getConfigs().get(37);
if (!config.getEnabled()) ci.cancel();
BlockParticleEntry entry = ConfigManager.INSTANCE.getBlockSetting();
if (entry.getHideRunning()) ci.cancel();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

import net.minecraft.world.IWorldAccess;
import net.minecraft.world.World;
import org.polyfrost.overflowparticles.OverflowParticles;
import org.polyfrost.overflowparticles.config.ParticleConfig;
import org.polyfrost.overflowparticles.config.ConfigManager;
import org.polyfrost.overflowparticles.utils.UtilKt;
import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin;
Expand All @@ -28,8 +28,8 @@ private void multiplier(int particleID, boolean ignoreRange, double xCoord, doub
UtilKt.setMultiplied(false);
return;
}
ParticleConfig config = OverflowParticles.INSTANCE.getConfigs().get(particleID);
if (config == null || config.getEntry().getMultiplier() == 1 || config.getId() == 28) return;
ParticleConfig config = ConfigManager.INSTANCE.getConfigs().get(particleID);
if (config == null || config.getMultiplier() == 1 || config.getId() == 28) return;
UtilKt.spawn(config, worldAccesses, particleID, ignoreRange, xCoord, yCoord, zCoord, xOffset, yOffset, zOffset, arguments);
ci.cancel();
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

import net.minecraft.client.renderer.WorldRenderer;
import org.polyfrost.overflowparticles.OverflowParticles;
import org.polyfrost.overflowparticles.config.ModConfig;
import org.polyfrost.overflowparticles.config.ConfigManager;
import org.polyfrost.overflowparticles.config.ParticleConfig;
import org.polyfrost.overflowparticles.utils.UtilKt;
import org.polyfrost.polyui.color.PolyColor;
Expand All @@ -20,9 +20,9 @@ public abstract class WorldRendererMixin {
@Inject(method = "color(FFFF)Lnet/minecraft/client/renderer/WorldRenderer;", at = @At("HEAD"), cancellable = true)
private void color(float red, float green, float blue, float alpha, CallbackInfoReturnable<WorldRenderer> cir) {
if (OverflowParticles.INSTANCE.getRendering()) {
ParticleConfig config = ModConfig.INSTANCE.getConfig(OverflowParticles.INSTANCE.getRenderingEntity());
ParticleConfig config = ConfigManager.INSTANCE.getConfig(OverflowParticles.INSTANCE.getRenderingEntity());
if (config != null && config.getId() != 28) {
PolyColor c = config.getEntry().getColor();
PolyColor c = config.getColor();
cir.setReturnValue(this.color(UtilKt.colorInt(c.red(), red, config), UtilKt.colorInt(c.green(), green, config), UtilKt.colorInt(c.blue(), blue, config), UtilKt.colorInt(c.alpha(), alpha, config)));
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ public class EntityPlayerMixin_PlayerAttack {

@Unique private final EntityPlayer overflowParticles$self = (EntityPlayer) (Object) this;

@Inject(method = "attackTargetEntityWithCurrentItem", at = @At(value = "INVOKE", target = "Lnet/minecraft/entity/Entity;canAttackWithItem()Z"))
@Inject(method = "attackTargetEntityWithCurrentItem", at = @At("HEAD"))
private void callEvent(Entity target, CallbackInfo ci) {
EventManager.INSTANCE.post(new AttackEntityEvent(overflowParticles$self, target));
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
package org.polyfrost.overflowparticles.mixin.particles;

import net.minecraft.client.particle.Barrier;
import org.polyfrost.overflowparticles.OverflowParticles;
import org.polyfrost.overflowparticles.config.ConfigManager;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.*;

@Mixin(Barrier.class)
public class BarrierMixin {
@ModifyConstant(method = "renderParticle", constant = @Constant(floatValue = 0.5f))
private float scale(float constant) {
return constant * OverflowParticles.INSTANCE.getConfigs().get(35).getEntry().getSize();
return constant * ConfigManager.INSTANCE.getConfigs().get(35).getSize();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,8 @@

import net.minecraft.entity.projectile.EntityArrow;
import net.minecraft.util.EnumParticleTypes;
import org.polyfrost.overflowparticles.OverflowParticles;
import org.polyfrost.overflowparticles.config.ParticleConfig;
import org.polyfrost.overflowparticles.config.ConfigManager;
import org.polyfrost.overflowparticles.utils.UtilKt;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
Expand All @@ -17,16 +17,16 @@ public class EntityArrowMixin {

@ModifyConstant(method = "onUpdate", constant = @Constant(intValue = 4, ordinal = 0))
private int multiplier(int constant) {
ParticleConfig config = OverflowParticles.INSTANCE.getConfigs().get(EnumParticleTypes.CRIT.getParticleID());
if (config == null || config.getEntry().getMultiplier() == 1) return constant;
return (int) (constant * config.getEntry().getMultiplier());
ParticleConfig config = ConfigManager.INSTANCE.getConfigs().get(EnumParticleTypes.CRIT.getParticleID());
if (config == null || config.getMultiplier() == 1) return constant;
return (int) (constant * config.getMultiplier());
}

@ModifyConstant(method = "onUpdate", constant = @Constant(doubleValue = 4.0D))
private double multiplier1(double constant) {
ParticleConfig config = OverflowParticles.INSTANCE.getConfigs().get(EnumParticleTypes.CRIT.getParticleID());
if (config == null || config.getEntry().getMultiplier() == 1) return constant;
return (int) (constant * config.getEntry().getMultiplier());
ParticleConfig config = ConfigManager.INSTANCE.getConfigs().get(EnumParticleTypes.CRIT.getParticleID());
if (config == null || config.getMultiplier() == 1) return constant;
return (int) (constant * config.getMultiplier());
}

@Inject(method = "onUpdate", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/World;spawnParticle(Lnet/minecraft/util/EnumParticleTypes;DDDDDD[I)V", ordinal = 0))
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@
public class EntityBreakingFXMixin {
@ModifyConstant(method = "renderParticle", constant = @Constant(floatValue = 0.1f, ordinal = 0))
private float scale(float constant) {
ParticleConfig config = ModConfig.INSTANCE.getConfig((EntityFX) (Object) this);
return constant * (config == null ? 1 : config.getEntry().getSize());
ParticleConfig config = ConfigManager.INSTANCE.getConfig((EntityFX) (Object) this);
return constant * (config == null ? 1 : config.getSize());
}
}
Loading

0 comments on commit 7163137

Please sign in to comment.