Skip to content

Commit fac8655

Browse files
committed
fix bug
1 parent 94ec5f7 commit fac8655

8 files changed

Lines changed: 32 additions & 17 deletions

File tree

src/main/java/com/circulation/random_complement/client/ClientProxy.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@
77
import com.circulation.random_complement.client.handler.RCJEIInputHandler;
88
import com.circulation.random_complement.common.CommonProxy;
99
import com.circulation.random_complement.common.integration.ae2.AEIntegrations;
10+
import com.circulation.random_complement.mixin.jei.AccessorBookmarkItem;
1011
import com.circulation.random_complement.mixin.jei.AccessorGhostIngredientDragManager;
1112
import com.circulation.random_complement.mixin.jei.AccessorInputHandler;
1213
import it.unimi.dsi.fastutil.objects.ReferenceArrayList;
1314
import it.unimi.dsi.fastutil.objects.ReferenceList;
1415
import lombok.val;
1516
import mezz.jei.Internal;
16-
import mezz.jei.bookmarks.BookmarkItem;
1717
import mezz.jei.gui.ghost.GhostIngredientDrag;
1818
import net.minecraft.client.Minecraft;
1919
import net.minecraft.item.ItemStack;
@@ -63,7 +63,7 @@ public static ItemStack getJEIMouseItem() {
6363
if (ii.getIngredient() instanceof ItemStack stack) {
6464
return stack;
6565
}
66-
if (ii.getIngredient() instanceof BookmarkItem<?> book && book.ingredient instanceof ItemStack stack) {
66+
if (ii.getIngredient() instanceof AccessorBookmarkItem<?> book && book.i_getIngredient() instanceof ItemStack stack) {
6767
return stack;
6868
}
6969
}

src/main/java/com/circulation/random_complement/common/util/AEBookmarkGroup.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import appeng.api.storage.data.IAEItemStack;
44
import appeng.api.storage.data.IItemList;
55
import com.circulation.random_complement.common.integration.ae2.AEIntegrations;
6+
import com.circulation.random_complement.mixin.jei.AccessorBookmarkItem;
67
import com.glodblock.github.common.item.fake.FakeItemRegister;
78
import mezz.jei.bookmarks.BookmarkGroup;
89
import mezz.jei.bookmarks.BookmarkItem;
@@ -28,9 +29,9 @@ public AEBookmarkGroup(int id, IItemList<IAEItemStack> missing) {
2829
mark = item;
2930
}
3031

31-
var Bookmark = new BookmarkItem<>(mark);
32-
Bookmark.amount = iaeItemStack.getStackSize();
33-
this.addItemInternal(Bookmark);
32+
AccessorBookmarkItem<?> Bookmark = (AccessorBookmarkItem<?>) new BookmarkItem<>(mark);
33+
Bookmark.i_setAmount(iaeItemStack.getStackSize());
34+
this.addItemInternal((BookmarkItem<?>) Bookmark);
3435
}
3536
}
3637

src/main/java/com/circulation/random_complement/mixin/ae2/jei/MixinAEGuiHandler.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@
33
import appeng.client.gui.AEBaseGui;
44
import appeng.client.gui.AEGuiHandler;
55
import com.circulation.random_complement.common.interfaces.RCGuiMEMonitorableJei;
6+
import com.circulation.random_complement.mixin.jei.AccessorBookmarkItem;
67
import mezz.jei.api.gui.IGhostIngredientHandler;
7-
import mezz.jei.bookmarks.BookmarkItem;
88
import net.minecraft.client.gui.GuiScreen;
99
import org.lwjgl.input.Mouse;
1010
import org.spongepowered.asm.mixin.Mixin;
@@ -24,8 +24,8 @@ public abstract class MixinAEGuiHandler {
2424

2525
@Inject(method = "getTargets(Lappeng/client/gui/AEBaseGui;Ljava/lang/Object;Z)Ljava/util/List;", at = @At("HEAD"), cancellable = true)
2626
public void getTargets(AEBaseGui gui, Object ingredient, boolean doStart, CallbackInfoReturnable<List<IGhostIngredientHandler.Target<?>>> cir) {
27-
if (ingredient instanceof BookmarkItem<?> i) {
28-
cir.setReturnValue(this.getTargets(gui, i.ingredient, doStart));
27+
if (ingredient instanceof AccessorBookmarkItem<?> i) {
28+
cir.setReturnValue(this.getTargets(gui, i.i_getIngredient(), doStart));
2929
}
3030
}
3131

src/main/java/com/circulation/random_complement/mixin/ae2/jei/MixinInputHandler.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,10 @@
1313
import com.circulation.random_complement.common.network.KeyBindingHandler;
1414
import com.circulation.random_complement.common.util.Functions;
1515
import com.circulation.random_complement.common.util.MEHandler;
16+
import com.circulation.random_complement.mixin.jei.AccessorBookmarkItem;
1617
import it.unimi.dsi.fastutil.objects.ObjectLists;
1718
import lombok.Getter;
1819
import lombok.val;
19-
import mezz.jei.bookmarks.BookmarkItem;
2020
import mezz.jei.bookmarks.BookmarkList;
2121
import mezz.jei.gui.GuiScreenHelper;
2222
import mezz.jei.gui.ghost.GhostIngredientDragManager;
@@ -119,8 +119,8 @@ public void onInit(JeiRuntime runtime, IngredientRegistry ingredientRegistry, In
119119
var ing = getFocusUnderMouseForClick(MouseHelper.getX(), MouseHelper.getY());
120120
if (ing == null) return false;
121121
final ItemStack item;
122-
if (ing.getValue() instanceof BookmarkItem<?> book) {
123-
item = MEHandler.packItem(book.ingredient);
122+
if (ing.getValue() instanceof AccessorBookmarkItem<?> book) {
123+
item = MEHandler.packItem(book.i_getIngredient());
124124
} else {
125125
item = MEHandler.packItem(ing.getValue());
126126
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
package com.circulation.random_complement.mixin.jei;
2+
3+
import mezz.jei.bookmarks.BookmarkItem;
4+
import org.spongepowered.asm.mixin.Mixin;
5+
import org.spongepowered.asm.mixin.gen.Accessor;
6+
7+
@Mixin(value = BookmarkItem.class, remap = false)
8+
public interface AccessorBookmarkItem<I> {
9+
@Accessor("ingredient")
10+
I i_getIngredient();
11+
12+
@Accessor("amount")
13+
void i_setAmount(long a);
14+
}

src/main/java/com/circulation/random_complement/mixin/jei/MixinGhostIngredientDrag.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
import com.llamalad7.mixinextras.injector.wrapoperation.Operation;
44
import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation;
55
import mezz.jei.api.gui.IGhostIngredientHandler;
6-
import mezz.jei.bookmarks.BookmarkItem;
76
import mezz.jei.gui.ghost.GhostIngredientDrag;
87
import org.spongepowered.asm.mixin.Final;
98
import org.spongepowered.asm.mixin.Mixin;
@@ -19,8 +18,8 @@ public class MixinGhostIngredientDrag<T> {
1918

2019
@WrapOperation(method = "onClick", at = @At(value = "INVOKE", target = "Lmezz/jei/api/gui/IGhostIngredientHandler$Target;accept(Ljava/lang/Object;)V"))
2120
public void onClick(IGhostIngredientHandler.Target<?> instance, T i, Operation<Void> original) {
22-
if (this.ingredient instanceof BookmarkItem<?> b) {
23-
original.call(instance, b.ingredient);
21+
if (this.ingredient instanceof AccessorBookmarkItem<?> b) {
22+
original.call(instance, b.i_getIngredient());
2423
return;
2524
}
2625
original.call(instance, this.ingredient);

src/main/java/com/circulation/random_complement/mixin/packagedauto/MixinEncoderGhostIngredientHandler.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.circulation.random_complement.mixin.packagedauto;
22

3-
import mezz.jei.bookmarks.BookmarkItem;
3+
import com.circulation.random_complement.mixin.jei.AccessorBookmarkItem;
44
import net.minecraft.item.ItemStack;
55
import org.spongepowered.asm.mixin.Mixin;
66
import org.spongepowered.asm.mixin.Shadow;
@@ -19,8 +19,8 @@ private static ItemStack wrapStack(Object ingredient) {
1919

2020
@Inject(method = "wrapStack", at = @At("HEAD"), cancellable = true)
2121
private static void wrapStackMixin(Object ingredient, CallbackInfoReturnable<ItemStack> cir) {
22-
if (ingredient instanceof BookmarkItem<?> b) {
23-
cir.setReturnValue(wrapStack(b.ingredient));
22+
if (ingredient instanceof AccessorBookmarkItem<?> b) {
23+
cir.setReturnValue(wrapStack(b.i_getIngredient()));
2424
}
2525
}
2626
}

src/main/resources/mixins.random_complement.jei.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
"MixinInputHandler"
1111
],
1212
"mixins": [
13+
"AccessorBookmarkItem",
1314
"AccessorGhostIngredientDragManager",
1415
"AccessorIngredientListBatchRenderer",
1516
"AccessorInputHandler",

0 commit comments

Comments
 (0)