aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/shedaniel/rei/plugin
diff options
context:
space:
mode:
authorshedaniel <daniel@shedaniel.me>2020-04-17 15:53:35 +0800
committershedaniel <daniel@shedaniel.me>2020-04-17 15:53:55 +0800
commit8fd2f6ee7494b3623431319e4cc8056c4d6096d3 (patch)
treecfcaf77fc1d69efe324881c1b12fc662f59a3871 /src/main/java/me/shedaniel/rei/plugin
parent4cf2e712adbdc6f75be71e0d63ecced8042cee26 (diff)
downloadRoughlyEnoughItems-8fd2f6ee7494b3623431319e4cc8056c4d6096d3.tar.gz
RoughlyEnoughItems-8fd2f6ee7494b3623431319e4cc8056c4d6096d3.tar.bz2
RoughlyEnoughItems-8fd2f6ee7494b3623431319e4cc8056c4d6096d3.zip
No one have saw this coming
Signed-off-by: shedaniel <daniel@shedaniel.me>
Diffstat (limited to 'src/main/java/me/shedaniel/rei/plugin')
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java9
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java11
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java8
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultCategoryHandler.java10
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultRecipeBookHandler.java5
5 files changed, 19 insertions, 24 deletions
diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java b/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java
index 065b8807b..bceaf5b23 100644
--- a/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java
+++ b/src/main/java/me/shedaniel/rei/plugin/DefaultPlugin.java
@@ -31,15 +31,12 @@ import me.shedaniel.math.Rectangle;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.api.*;
import me.shedaniel.rei.api.plugins.REIPluginV0;
-import me.shedaniel.rei.api.subsets.SubsetsRegistry;
import me.shedaniel.rei.api.widgets.Panel;
import me.shedaniel.rei.api.widgets.Tooltip;
import me.shedaniel.rei.gui.RecipeViewingScreen;
import me.shedaniel.rei.gui.VillagerRecipeViewingScreen;
import me.shedaniel.rei.impl.ClientHelperImpl;
import me.shedaniel.rei.impl.RenderingEntry;
-import me.shedaniel.rei.impl.ScreenHelper;
-import me.shedaniel.rei.listeners.ContainerScreenHooks;
import me.shedaniel.rei.plugin.beacon.DefaultBeaconBaseCategory;
import me.shedaniel.rei.plugin.beacon.DefaultBeaconBaseDisplay;
import me.shedaniel.rei.plugin.blasting.DefaultBlastingDisplay;
@@ -305,13 +302,13 @@ public class DefaultPlugin implements REIPluginV0 {
@Override
public Rectangle getLeftBounds(HandledScreen<?> screen) {
- return new Rectangle(2, 0, ((ContainerScreenHooks) ScreenHelper.getLastHandledScreen()).rei_getContainerLeft() - 4, MinecraftClient.getInstance().getWindow().getScaledHeight());
+ return new Rectangle(2, 0, screen.x - 4, screen.height);
}
@Override
public Rectangle getRightBounds(HandledScreen<?> screen) {
- int startX = ((ContainerScreenHooks) ScreenHelper.getLastHandledScreen()).rei_getContainerLeft() + ((ContainerScreenHooks) ScreenHelper.getLastHandledScreen()).rei_getContainerWidth() + 2;
- return new Rectangle(startX, 0, MinecraftClient.getInstance().getWindow().getScaledWidth() - startX - 2, MinecraftClient.getInstance().getWindow().getScaledHeight());
+ int startX = screen.x + screen.backgroundWidth + 2;
+ return new Rectangle(startX, 0, screen.width - startX - 2, screen.height);
}
@Override
diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java b/src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java
index 931afa2b0..40b1d7b84 100644
--- a/src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java
+++ b/src/main/java/me/shedaniel/rei/plugin/DefaultPotionEffectExclusionZones.java
@@ -26,10 +26,9 @@ package me.shedaniel.rei.plugin;
import com.google.common.collect.Ordering;
import me.shedaniel.math.Rectangle;
import me.shedaniel.rei.impl.ScreenHelper;
-import me.shedaniel.rei.listeners.AbstractInventoryScreenHooks;
-import me.shedaniel.rei.listeners.ContainerScreenHooks;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.gui.screen.ingame.AbstractInventoryScreen;
+import net.minecraft.client.gui.screen.ingame.HandledScreen;
import net.minecraft.entity.effect.StatusEffectInstance;
import java.util.ArrayList;
@@ -41,15 +40,15 @@ import java.util.function.Supplier;
public class DefaultPotionEffectExclusionZones implements Supplier<List<Rectangle>> {
@Override
public List<Rectangle> get() {
- if (!(ScreenHelper.getLastHandledScreen() instanceof AbstractInventoryScreen) || !((AbstractInventoryScreenHooks) ScreenHelper.getLastHandledScreen()).rei_doesOffsetGuiForEffects())
+ if (!(ScreenHelper.getLastHandledScreen() instanceof AbstractInventoryScreen) || !((AbstractInventoryScreen) ScreenHelper.getLastHandledScreen()).drawStatusEffects)
return Collections.emptyList();
Collection<StatusEffectInstance> activePotionEffects = MinecraftClient.getInstance().player.getStatusEffects();
if (activePotionEffects.isEmpty())
return Collections.emptyList();
- ContainerScreenHooks hooks = ((ContainerScreenHooks) ScreenHelper.getLastHandledScreen());
+ HandledScreen<?> handledScreen = ScreenHelper.getLastHandledScreen();
List<Rectangle> list = new ArrayList<>();
- int x = hooks.rei_getContainerLeft() - 124;
- int y = hooks.rei_getContainerTop();
+ int x = handledScreen.x - 124;
+ int y = handledScreen.y;
int height = 33;
if (activePotionEffects.size() > 5)
height = 132 / (activePotionEffects.size() - 1);
diff --git a/src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java b/src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java
index 21966fa32..408a26c69 100644
--- a/src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java
+++ b/src/main/java/me/shedaniel/rei/plugin/DefaultRecipeBookExclusionZones.java
@@ -26,8 +26,8 @@ package me.shedaniel.rei.plugin;
import com.google.common.collect.Lists;
import me.shedaniel.math.Rectangle;
import me.shedaniel.rei.impl.ScreenHelper;
-import me.shedaniel.rei.listeners.ContainerScreenHooks;
import net.minecraft.client.MinecraftClient;
+import net.minecraft.client.gui.screen.ingame.HandledScreen;
import net.minecraft.client.gui.screen.recipebook.RecipeBookProvider;
import net.minecraft.client.recipebook.ClientRecipeBook;
import net.minecraft.screen.AbstractRecipeScreenHandler;
@@ -42,11 +42,11 @@ public class DefaultRecipeBookExclusionZones implements Supplier<List<Rectangle>
public List<Rectangle> get() {
if (!MinecraftClient.getInstance().player.getRecipeBook().isGuiOpen() || !(MinecraftClient.getInstance().currentScreen instanceof RecipeBookProvider) || !(ScreenHelper.getLastHandledScreen().getScreenHandler() instanceof AbstractRecipeScreenHandler))
return Collections.emptyList();
- ContainerScreenHooks screenHooks = ((ContainerScreenHooks) ScreenHelper.getLastHandledScreen());
- List<Rectangle> l = Lists.newArrayList(new Rectangle(screenHooks.rei_getContainerLeft() - 4 - 145, screenHooks.rei_getContainerTop(), 4 + 145 + 30, screenHooks.rei_getContainerHeight()));
+ HandledScreen<?> handledScreen = ScreenHelper.getLastHandledScreen();
+ List<Rectangle> l = Lists.newArrayList(new Rectangle(handledScreen.x - 4 - 145, handledScreen.y, 4 + 145 + 30, handledScreen.backgroundHeight));
int size = ClientRecipeBook.getGroups((AbstractRecipeScreenHandler<?>) ScreenHelper.getLastHandledScreen().getScreenHandler()).size();
if (size > 0)
- l.add(new Rectangle(screenHooks.rei_getContainerLeft() - 4 - 145 - 30, screenHooks.rei_getContainerTop(), 30, size * 27));
+ l.add(new Rectangle(handledScreen.x - 4 - 145 - 30, handledScreen.y, 30, size * 27));
return l;
}
diff --git a/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultCategoryHandler.java b/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultCategoryHandler.java
index 3ad14f1ef..6827ed92b 100644
--- a/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultCategoryHandler.java
+++ b/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultCategoryHandler.java
@@ -30,7 +30,6 @@ import me.shedaniel.rei.RoughlyEnoughItemsNetwork;
import me.shedaniel.rei.api.AutoTransferHandler;
import me.shedaniel.rei.api.EntryStack;
import me.shedaniel.rei.api.TransferRecipeDisplay;
-import me.shedaniel.rei.listeners.RecipeBookGuiHooks;
import me.shedaniel.rei.server.ContainerInfo;
import me.shedaniel.rei.server.ContainerInfoHandler;
import net.fabricmc.fabric.api.network.ClientSidePacketRegistry;
@@ -43,6 +42,7 @@ import net.minecraft.item.ItemStack;
import net.minecraft.network.PacketByteBuf;
import net.minecraft.screen.ScreenHandler;
import net.minecraft.util.collection.DefaultedList;
+
import java.util.List;
public class DefaultCategoryHandler implements AutoTransferHandler {
@@ -56,7 +56,7 @@ public class DefaultCategoryHandler implements AutoTransferHandler {
if (!(context.getRecipe() instanceof TransferRecipeDisplay))
return Result.createNotApplicable();
TransferRecipeDisplay recipe = (TransferRecipeDisplay) context.getRecipe();
- HandledScreen<?> screenWithHandler = context.getHandledScreen();
+ HandledScreen<?> handledScreen = context.getHandledScreen();
ScreenHandler screenHandler = context.getScreenHandler();
ContainerInfo<ScreenHandler> containerInfo = (ContainerInfo<ScreenHandler>) ContainerInfoHandler.getContainerInfo(recipe.getRecipeCategory(), screenHandler.getClass());
if (containerInfo == null)
@@ -72,9 +72,9 @@ public class DefaultCategoryHandler implements AutoTransferHandler {
if (!context.isActuallyCrafting())
return Result.createSuccessful();
- context.getMinecraft().openScreen(screenWithHandler);
- if (screenWithHandler instanceof RecipeBookProvider)
- ((RecipeBookGuiHooks) ((RecipeBookProvider) screenWithHandler).getRecipeBookWidget()).rei_getGhostSlots().reset();
+ context.getMinecraft().openScreen(handledScreen);
+ if (handledScreen instanceof RecipeBookProvider)
+ ((RecipeBookProvider) handledScreen).getRecipeBookWidget().ghostSlots.reset();
PacketByteBuf buf = new PacketByteBuf(Unpooled.buffer());
buf.writeIdentifier(recipe.getRecipeCategory());
buf.writeBoolean(Screen.hasShiftDown());
diff --git a/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultRecipeBookHandler.java b/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultRecipeBookHandler.java
index ea11d7795..ae939e5bc 100644
--- a/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultRecipeBookHandler.java
+++ b/src/main/java/me/shedaniel/rei/plugin/autocrafting/DefaultRecipeBookHandler.java
@@ -27,7 +27,6 @@ import me.shedaniel.rei.api.AutoTransferHandler;
import me.shedaniel.rei.api.RecipeDisplay;
import me.shedaniel.rei.api.TransferRecipeDisplay;
import me.shedaniel.rei.impl.ScreenHelper;
-import me.shedaniel.rei.listeners.RecipeBookGuiHooks;
import me.shedaniel.rei.plugin.cooking.DefaultCookingDisplay;
import me.shedaniel.rei.plugin.crafting.DefaultCraftingDisplay;
import net.minecraft.client.gui.screen.Screen;
@@ -69,7 +68,7 @@ public class DefaultRecipeBookHandler implements AutoTransferHandler {
return Result.createSuccessful();
context.getMinecraft().openScreen(context.getHandledScreen());
if (context.getHandledScreen() instanceof RecipeBookProvider)
- ((RecipeBookGuiHooks) ((RecipeBookProvider) context.getHandledScreen()).getRecipeBookWidget()).rei_getGhostSlots().reset();
+ ((RecipeBookProvider) context.getHandledScreen()).getRecipeBookWidget().ghostSlots.reset();
context.getMinecraft().interactionManager.clickRecipe(container.syncId, recipe, Screen.hasShiftDown());
ScreenHelper.getLastOverlay().init();
}
@@ -83,7 +82,7 @@ public class DefaultRecipeBookHandler implements AutoTransferHandler {
return Result.createSuccessful();
context.getMinecraft().openScreen(context.getHandledScreen());
if (context.getHandledScreen() instanceof RecipeBookProvider)
- ((RecipeBookGuiHooks) ((RecipeBookProvider) context.getHandledScreen()).getRecipeBookWidget()).rei_getGhostSlots().reset();
+ ((RecipeBookProvider) context.getHandledScreen()).getRecipeBookWidget().ghostSlots.reset();
context.getMinecraft().interactionManager.clickRecipe(container.syncId, recipe, Screen.hasShiftDown());
ScreenHelper.getLastOverlay().init();
}