diff options
| author | Daniel She <shekwancheung0528@gmail.com> | 2019-05-12 10:55:21 +0800 |
|---|---|---|
| committer | Daniel She <shekwancheung0528@gmail.com> | 2019-05-12 10:55:21 +0800 |
| commit | f51e5af85e26f588cbe2eba2eef728e783201bc8 (patch) | |
| tree | e490afcfe8974af8a6c65954667bf822505224d4 /src/main/java/me/shedaniel/rei/api/ClientHelper.java | |
| parent | 64c240a5a5eb6b4312b86e24ddbaaa70ada49359 (diff) | |
| parent | b99108611ea89dc0eda6c433447ce398a98ad4ad (diff) | |
| download | RoughlyEnoughItems-f51e5af85e26f588cbe2eba2eef728e783201bc8.tar.gz RoughlyEnoughItems-f51e5af85e26f588cbe2eba2eef728e783201bc8.tar.bz2 RoughlyEnoughItems-f51e5af85e26f588cbe2eba2eef728e783201bc8.zip | |
Merge branch '1.14-dev' into 1.14
Diffstat (limited to 'src/main/java/me/shedaniel/rei/api/ClientHelper.java')
| -rw-r--r-- | src/main/java/me/shedaniel/rei/api/ClientHelper.java | 85 |
1 files changed, 83 insertions, 2 deletions
diff --git a/src/main/java/me/shedaniel/rei/api/ClientHelper.java b/src/main/java/me/shedaniel/rei/api/ClientHelper.java index d4648bbaa..e0fbfbed3 100644 --- a/src/main/java/me/shedaniel/rei/api/ClientHelper.java +++ b/src/main/java/me/shedaniel/rei/api/ClientHelper.java @@ -1,7 +1,11 @@ +/* + * Roughly Enough Items by Danielshe. + * Licensed under the MIT License. + */ + 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; @@ -10,35 +14,107 @@ import net.minecraft.util.Identifier; import java.util.List; import java.util.Map; -public interface ClientHelper extends ClientModInitializer { +public interface ClientHelper { + /** + * @return the api instance of {@link ClientHelperImpl} + */ static ClientHelper getInstance() { return ClientHelperImpl.instance; } + /** + * Checks if cheating is enabled + * + * @return whether cheating is enabled + */ boolean isCheating(); + /** + * Sets current cheating mode + * Should save the config in {@link ConfigManager}. + * + * @param cheating the new cheating mode + */ void setCheating(boolean cheating); List<ItemStack> getInventoryItemsTypes(); + /** + * Opens a recipe viewing screen: + * {@link me.shedaniel.rei.gui.PreRecipeViewingScreen} if not set + * {@link me.shedaniel.rei.gui.RecipeViewingScreen} if set to default + * {@link me.shedaniel.rei.gui.VillagerRecipeViewingScreen} if set to villager + * + * @param map the map of recipes + */ void openRecipeViewingScreen(Map<RecipeCategory, List<RecipeDisplay>> map); + /** + * Registers REI's keybinds using Fabric API. + */ void registerFabricKeyBinds(); + /** + * Tries to cheat items using either packets or commands. + * + * @param stack the stack to cheat in + * @return whether it failed + */ boolean tryCheatingStack(ItemStack stack); + /** + * Finds recipe for the item and opens the recipe screen. + * + * @param stack the stack to find recipe for + * @return whether the stack has any recipes to show + */ boolean executeRecipeKeyBind(ItemStack stack); + /** + * Finds usage for the item and opens the recipe screen. + * + * @param stack the stack to find usage for + * @return whether the stack has any usages to show + */ boolean executeUsageKeyBind(ItemStack stack); + /** + * Gets the mod from an item + * + * @param item + * @return the mod name + */ String getModFromItem(Item item); + /** + * Tries to delete the player's cursor item + * + * @return whether it failed + */ void sendDeletePacket(); + /** + * Gets the formatted mod from an item + * + * @param item + * @return the mod name with blue and italic formatting + */ String getFormattedModFromItem(Item item); + /** + * Gets the formatted mod from an identifier + * + * @param identifier + * @return the mod name with blue and italic formatting + */ String getFormattedModFromIdentifier(Identifier identifier); + /** + * Gets the mod from an identifier + * + * @param identifier + * @return the mod name + */ String getModFromIdentifier(Identifier identifier); FabricKeyBinding getRecipeKeyBinding(); @@ -51,5 +127,10 @@ public interface ClientHelper extends ClientModInitializer { FabricKeyBinding getNextPageKeyBinding(); + /** + * Finds all recipes and open them in a recipe screen. + * + * @return whether there are any recipes to show + */ boolean executeViewAllRecipesKeyBind(); } |
