aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/me/shedaniel/rei/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/me/shedaniel/rei/api')
-rw-r--r--src/main/java/me/shedaniel/rei/api/ClientHelper.java47
-rw-r--r--src/main/java/me/shedaniel/rei/api/DisplayHelper.java8
-rw-r--r--src/main/java/me/shedaniel/rei/api/DisplayVisibility.java5
-rw-r--r--src/main/java/me/shedaniel/rei/api/ItemCheatingMode.java3
-rw-r--r--src/main/java/me/shedaniel/rei/api/PluginFunction.java7
-rw-r--r--src/main/java/me/shedaniel/rei/api/RecipeHelper.java3
6 files changed, 70 insertions, 3 deletions
diff --git a/src/main/java/me/shedaniel/rei/api/ClientHelper.java b/src/main/java/me/shedaniel/rei/api/ClientHelper.java
new file mode 100644
index 000000000..86c234872
--- /dev/null
+++ b/src/main/java/me/shedaniel/rei/api/ClientHelper.java
@@ -0,0 +1,47 @@
+package me.shedaniel.rei.api;
+
+import me.shedaniel.rei.client.ClientHelperImpl;
+import net.fabricmc.api.ClientModInitializer;
+import net.fabricmc.fabric.api.client.keybinding.FabricKeyBinding;
+import net.minecraft.item.Item;
+import net.minecraft.item.ItemStack;
+
+import java.util.List;
+
+public interface ClientHelper extends ClientModInitializer {
+ static ClientHelper getInstance() {
+ return ClientHelperImpl.instance;
+ }
+
+ boolean isCheating();
+
+ void setCheating(boolean cheating);
+
+ List<ItemStack> getInventoryItemsTypes();
+
+ void registerFabricKeyBinds();
+
+ boolean tryCheatingStack(ItemStack stack);
+
+ boolean executeRecipeKeyBind(ItemStack stack);
+
+ boolean executeUsageKeyBind(ItemStack stack);
+
+ String getModFromItem(Item item);
+
+ void sendDeletePacket();
+
+ String getFormattedModFromItem(Item item);
+
+ FabricKeyBinding getRecipeKeyBinding();
+
+ FabricKeyBinding getUsageKeyBinding();
+
+ FabricKeyBinding getHideKeyBinding();
+
+ FabricKeyBinding getPreviousPageKeyBinding();
+
+ FabricKeyBinding getNextPageKeyBinding();
+
+ boolean executeViewAllRecipesKeyBind();
+}
diff --git a/src/main/java/me/shedaniel/rei/api/DisplayHelper.java b/src/main/java/me/shedaniel/rei/api/DisplayHelper.java
index 5d4fda8a4..8234c20b3 100644
--- a/src/main/java/me/shedaniel/rei/api/DisplayHelper.java
+++ b/src/main/java/me/shedaniel/rei/api/DisplayHelper.java
@@ -12,6 +12,8 @@ public interface DisplayHelper {
List<DisplayBoundsHandler> getSortedBoundsHandlers(Class screenClass);
+ List<DisplayBoundsHandler> getAllBoundsHandlers();
+
DisplayBoundsHandler getResponsibleBoundsHandler(Class screenClass);
void registerBoundsHandler(DisplayBoundsHandler handler);
@@ -19,6 +21,8 @@ public interface DisplayHelper {
BaseBoundsHandler getBaseBoundsHandler();
public static interface DisplayBoundsHandler<T> {
+ public static final Rectangle EMPTY = new Rectangle();
+
Class getBaseSupportedClass();
Rectangle getLeftBounds(T screen);
@@ -29,6 +33,10 @@ public interface DisplayHelper {
return PASS;
}
+ default ActionResult isInZone(boolean isOnRightSide, double mouseX, double mouseY) {
+ return PASS;
+ }
+
default Rectangle getItemListArea(Rectangle rectangle) {
return new Rectangle(rectangle.x + 2, rectangle.y + 24, rectangle.width - 4, rectangle.height - (RoughlyEnoughItemsCore.getConfigManager().getConfig().sideSearchField ? 27 + 22 : 27));
}
diff --git a/src/main/java/me/shedaniel/rei/api/DisplayVisibility.java b/src/main/java/me/shedaniel/rei/api/DisplayVisibility.java
index 231f3efb5..8195d88a0 100644
--- a/src/main/java/me/shedaniel/rei/api/DisplayVisibility.java
+++ b/src/main/java/me/shedaniel/rei/api/DisplayVisibility.java
@@ -1,5 +1,8 @@
package me.shedaniel.rei.api;
public enum DisplayVisibility {
- ALWAYS_VISIBLE, CONFIG_OPTIONAL, NEVER_VISIBLE, PASS
+ ALWAYS_VISIBLE,
+ CONFIG_OPTIONAL,
+ NEVER_VISIBLE,
+ PASS
}
diff --git a/src/main/java/me/shedaniel/rei/api/ItemCheatingMode.java b/src/main/java/me/shedaniel/rei/api/ItemCheatingMode.java
index ba9f73b77..41d5e5ead 100644
--- a/src/main/java/me/shedaniel/rei/api/ItemCheatingMode.java
+++ b/src/main/java/me/shedaniel/rei/api/ItemCheatingMode.java
@@ -1,5 +1,6 @@
package me.shedaniel.rei.api;
public enum ItemCheatingMode {
- REI_LIKE, JEI_LIKE;
+ REI_LIKE,
+ JEI_LIKE;
}
diff --git a/src/main/java/me/shedaniel/rei/api/PluginFunction.java b/src/main/java/me/shedaniel/rei/api/PluginFunction.java
index f69f347d5..67e460a70 100644
--- a/src/main/java/me/shedaniel/rei/api/PluginFunction.java
+++ b/src/main/java/me/shedaniel/rei/api/PluginFunction.java
@@ -1,5 +1,10 @@
package me.shedaniel.rei.api;
public enum PluginFunction {
- REGISTER_ITEMS, REGISTER_CATEGORIES, REGISTER_RECIPE_DISPLAYS, REGISTER_SPEED_CRAFT, REGISTER_BOUNDS, REGISTER_OTHERS;
+ REGISTER_ITEMS,
+ REGISTER_CATEGORIES,
+ REGISTER_RECIPE_DISPLAYS,
+ REGISTER_SPEED_CRAFT,
+ REGISTER_BOUNDS,
+ REGISTER_OTHERS;
}
diff --git a/src/main/java/me/shedaniel/rei/api/RecipeHelper.java b/src/main/java/me/shedaniel/rei/api/RecipeHelper.java
index b7e3f2206..4b0fde018 100644
--- a/src/main/java/me/shedaniel/rei/api/RecipeHelper.java
+++ b/src/main/java/me/shedaniel/rei/api/RecipeHelper.java
@@ -2,6 +2,7 @@ package me.shedaniel.rei.api;
import me.shedaniel.rei.RoughlyEnoughItemsCore;
import net.minecraft.item.ItemStack;
+import net.minecraft.recipe.Recipe;
import net.minecraft.recipe.RecipeManager;
import net.minecraft.util.Identifier;
@@ -17,6 +18,8 @@ public interface RecipeHelper {
int getRecipeCount();
+ List<Recipe> getVanillaSortedRecipes();
+
List<ItemStack> findCraftableByItems(List<ItemStack> inventoryItems);
void registerCategory(RecipeCategory category);