aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/shedaniel/rei/client/ScreenHelper.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/me/shedaniel/rei/client/ScreenHelper.java')
-rw-r--r--src/main/java/me/shedaniel/rei/client/ScreenHelper.java14
1 files changed, 9 insertions, 5 deletions
diff --git a/src/main/java/me/shedaniel/rei/client/ScreenHelper.java b/src/main/java/me/shedaniel/rei/client/ScreenHelper.java
index 7c8085c1b..15ba7f335 100644
--- a/src/main/java/me/shedaniel/rei/client/ScreenHelper.java
+++ b/src/main/java/me/shedaniel/rei/client/ScreenHelper.java
@@ -18,8 +18,8 @@ import net.minecraft.client.util.Window;
import net.minecraft.item.ItemStack;
import org.apache.logging.log4j.util.TriConsumer;
-import java.awt.*;
import java.util.List;
+import java.util.Optional;
public class ScreenHelper implements ClientModInitializer {
@@ -37,6 +37,10 @@ public class ScreenHelper implements ClientModInitializer {
overlayVisible = !overlayVisible;
}
+ public static Optional<ContainerScreenOverlay> getOptionalOverlay() {
+ return Optional.ofNullable(overlay);
+ }
+
public static ContainerScreenOverlay getLastOverlay(boolean reset, boolean setPage) {
if (overlay == null || reset) {
overlay = new ContainerScreenOverlay();
@@ -63,13 +67,13 @@ public class ScreenHelper implements ClientModInitializer {
public static void drawHoveringWidget(int x, int y, TriConsumer<Integer, Integer, Float> consumer, int width, int height, float delta) {
Window window = MinecraftClient.getInstance().window;
- drawHoveringWidget(new Dimension(window.getScaledWidth(), window.getScaledHeight()), x, y, consumer, width, height, delta);
+ drawHoveringWidget(window.getScaledWidth(), window.getScaledHeight(), x, y, consumer, width, height, delta);
}
- public static void drawHoveringWidget(Dimension dimension, int x, int y, TriConsumer<Integer, Integer, Float> consumer, int width, int height, float delta) {
+ public static void drawHoveringWidget(int screenWidth, int screenHeight, int x, int y, TriConsumer<Integer, Integer, Float> consumer, int width, int height, float delta) {
int actualX = Math.max(x + 12, 6);
- int actualY = Math.min(y - height / 2, dimension.height - height - 6);
- if (actualX + width > dimension.width)
+ int actualY = Math.min(y - height / 2, screenHeight - height - 6);
+ if (actualX + width > screenWidth)
actualX -= 24 + width;
if (actualY < 6)
actualY += 24;