gtl:新版翻倍支持

This commit is contained in:
C-H716 2025-11-04 21:04:09 +08:00
parent 9f703d89dc
commit 342a9510d7
2 changed files with 40 additions and 0 deletions

View File

@ -0,0 +1,39 @@
package com.extendedae_plus.mixin.ae2.autopattern;
import appeng.api.crafting.IPatternDetails;
import appeng.api.networking.crafting.ICraftingService;
import appeng.crafting.CraftingCalculation;
import appeng.crafting.CraftingTreeNode;
import appeng.crafting.CraftingTreeProcess;
import appeng.crafting.inv.CraftingSimulationState;
import com.extendedae_plus.api.smartDoubling.ICraftingSimulationStateExt;
import com.extendedae_plus.api.smartDoubling.ICraftingTreeProcessExt;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Unique;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@SuppressWarnings({"AddedMixinMembersNamePattern"})
@Mixin(value = CraftingTreeProcess.class, remap = false, priority = 2000)
public class CraftingTreeProcessMixin implements ICraftingTreeProcessExt {
@Unique private ICraftingService craftingService;
@Inject(method = "<init>",at = @At("RETURN"))
private void init(ICraftingService cc, CraftingCalculation job, IPatternDetails details, CraftingTreeNode craftingTreeNode, CallbackInfo ci) {
this.craftingService = cc;
}
@Inject(
method = "ultraFastRequest",
at = @At("HEAD")
)
private void bindSimulationState(CraftingSimulationState inv, long times, CallbackInfo ci) {
((ICraftingSimulationStateExt) inv).setSourceProcess((CraftingTreeProcess) (Object) this);
}
@Override
public ICraftingService getCraftingService() {
return this.craftingService;
}
}

View File

@ -57,6 +57,7 @@
"ae2.autopattern.CraftingServiceGetProvidersMixin",
"ae2.autopattern.CraftingSimulationStateAccessor",
"ae2.autopattern.CraftingSimulationStateMixin",
"ae2.autopattern.CraftingTreeProcessMixin",
"ae2.autopattern.PatternProviderLogicContainsRedirectMixin",
"ae2.autopattern.gtceu.GTLCoreMEPatternBufferPartMachineMixin",
"ae2.autopattern.gtceu.MEPatternBufferPartMachineMixin",