aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorUnknown <shekwancheung0528@gmail.com>2019-03-19 14:25:15 +0800
committerUnknown <shekwancheung0528@gmail.com>2019-03-19 14:25:15 +0800
commitc2d28cbf7028ffed2f56169adbce3f03cc0c5b49 (patch)
tree4d96cb58c551255a08a3abde18b067174c1c1246 /src/main/java
parent032b88e7f3784753987e9fdbf11c33d620b76d65 (diff)
downloadRoughlyEnoughItems-c2d28cbf7028ffed2f56169adbce3f03cc0c5b49.tar.gz
RoughlyEnoughItems-c2d28cbf7028ffed2f56169adbce3f03cc0c5b49.tar.bz2
RoughlyEnoughItems-c2d28cbf7028ffed2f56169adbce3f03cc0c5b49.zip
v2.5 Beta
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/me/shedaniel/rei/api/RecipeCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/client/ClientHelper.java10
-rw-r--r--src/main/java/me/shedaniel/rei/client/ConfigObject.java3
-rw-r--r--src/main/java/me/shedaniel/rei/client/ScreenHelper.java37
-rw-r--r--src/main/java/me/shedaniel/rei/client/Weather.java13
-rw-r--r--src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java117
-rw-r--r--src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java30
-rw-r--r--src/main/java/me/shedaniel/rei/gui/config/ConfigEntry.java6
-rw-r--r--src/main/java/me/shedaniel/rei/gui/config/ConfigScreen.java23
-rw-r--r--src/main/java/me/shedaniel/rei/gui/credits/CreditsScreen.java8
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/ButtonWidget.java12
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/CraftableToggleButtonWidget.java9
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/DraggableWidget.java4
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/ItemListOverlay.java9
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/ItemSlotWidget.java5
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/QueuedTooltip.java8
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/SpeedCraftingButtonWidget.java15
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/TabWidget.java4
-rw-r--r--src/main/java/me/shedaniel/rei/gui/widget/Widget.java1
-rw-r--r--src/main/java/me/shedaniel/rei/mixin/MixinContainerScreen.java16
-rw-r--r--src/main/java/me/shedaniel/rei/mixin/MixinCreativePlayerInventoryScreen.java4
-rw-r--r--src/main/java/me/shedaniel/rei/mixin/MixinTabGetter.java3
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultBlastingCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultBrewingCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultCampfireCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultCraftingCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultSmeltingCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultSmokingCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/plugin/DefaultStoneCuttingCategory.java2
-rw-r--r--src/main/java/me/shedaniel/rei/utils/ClothRegistry.java10
30 files changed, 213 insertions, 150 deletions
diff --git a/src/main/java/me/shedaniel/rei/api/RecipeCategory.java b/src/main/java/me/shedaniel/rei/api/RecipeCategory.java
index 4bc4c6e0d..9fdd35801 100644
--- a/src/main/java/me/shedaniel/rei/api/RecipeCategory.java
+++ b/src/main/java/me/shedaniel/rei/api/RecipeCategory.java
@@ -1,8 +1,8 @@
package me.shedaniel.rei.api;
import me.shedaniel.rei.gui.RecipeViewingScreen;
-import me.shedaniel.rei.gui.widget.Widget;
import me.shedaniel.rei.gui.widget.RecipeBaseWidget;
+import me.shedaniel.rei.gui.widget.Widget;
import net.minecraft.client.gui.DrawableHelper;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;
diff --git a/src/main/java/me/shedaniel/rei/client/ClientHelper.java b/src/main/java/me/shedaniel/rei/client/ClientHelper.java
index 84a3706f3..89678caeb 100644
--- a/src/main/java/me/shedaniel/rei/client/ClientHelper.java
+++ b/src/main/java/me/shedaniel/rei/client/ClientHelper.java
@@ -16,7 +16,6 @@ import net.fabricmc.loader.api.FabricLoader;
import net.fabricmc.loader.api.ModContainer;
import net.fabricmc.loader.api.metadata.ModMetadata;
import net.minecraft.client.MinecraftClient;
-import net.minecraft.client.Mouse;
import net.minecraft.client.gui.Screen;
import net.minecraft.client.gui.ingame.CreativePlayerInventoryScreen;
import net.minecraft.client.util.InputUtil;
@@ -28,7 +27,6 @@ import net.minecraft.util.Identifier;
import net.minecraft.util.PacketByteBuf;
import net.minecraft.util.registry.Registry;
-import java.awt.*;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
@@ -54,14 +52,6 @@ public class ClientHelper implements ClientModInitializer {
return "";
}
- public static Point getMouseLocation() {
- MinecraftClient client = MinecraftClient.getInstance();
- Mouse mouse = client.mouse;
- double double_1 = mouse.getX() * (double) client.window.getScaledWidth() / (double) client.window.getWidth();
- double double_2 = mouse.getY() * (double) client.window.getScaledHeight() / (double) client.window.getHeight();
- return new Point((int) double_1, (int) double_2);
- }
-
public static boolean isCheating() {
return RoughlyEnoughItemsCore.getConfigManager().getConfig().cheating;
}
diff --git a/src/main/java/me/shedaniel/rei/client/ConfigObject.java b/src/main/java/me/shedaniel/rei/client/ConfigObject.java
index 447fb8658..b1303a697 100644
--- a/src/main/java/me/shedaniel/rei/client/ConfigObject.java
+++ b/src/main/java/me/shedaniel/rei/client/ConfigObject.java
@@ -34,9 +34,6 @@ public class ConfigObject {
@Comment("To disable REI's defualt plugin, don't change this unless you understand what you are doing")
public boolean loadDefaultPlugin = true;
- @Comment("Toggle the credits button")
- public boolean disableCreditsButton = false;
-
@Comment("Maximum recipes viewed at one time.")
public int maxRecipePerPage = 3;
diff --git a/src/main/java/me/shedaniel/rei/client/ScreenHelper.java b/src/main/java/me/shedaniel/rei/client/ScreenHelper.java
index fa426e300..5c7112d41 100644
--- a/src/main/java/me/shedaniel/rei/client/ScreenHelper.java
+++ b/src/main/java/me/shedaniel/rei/client/ScreenHelper.java
@@ -1,18 +1,24 @@
package me.shedaniel.rei.client;
import com.google.common.collect.Lists;
+import com.mojang.blaze3d.platform.GlStateManager;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.gui.ContainerScreenOverlay;
import me.shedaniel.rei.gui.widget.TextFieldWidget;
import me.shedaniel.rei.listeners.ContainerScreenHooks;
import net.fabricmc.api.ClientModInitializer;
import net.fabricmc.fabric.api.event.client.ClientTickCallback;
+import net.minecraft.client.MinecraftClient;
import net.minecraft.client.gui.ContainerScreen;
+import net.minecraft.client.gui.Drawable;
import net.minecraft.client.gui.InputListener;
import net.minecraft.client.gui.widget.ButtonWidget;
import net.minecraft.client.gui.widget.RecipeBookButtonWidget;
+import net.minecraft.client.render.GuiLighting;
+import net.minecraft.client.util.Window;
import net.minecraft.item.ItemStack;
+import java.awt.*;
import java.util.List;
public class ScreenHelper implements ClientModInitializer {
@@ -65,6 +71,37 @@ public class ScreenHelper implements ClientModInitializer {
return (ContainerScreenHooks) lastContainerScreen;
}
+ public static void drawHoveringWidget(int x, int y, Drawable drawable, int width, int height, float delta) {
+ Window window = MinecraftClient.getInstance().window;
+ drawHoveringWidget(new Dimension(window.getScaledWidth(), window.getScaledHeight()), x, y, drawable, width, height, delta);
+ }
+
+ public static void drawHoveringWidget(Dimension dimension, int x, int y, Drawable drawable, int width, int height, float delta) {
+ int int_5 = x + 12;
+ int int_6 = y - 12;
+
+ if (int_5 + width > dimension.width)
+ int_5 -= 28 + width;
+ if (int_6 + height + 6 > dimension.height)
+ int_6 = dimension.height - height - 6;
+
+ drawable.draw(int_5, int_6, delta);
+ // zOffset = 300.0F;
+ // itemRenderer.zOffset = 300.0F;
+ // int int_9 = -267386864;
+ // drawGradientRect(int_5 - 3, int_6 - 4, int_5 + width + 3, int_6 - 3, -267386864, -267386864);
+ // drawGradientRect(int_5 - 3, int_6 + height + 3, int_5 + width + 3, int_6 + height + 4, -267386864, -267386864);
+ // drawGradientRect(int_5 - 3, int_6 - 3, int_5 + width + 3, int_6 + height + 3, -267386864, -267386864);
+ // drawGradientRect(int_5 - 4, int_6 - 3, int_5 - 3, int_6 + height + 3, -267386864, -267386864);
+ // drawGradientRect(int_5 + width + 3, int_6 - 3, int_5 + width + 4, int_6 + height + 3, -267386864, -267386864);
+ // int int_10 = 1347420415;
+ // int int_11 = 1344798847;
+ // drawGradientRect(int_5 - 3, int_6 - 3 + 1, int_5 - 3 + 1, int_6 + height + 3 - 1, 1347420415, 1344798847);
+ // drawGradientRect(int_5 + width + 2, int_6 - 3 + 1, int_5 + width + 3, int_6 + height + 3 - 1, 1347420415, 1344798847);
+ // drawGradientRect(int_5 - 3, int_6 - 3, int_5 + width + 3, int_6 - 3 + 1, 1347420415, 1347420415);
+ // drawGradientRect(int_5 - 3, int_6 + height + 2, int_5 + width + 3, int_6 + height + 3, 1344798847, 1344798847);
+ }
+
@Override
public void onInitializeClient() {
ClientTickCallback.EVENT.register(client -> {
diff --git a/src/main/java/me/shedaniel/rei/client/Weather.java b/src/main/java/me/shedaniel/rei/client/Weather.java
index b4cc2dc04..f59cba7d4 100644
--- a/src/main/java/me/shedaniel/rei/client/Weather.java
+++ b/src/main/java/me/shedaniel/rei/client/Weather.java
@@ -1,14 +1,14 @@
package me.shedaniel.rei.client;
public enum Weather {
- CLEAR(0, "Clear"), RAIN(1, "Rain"), THUNDER(2, "Thunder");
+ CLEAR(0, "text.rei.weather.clear"), RAIN(1, "text.rei.weather.rain"), THUNDER(2, "text.rei.weather.thunder");
private final int id;
- private final String name;
+ private final String translateKey;
- Weather(int id, String name) {
+ Weather(int id, String translateKey) {
this.id = id;
- this.name = name;
+ this.translateKey = translateKey;
}
public static Weather byId(int int_1) {
@@ -31,8 +31,7 @@ public enum Weather {
return id;
}
- public String getName() {
- return name;
+ public String getTranslateKey() {
+ return translateKey;
}
-
}
diff --git a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
index b752ae04d..8692e68a9 100644
--- a/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
+++ b/src/main/java/me/shedaniel/rei/gui/ContainerScreenOverlay.java
@@ -2,11 +2,11 @@ package me.shedaniel.rei.gui;
import com.google.common.collect.Lists;
import com.mojang.blaze3d.platform.GlStateManager;
+import me.shedaniel.cloth.ClothInitializer;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.client.ClientHelper;
import me.shedaniel.rei.client.ScreenHelper;
import me.shedaniel.rei.client.Weather;
-import me.shedaniel.rei.gui.credits.CreditsScreen;
import me.shedaniel.rei.gui.widget.*;
import net.minecraft.client.MinecraftClient;
import net.minecraft.client.audio.PositionedSoundInstance;
@@ -26,10 +26,10 @@ import net.minecraft.util.math.MathHelper;
import net.minecraft.world.GameMode;
import java.awt.*;
-import java.util.Arrays;
import java.util.Collections;
import java.util.LinkedList;
import java.util.List;
+import java.util.Optional;
import java.util.stream.Collectors;
public class ContainerScreenOverlay extends ScreenComponent {
@@ -45,6 +45,10 @@ public class ContainerScreenOverlay extends ScreenComponent {
private ButtonWidget buttonLeft, buttonRight;
private int lastLeft;
+ public static ItemListOverlay getItemListOverlay() {
+ return itemListOverlay;
+ }
+
public void onInitialized() {
onInitialized(false);
}
@@ -66,6 +70,15 @@ public class ContainerScreenOverlay extends ScreenComponent {
page = getTotalPage();
itemListOverlay.updateList(getItemListArea(), page, searchTerm);
}
+
+ @Override
+ public Optional<String> getTooltips() {
+ return Optional.ofNullable(I18n.translate("text.rei.previous_page"));
+ }
+
+ @Override
+ public void setHasFocus(boolean boolean_1) {
+ }
});
widgets.add(buttonRight = new ButtonWidget(rectangle.x + rectangle.width - 18, rectangle.y + 5, 16, 16, new TranslatableTextComponent("text.rei.right_arrow")) {
@Override
@@ -75,6 +88,15 @@ public class ContainerScreenOverlay extends ScreenComponent {
page = 0;
itemListOverlay.updateList(getItemListArea(), page, searchTerm);
}
+
+ @Override
+ public Optional<String> getTooltips() {
+ return Optional.ofNullable(I18n.translate("text.rei.next_page"));
+ }
+
+ @Override
+ public void setHasFocus(boolean boolean_1) {
+ }
});
if (setPage)
page = MathHelper.clamp(page, 0, getTotalPage());
@@ -97,24 +119,23 @@ public class ContainerScreenOverlay extends ScreenComponent {
MinecraftClient.getInstance().getTextureManager().bindTexture(CHEST_GUI_TEXTURE);
GlStateManager.color4f(1.0F, 1.0F, 1.0F, 1.0F);
drawTexturedRect(getBounds().x + 3, getBounds().y + 3, 0, 0, 14, 14);
- if (isHighlighted(mouseX, mouseY)) {
- List<String> list = new LinkedList<>(Arrays.asList(I18n.translate("text.rei.config_tooltip").split("\n")));
- list.add(" ");
- if (!ClientHelper.isCheating())
- list.add("§c§m" + I18n.translate("text.rei.cheating"));
- else
- list.add("§a" + I18n.translate("text.rei.cheating"));
- addTooltip(QueuedTooltip.create(list));
- }
+ }
+
+ @Override
+ public Optional<String> getTooltips() {
+ String tooltips = I18n.translate("text.rei.config_tooltip");
+ tooltips += "\n ";
+ if (!ClientHelper.isCheating())
+ tooltips += "\n§c§m" + I18n.translate("text.rei.cheating");
+ else
+ tooltips += "\n§a" + I18n.translate("text.rei.cheating");
+ return Optional.ofNullable(tooltips);
+ }
+
+ @Override
+ public void setHasFocus(boolean boolean_1) {
}
});
- if (!RoughlyEnoughItemsCore.getConfigManager().getConfig().disableCreditsButton)
- widgets.add(new ButtonWidget(RoughlyEnoughItemsCore.getConfigManager().getConfig().mirrorItemPanel ? window.getScaledWidth() - 50 : 10, window.getScaledHeight() - 30, 40, 20, I18n.translate("text.rei.credits")) {
- @Override
- public void onPressed() {
- MinecraftClient.getInstance().openScreen(new CreditsScreen(ScreenHelper.getLastContainerScreen()));
- }
- });
if (RoughlyEnoughItemsCore.getConfigManager().getConfig().showUtilsButtons) {
widgets.add(new ButtonWidget(RoughlyEnoughItemsCore.getConfigManager().getConfig().mirrorItemPanel ? window.getScaledWidth() - 55 : 35, 10, 20, 20, "") {
@Override
@@ -126,14 +147,21 @@ public class ContainerScreenOverlay extends ScreenComponent {
public void draw(int mouseX, int mouseY, float partialTicks) {
text = getGameModeShortText(getCurrentGameMode());
super.draw(mouseX, mouseY, partialTicks);
- if (isHighlighted(mouseX, mouseY))
- addTooltip(QueuedTooltip.create(I18n.translate("text.rei.gamemode_button.tooltip", getGameModeText(getNextGameMode())).split("\n")));
+ }
+
+ @Override
+ public Optional<String> getTooltips() {
+ return Optional.ofNullable(I18n.translate("text.rei.gamemode_button.tooltip", getGameModeText(getNextGameMode())));
+ }
+
+ @Override
+ public void setHasFocus(boolean boolean_1) {
}
});
widgets.add(new ButtonWidget(RoughlyEnoughItemsCore.getConfigManager().getConfig().mirrorItemPanel ? window.getScaledWidth() - 80 : 60, 10, 20, 20, "") {
@Override
public void onPressed() {
- MinecraftClient.getInstance().player.sendChatMessage(RoughlyEnoughItemsCore.getConfigManager().getConfig().weatherCommand.replaceAll("\\{weather}", getNextWeather().getName().toLowerCase()));
+ MinecraftClient.getInstance().player.sendChatMessage(RoughlyEnoughItemsCore.getConfigManager().getConfig().weatherCommand.replaceAll("\\{weather}", getNextWeather().name().toLowerCase()));
}
@Override
@@ -143,8 +171,15 @@ public class ContainerScreenOverlay extends ScreenComponent {
MinecraftClient.getInstance().getTextureManager().bindTexture(CHEST_GUI_TEXTURE);
GlStateManager.color4f(1.0F, 1.0F, 1.0F, 1.0F);
drawTexturedRect(getBounds().x + 3, getBounds().y + 3, getCurrentWeather().getId() * 14, 14, 14, 14);
- if (isHighlighted(mouseX, mouseY))
- addTooltip(QueuedTooltip.create(I18n.translate("text.rei.weather_button.tooltip", getNextWeather().getName()).split("\n")));
+ }
+
+ @Override
+ public Optional<String> getTooltips() {
+ return Optional.ofNullable(I18n.translate("text.rei.weather_button.tooltip", I18n.translate(getNextWeather().getTranslateKey())));
+ }
+
+ @Override
+ public void setHasFocus(boolean boolean_1) {
}
});
}
@@ -156,6 +191,8 @@ public class ContainerScreenOverlay extends ScreenComponent {
super.draw(mouseX, mouseY, partialTicks);
if (isHighlighted(mouseX, mouseY))
addTooltip(QueuedTooltip.create(I18n.translate("text.rei.go_back_first_page").split("\n")));
+ else if (focused)
+ ScreenHelper.getLastOverlay().addTooltip(QueuedTooltip.create(new Point(x, y), I18n.translate("text.rei.go_back_first_page").split("\n")));
}
@Override
@@ -164,6 +201,10 @@ public class ContainerScreenOverlay extends ScreenComponent {
page = 0;
itemListOverlay.updateList(getItemListArea(), page, searchTerm);
}
+
+ @Override
+ public void setHasFocus(boolean boolean_1) {
+ }
});
if (ScreenHelper.searchField == null)
ScreenHelper.searchField = new TextFieldWidget(0, 0, 0, 0) {
@@ -217,38 +258,18 @@ public class ContainerScreenOverlay extends ScreenComponent {
}
private String getGameModeShortText(GameMode gameMode) {
- switch (gameMode) {
- case CREATIVE:
- return "C";
- case SURVIVAL:
- return "S";
- case ADVENTURE:
- return "A";
- case SPECTATOR:
- return "SP";
- }
- return gameMode.name();
+ return I18n.translate("text.rei.short_gamemode." + gameMode.getName());
}
private String getGameModeText(GameMode gameMode) {
- switch (gameMode) {
- case CREATIVE:
- return "Creative";
- case SURVIVAL:
- return "Survival";
- case ADVENTURE:
- return "Adventure";
- case SPECTATOR:
- return "Spectator";
- }
- return gameMode.name();
+ return I18n.translate("selectWorld.gameMode." + gameMode.getName());
}
private GameMode getNextGameMode() {
try {
GameMode current = getCurrentGameMode();
int next = current.getId() + 1;
- if (next >= 3)
+ if (next > 3)
next = 0;
return GameMode.byId(next);
} catch (Exception e) {
@@ -372,7 +393,7 @@ public class ContainerScreenOverlay extends ScreenComponent {
public boolean mouseScrolled(double i, double j, double amount) {
if (!ScreenHelper.isOverlayVisible())
return false;
- if (rectangle.contains(ClientHelper.getMouseLocation())) {
+ if (rectangle.contains(ClothInitializer.clientUtils.getMouseLocation())) {
if (amount > 0 && buttonLeft.enabled)
buttonLeft.onPressed();
else if (amount < 0 && buttonRight.enabled)
@@ -399,7 +420,7 @@ public class ContainerScreenOverlay extends ScreenComponent {
}
if (!ScreenHelper.isOverlayVisible())
return false;
- Point point = ClientHelper.getMouseLocation();
+ Point point = ClothInitializer.clientUtils.getMouseLocation();
ItemStack itemStack = null;
if (MinecraftClient.getInstance().currentScreen instanceof ContainerScreen)
if (ScreenHelper.getLastContainerScreenHooks().rei_getHoveredSlot() != null && !ScreenHelper.getLastContainerScreenHooks().rei_getHoveredSlot().getStack().isEmpty())
diff --git a/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java b/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java
index 31ba6793d..968d6079c 100644
--- a/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java
+++ b/src/main/java/me/shedaniel/rei/gui/RecipeViewingScreen.java
@@ -2,6 +2,7 @@ package me.shedaniel.rei.gui;
import com.google.common.collect.Lists;
import com.mojang.blaze3d.platform.GlStateManager;
+import me.shedaniel.cloth.ClothInitializer;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.api.*;
import me.shedaniel.rei.client.ClientHelper;
@@ -128,6 +129,11 @@ public class RecipeViewingScreen extends Screen {
page = 0;
RecipeViewingScreen.this.onInitialized();
}
+
+ @Override
+ public Optional<String> getTooltips() {
+ return Optional.ofNullable(I18n.translate("text.rei.previous_category"));
+ }
});
widgets.add(new ClickableLabelWidget((int) bounds.getCenterX(), (int) bounds.getY() + 7, "") {
@Override
@@ -158,6 +164,11 @@ public class RecipeViewingScreen extends Screen {
page = 0;
RecipeViewingScreen.this.onInitialized();
}
+
+ @Override
+ public Optional<String> getTooltips() {
+ return Optional.ofNullable(I18n.translate("text.rei.next_category"));
+ }
});
categoryBack.enabled = categories.size() > 1;
categoryNext.enabled = categories.size() > 1;
@@ -170,6 +181,11 @@ public class RecipeViewingScreen extends Screen {
page = getTotalPages(selectedCategory) - 1;
RecipeViewingScreen.this.onInitialized();
}
+
+ @Override
+ public Optional<String> getTooltips() {
+ return Optional.ofNullable(I18n.translate("text.rei.previous_page"));
+ }
});
widgets.add(new ClickableLabelWidget((int) bounds.getCenterX(), (int) bounds.getY() + 23, "") {
@Override
@@ -197,9 +213,15 @@ public class RecipeViewingScreen extends Screen {
page = 0;
RecipeViewingScreen.this.onInitialized();
}
+
+ @Override
+ public Optional<String> getTooltips() {
+ return Optional.ofNullable(I18n.translate("text.rei.next_page"));
+ }
});
- recipeBack.enabled = categoriesMap.get(selectedCategory).size() > getRecipesPerPage();
- recipeNext.enabled = categoriesMap.get(selectedCategory).size() > getRecipesPerPage();
+ int recipesPerPageByHeight = getRecipesPerPageByHeight();
+ recipeBack.enabled = categoriesMap.get(selectedCategory).size() > recipesPerPageByHeight;
+ recipeNext.enabled = categoriesMap.get(selectedCategory).size() > recipesPerPageByHeight;
for(int i = 0; i < 6; i++) {
int j = i + categoryPages * 6;
@@ -360,13 +382,13 @@ public class RecipeViewingScreen extends Screen {
for(InputListener listener : listeners)
if (listener.mouseScrolled(i, j, amount))
return true;
- if (getBounds().contains(ClientHelper.getMouseLocation())) {
+ if (getBounds().contains(ClothInitializer.clientUtils.getMouseLocation())) {
if (amount > 0 && recipeBack.enabled)
recipeBack.onPressed();
else if (amount < 0 && recipeNext.enabled)
recipeNext.onPressed();
}
- if ((new Rectangle(bounds.x, bounds.y - 28, bounds.width, 28)).contains(ClientHelper.getMouseLocation())) {
+ if ((new Rectangle(bounds.x, bounds.y - 28, bounds.width, 28)).contains(ClothInitializer.clientUtils.getMouseLocation())) {
if (amount > 0 && categoryBack.enabled)
categoryBack.onPressed();
else if (amount < 0 && categoryNext.enabled)
diff --git a/src/main/java/me/shedaniel/rei/gui/config/ConfigEntry.java b/src/main/java/me/shedaniel/rei/gui/config/ConfigEntry.java
index fdea6df9f..c5a520448 100644
--- a/src/main/java/me/shedaniel/rei/gui/config/ConfigEntry.java
+++ b/src/main/java/me/shedaniel/rei/gui/config/ConfigEntry.java
@@ -1,6 +1,6 @@
package me.shedaniel.rei.gui.config;
-import me.shedaniel.rei.client.ClientHelper;
+import me.shedaniel.cloth.ClothInitializer;
import me.shedaniel.rei.gui.widget.ButtonWidget;
import me.shedaniel.rei.gui.widget.TextFieldWidget;
import net.minecraft.client.MinecraftClient;
@@ -33,7 +33,7 @@ public abstract class ConfigEntry extends EntryListWidget.Entry<ConfigEntry> {
@Override
public void draw(int entryWidth, int height, int i3, int i4, boolean isSelected, float delta) {
Window window = MinecraftClient.getInstance().window;
- Point mouse = ClientHelper.getMouseLocation();
+ Point mouse = ClothInitializer.clientUtils.getMouseLocation();
if (MinecraftClient.getInstance().textRenderer.isRightToLeft()) {
MinecraftClient.getInstance().textRenderer.drawWithShadow(nameComponent.getFormattedText(), window.getScaledWidth() - MinecraftClient.getInstance().textRenderer.getStringWidth(nameComponent.getFormattedText()) - 40, getY() + 5, 16777215);
this.buttonWidget.text = buttonProvider.getText();
@@ -97,7 +97,7 @@ public abstract class ConfigEntry extends EntryListWidget.Entry<ConfigEntry> {
@Override
public void draw(int entryWidth, int height, int i3, int i4, boolean isSelected, float delta) {
Window window = MinecraftClient.getInstance().window;
- Point mouse = ClientHelper.getMouseLocation();
+ Point mouse = ClothInitializer.clientUtils.getMouseLocation();
if (MinecraftClient.getInstance().textRenderer.isRightToLeft()) {
MinecraftClient.getInstance().textRenderer.drawWithShadow(nameComponent.getFormattedText(), window.getScaledWidth() - MinecraftClient.getInstance().textRenderer.getStringWidth(nameComponent.getFormattedText()) - 40, getY() + 5, 16777215);
this.textFieldWidget.getBounds().setLocation(getX() + 1, getY() + 2);
diff --git a/src/main/java/me/shedaniel/rei/gui/config/ConfigScreen.java b/src/main/java/me/shedaniel/rei/gui/config/ConfigScreen.java
index ce8814abf..4d2452d17 100644
--- a/src/main/java/me/shedaniel/rei/gui/config/ConfigScreen.java
+++ b/src/main/java/me/shedaniel/rei/gui/config/ConfigScreen.java
@@ -5,6 +5,7 @@ import me.shedaniel.rei.RoughlyEnoughItemsCore;
import me.shedaniel.rei.client.ClientHelper;
import me.shedaniel.rei.client.ItemListOrdering;
import me.shedaniel.rei.client.ScreenHelper;
+import me.shedaniel.rei.gui.credits.CreditsScreen;
import me.shedaniel.rei.gui.widget.QueuedTooltip;
import me.shedaniel.rei.gui.widget.TextFieldWidget;
import net.minecraft.client.MinecraftClient;
@@ -154,22 +155,6 @@ public class ConfigScreen extends Screen {
}
}));
- entryListWidget.configAddEntry(new ConfigEntry.ButtonConfigEntry(new TranslatableTextComponent("text.rei.config.disable_credits_button"), new ConfigEntry.ButtonConfigEntry.ConfigEntryButtonProvider() {
- @Override
- public void onPressed() {
- RoughlyEnoughItemsCore.getConfigManager().getConfig().disableCreditsButton = !RoughlyEnoughItemsCore.getConfigManager().getConfig().disableCreditsButton;
- try {
- RoughlyEnoughItemsCore.getConfigManager().saveConfig();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
-
- @Override
- public String getText() {
- return getTrueFalseText(RoughlyEnoughItemsCore.getConfigManager().getConfig().disableCreditsButton);
- }
- }));
entryListWidget.configAddEntry(new ConfigEntry.ButtonConfigEntry(new TranslatableTextComponent("text.rei.config.enable_util_buttons"), new ConfigEnt