aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/xmrvizzy/skyblocker/mixin/GenericContainerScreenHandlerMixin.java
diff options
context:
space:
mode:
authorExternalTime <84183548+ExternalTime@users.noreply.github.com>2021-10-07 19:57:25 +0200
committerExternalTime <84183548+ExternalTime@users.noreply.github.com>2021-10-10 17:08:06 +0200
commit9572664f807e2f545a2d4b6d9f2b4dfa0a9791c3 (patch)
treee9edfe6c8b847c559ccaf96dd419e251d83a496d /src/main/java/me/xmrvizzy/skyblocker/mixin/GenericContainerScreenHandlerMixin.java
parent50de2604202bdb8ac3a69d0e5625d60ede57512b (diff)
downloadSkyblocker-9572664f807e2f545a2d4b6d9f2b4dfa0a9791c3.tar.gz
Skyblocker-9572664f807e2f545a2d4b6d9f2b4dfa0a9791c3.tar.bz2
Skyblocker-9572664f807e2f545a2d4b6d9f2b4dfa0a9791c3.zip
Added an interface for solvers for minigames inside chests
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/mixin/GenericContainerScreenHandlerMixin.java')
-rw-r--r--src/main/java/me/xmrvizzy/skyblocker/mixin/GenericContainerScreenHandlerMixin.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/mixin/GenericContainerScreenHandlerMixin.java b/src/main/java/me/xmrvizzy/skyblocker/mixin/GenericContainerScreenHandlerMixin.java
new file mode 100644
index 00000000..be8d454d
--- /dev/null
+++ b/src/main/java/me/xmrvizzy/skyblocker/mixin/GenericContainerScreenHandlerMixin.java
@@ -0,0 +1,30 @@
+package me.xmrvizzy.skyblocker.mixin;
+
+import me.xmrvizzy.skyblocker.SkyblockerMod;
+import net.minecraft.item.ItemStack;
+import net.minecraft.screen.GenericContainerScreenHandler;
+import net.minecraft.screen.ScreenHandler;
+import net.minecraft.screen.ScreenHandlerType;
+import org.jetbrains.annotations.Nullable;
+import org.spongepowered.asm.mixin.Mixin;
+
+import java.util.List;
+
+@Mixin(GenericContainerScreenHandler.class)
+public abstract class GenericContainerScreenHandlerMixin extends ScreenHandler {
+ protected GenericContainerScreenHandlerMixin(@Nullable ScreenHandlerType<?> type, int syncId) {
+ super(type, syncId);
+ }
+
+ @Override
+ public void setStackInSlot(int slot, int revision, ItemStack stack) {
+ SkyblockerMod.getInstance().containerSolverManager.markDirty();
+ super.setStackInSlot(slot, revision, stack);
+ }
+
+ @Override
+ public void updateSlotStacks(int revision, List<ItemStack> stacks, ItemStack cursorStack) {
+ SkyblockerMod.getInstance().containerSolverManager.markDirty();
+ super.updateSlotStacks(revision, stacks, cursorStack);
+ }
+}