Skip to content

Commit 68bc36e

Browse files
authored
Fix crafting cache being checked for every recipe (#137)
1 parent fa74c46 commit 68bc36e

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

src/main/java/org/embeddedt/archaicfix/mixins/common/core/MixinCraftingManager.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import org.spongepowered.asm.mixin.Mixin;
2020
import org.spongepowered.asm.mixin.injection.At;
2121
import org.spongepowered.asm.mixin.injection.Inject;
22+
import org.spongepowered.asm.mixin.injection.Slice;
2223
import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable;
2324

2425
import java.util.HashSet;
@@ -35,7 +36,10 @@ public class MixinCraftingManager implements IFasterCraftingManager {
3536

3637
private volatile LastMatchedInfo lastMatchedInfo = null;
3738

38-
@Inject(method = "findMatchingRecipe", at = @At(value = "INVOKE", target = "Ljava/util/List;size()I"), cancellable = true)
39+
@Inject(method = "findMatchingRecipe", at = @At(value = "CONSTANT", args = "intValue=0"), slice = @Slice(
40+
from = @At(value = "INVOKE", target = "Lnet/minecraft/item/ItemStack;<init>(Lnet/minecraft/item/Item;II)V"),
41+
to = @At(value = "INVOKE", target = "Ljava/util/List;size()I")
42+
), cancellable = true)
3943
private void fasterRecipeSearch(InventoryCrafting inventory, World world, CallbackInfoReturnable<ItemStack> cir) {
4044
if(!ArchaicConfig.cacheRecipes)
4145
return;

0 commit comments

Comments
 (0)