diff options
| author | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2024-10-26 20:51:19 -0400 |
|---|---|---|
| committer | Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> | 2024-10-26 20:51:19 -0400 |
| commit | fcbbd0257880cb39af48957ef2ce978f7f682584 (patch) | |
| tree | 907a8790a0f5f994c52e5fbd6d91d9fc6cc948ca /src/main/java | |
| parent | ed27791fdcc7727f4e7b449d695afe7a1c853ce9 (diff) | |
| download | Skyblocker-fcbbd0257880cb39af48957ef2ce978f7f682584.tar.gz Skyblocker-fcbbd0257880cb39af48957ef2ce978f7f682584.tar.bz2 Skyblocker-fcbbd0257880cb39af48957ef2ce978f7f682584.zip | |
Update noop recipe screen handler sync id
Diffstat (limited to 'src/main/java')
4 files changed, 10 insertions, 8 deletions
diff --git a/src/main/java/de/hysky/skyblocker/mixins/InventoryScreenMixin.java b/src/main/java/de/hysky/skyblocker/mixins/InventoryScreenMixin.java index fd026582..39da111a 100644 --- a/src/main/java/de/hysky/skyblocker/mixins/InventoryScreenMixin.java +++ b/src/main/java/de/hysky/skyblocker/mixins/InventoryScreenMixin.java @@ -1,5 +1,7 @@ package de.hysky.skyblocker.mixins; +import com.llamalad7.mixinextras.sugar.Local; +import net.minecraft.entity.player.PlayerEntity; import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.injection.At; import org.spongepowered.asm.mixin.injection.ModifyArg; @@ -19,8 +21,8 @@ import net.minecraft.client.gui.screen.recipebook.RecipeBookWidget; public abstract class InventoryScreenMixin { @ModifyArg(method = "<init>", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/screen/ingame/RecipeBookScreen;<init>(Lnet/minecraft/screen/AbstractRecipeScreenHandler;Lnet/minecraft/client/gui/screen/recipebook/RecipeBookWidget;Lnet/minecraft/entity/player/PlayerInventory;Lnet/minecraft/text/Text;)V")) - private static RecipeBookWidget<?> skyblocker$replaceRecipeBook(RecipeBookWidget<?> original) { - return SkyblockerConfigManager.get().general.itemList.enableItemList && Utils.isOnSkyblock() ? new SkyblockRecipeBookWidget() : original; + private static RecipeBookWidget<?> skyblocker$replaceRecipeBook(RecipeBookWidget<?> original, @Local(argsOnly = true) PlayerEntity player) { + return SkyblockerConfigManager.get().general.itemList.enableItemList && Utils.isOnSkyblock() ? new SkyblockRecipeBookWidget(player.playerScreenHandler) : original; } @ModifyArg(method = "getRecipeBookButtonPos", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/gui/ScreenPos;<init>(II)V"), index = 0) diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/SkyblockCraftingTableScreen.java b/src/main/java/de/hysky/skyblocker/skyblock/item/SkyblockCraftingTableScreen.java index 53c82d2c..b8e42fcc 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/SkyblockCraftingTableScreen.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/SkyblockCraftingTableScreen.java @@ -28,7 +28,7 @@ public class SkyblockCraftingTableScreen extends HandledScreen<SkyblockCraftingT ); protected static final Identifier QUICK_CRAFT = Identifier.of(SkyblockerMod.NAMESPACE, "quick_craft/quick_craft_overlay"); - private final SkyblockRecipeBookWidget recipeBook = new SkyblockRecipeBookWidget(); + private final SkyblockRecipeBookWidget recipeBook = new SkyblockRecipeBookWidget(handler); private boolean narrow; private TexturedButtonWidget moreCraftsButton; diff --git a/src/main/java/de/hysky/skyblocker/skyblock/itemlist/recipebook/NoopRecipeScreenHandler.java b/src/main/java/de/hysky/skyblocker/skyblock/itemlist/recipebook/NoopRecipeScreenHandler.java index 80179017..e0b1887c 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/itemlist/recipebook/NoopRecipeScreenHandler.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/itemlist/recipebook/NoopRecipeScreenHandler.java @@ -14,9 +14,8 @@ import net.minecraft.server.world.ServerWorld; * Implementation of an {@link AbstractRecipeScreenHandler} that does not do anything. */ public class NoopRecipeScreenHandler extends AbstractRecipeScreenHandler { - - protected NoopRecipeScreenHandler() { - super(ScreenHandlerType.GENERIC_9X6, -1); + protected NoopRecipeScreenHandler(int syncId) { + super(ScreenHandlerType.GENERIC_9X6, syncId); } @Override diff --git a/src/main/java/de/hysky/skyblocker/skyblock/itemlist/recipebook/SkyblockRecipeBookWidget.java b/src/main/java/de/hysky/skyblocker/skyblock/itemlist/recipebook/SkyblockRecipeBookWidget.java index 4e920a1d..f8c6872e 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/itemlist/recipebook/SkyblockRecipeBookWidget.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/itemlist/recipebook/SkyblockRecipeBookWidget.java @@ -3,6 +3,7 @@ package de.hysky.skyblocker.skyblock.itemlist.recipebook; import java.util.List; import java.util.Locale; +import net.minecraft.screen.ScreenHandler; import org.jetbrains.annotations.Nullable; import com.google.common.collect.Lists; @@ -45,8 +46,8 @@ public class SkyblockRecipeBookWidget extends RecipeBookWidget<NoopRecipeScreenH private final List<Pair<RecipeTab, SkyblockRecipeTabButton>> tabButtons = Lists.newArrayList(); private Pair<RecipeTab, SkyblockRecipeTabButton> currentTab; - public SkyblockRecipeBookWidget() { - super(new NoopRecipeScreenHandler(), List.of()); + public SkyblockRecipeBookWidget(ScreenHandler screenHandler) { + super(new NoopRecipeScreenHandler(screenHandler.syncId), List.of()); } @Override |
