Skip to content

Commit

Permalink
Add MixinStateList (disabled by default) + removed MixinStateBaseFix
Browse files Browse the repository at this point in the history
to help fixing duplicated stat ids crash
  • Loading branch information
quentin452 committed May 10, 2023
1 parent 9cdf63f commit d87f522
Show file tree
Hide file tree
Showing 4 changed files with 28 additions and 45 deletions.
4 changes: 2 additions & 2 deletions src/main/java/fr/iamacat/multithreading/asm/Mixin.java
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,8 @@ public enum Mixin implements IMixin {
"core.MixinChunkProviderServer"),
common_core_MixinGodZillaFix(Side.COMMON, m -> MultithreadingandtweaksMultithreadingConfig.enableMixinGodZillaFix,
"core.MixinGodZillaFix"),
common_core_MixinStatBaseFix(Side.COMMON, m -> MultithreadingandtweaksMultithreadingConfig.enableMixinStatBaseFix,
"core.MixinStatBaseFix"),
common_core_MixinStatList(Side.COMMON, m -> MultithreadingandtweaksMultithreadingConfig.enableMixinStatList,
"core.MixinStatList"),
// CLIENT MIXINS

client_core_MixinParticle(Side.CLIENT, m -> MultithreadingandtweaksMultithreadingConfig.enableMixinParticle,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -111,10 +111,10 @@ public class MultithreadingandtweaksMultithreadingConfig {
@Config.DefaultBoolean(false)
@Config.RequiresWorldRestart
public static boolean enableMixinGodZillaFix;
@Config.Comment("Fix Duplicated stats ids crash")
@Config.Comment("Print stats ids to help to fix duplicated stats ids crash")
@Config.DefaultBoolean(true)
@Config.RequiresWorldRestart
public static boolean enableMixinStatBaseFix;
public static boolean enableMixinStatList;
@Config.Comment("Choose the number of processor/CPU of your computer to fix potential issues.")
@Config.DefaultInt(6)
@Config.RangeInt(min = 1, max = 64)
Expand Down

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
package fr.iamacat.multithreading.mixins.common.core;

import fr.iamacat.multithreading.config.MultithreadingandtweaksMultithreadingConfig;
import net.minecraft.entity.EntityList;
import net.minecraft.stats.StatBase;

import net.minecraft.stats.StatList;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;

@Mixin(StatList.class)
public class MixinStatList {
@Inject(method = "func_151182_a", at = @At("TAIL"), remap = false)
private static void onRegisterStat(EntityList.EntityEggInfo eggInfo, CallbackInfoReturnable<StatBase> info) {
if (MultithreadingandtweaksMultithreadingConfig.enableMixinStatList) {
StatBase stat = info.getReturnValue();
String statId = stat.statId;
System.out.println("[Registered stat ID] " + statId);
}
}
}

0 comments on commit d87f522

Please sign in to comment.