From 28dfdaac78e27057a5fe8981ffdc7349dbc98138 Mon Sep 17 00:00:00 2001 From: C-H716 <1536152356@qq.com> Date: Thu, 25 Sep 2025 23:33:59 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=AF=B7=E6=B1=82=E9=87=8F=E8=8E=B7?= =?UTF-8?q?=E5=8F=96=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mixin/ae2/autopattern/CraftingTreeNodeMixin.java | 11 ++--------- .../ae2/autopattern/CraftingTreeProcessMixin.java | 1 + 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/src/main/java/com/extendedae_plus/mixin/ae2/autopattern/CraftingTreeNodeMixin.java b/src/main/java/com/extendedae_plus/mixin/ae2/autopattern/CraftingTreeNodeMixin.java index b2651d5..aa4f062 100644 --- a/src/main/java/com/extendedae_plus/mixin/ae2/autopattern/CraftingTreeNodeMixin.java +++ b/src/main/java/com/extendedae_plus/mixin/ae2/autopattern/CraftingTreeNodeMixin.java @@ -10,7 +10,7 @@ import org.spongepowered.asm.mixin.injection.Inject; import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; import org.spongepowered.asm.mixin.injection.callback.LocalCapture; -@Mixin(value = CraftingTreeNode.class,remap = false) +@Mixin(value = CraftingTreeNode.class, remap = false) public class CraftingTreeNodeMixin { @Inject(method = "request(Lappeng/crafting/inv/CraftingSimulationState;JLappeng/api/stacks/KeyCounter;)V", at = @At(value = "INVOKE", @@ -18,13 +18,6 @@ public class CraftingTreeNodeMixin { locals = LocalCapture.CAPTURE_FAILHARD) private void captureRequestedAmount(CraftingSimulationState inv, long requestedAmount, KeyCounter containerItems, CallbackInfo ci) { // push the requestedAmount before addContainerItems is called - RequestedAmountHolder.push(requestedAmount); - } - - @Inject(method = "request(Lappeng/crafting/inv/CraftingSimulationState;JLappeng/api/stacks/KeyCounter;)V", - at = @At(value = "RETURN")) - private void clearRequestedAmountOnReturn(CraftingSimulationState inv, long requestedAmount, KeyCounter containerItems, CallbackInfo ci) { - // pop the pushed requested amount on return - RequestedAmountHolder.pop(); + RequestedAmountHolder.push(requestedAmount); } } diff --git a/src/main/java/com/extendedae_plus/mixin/ae2/autopattern/CraftingTreeProcessMixin.java b/src/main/java/com/extendedae_plus/mixin/ae2/autopattern/CraftingTreeProcessMixin.java index 8f96a90..b8359ab 100644 --- a/src/main/java/com/extendedae_plus/mixin/ae2/autopattern/CraftingTreeProcessMixin.java +++ b/src/main/java/com/extendedae_plus/mixin/ae2/autopattern/CraftingTreeProcessMixin.java @@ -56,6 +56,7 @@ public abstract class CraftingTreeProcessMixin { CraftingTreeNodeAccessor parentAcc = (CraftingTreeNodeAccessor) craftingTreeNode; AEKey parentTarget = parentAcc.eap$getWhat(); long requested = RequestedAmountHolder.get(); + RequestedAmountHolder.pop(); // 根据配置决定是否在 provider 间轮询分配请求量(默认开启) long perProvider = 1L;