Package net.minecraft.recipe
Class ShapedRecipe
java.lang.Object
net.minecraft.recipe.ShapedRecipe
- All Implemented Interfaces:
CraftingRecipe,Recipe<CraftingInventory>
- Direct Known Subclasses:
MapExtendingRecipe
- Mappings:
Namespace Name official btmintermediary net/minecraft/class_1869named net/minecraft/recipe/ShapedRecipe
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescription(package private) String(package private) intprivate Identifier(package private) DefaultedList<Ingredient>(package private) ItemStack(package private) int -
Constructor Summary
ConstructorsConstructorDescriptionShapedRecipe(Identifier id, String group, int width, int height, DefaultedList<Ingredient> input, ItemStack output) -
Method Summary
Modifier and TypeMethodDescriptioncraft(CraftingInventory craftingInventory)Crafts this recipe.(package private) static DefaultedList<Ingredient>createPatternMatrix(String[] pattern, Map<String,Ingredient> symbols, int width, int height)Compiles a pattern and series of symbols into a list of ingredients (the matrix) suitable for matching against a crafting grid.private static intfindFirstSymbol(String line)private static intfindLastSymbol(String pattern)booleanfits(int width, int height)Determines whether this recipe's pattern will fit into the available crafting area.getGroup()Optional group this recipe belongs in.intgetId()The ingredients accepted as inputs for this recipe.static ItemgetItemStack(JsonObject json)(package private) static String[]getPattern(JsonArray json)intgetWidth()booleanisEmpty()booleanmatches(CraftingInventory craftingInventory, World world)Determines whether this recipe matches the contents currently placed inside the available crafting grid.private booleanmatchesPattern(CraftingInventory inv, int offsetX, int offsetY, boolean flipped)static ItemStackoutputFromJson(JsonObject json)(package private) static Map<String,Ingredient>readSymbols(JsonObject json)Reads the pattern symbols.(package private) static String[]removePadding(String[] pattern)Removes empty space from around the recipe pattern.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface net.minecraft.recipe.CraftingRecipe
getTypeMethods inherited from interface net.minecraft.recipe.Recipe
createIcon, getRemainder, isIgnoredInRecipeBook
-
Field Details
-
width
final int width- Mappings:
Namespace Name Mixin selector official aLbtm;a:Iintermediary field_9055Lnet/minecraft/class_1869;field_9055:Inamed widthLnet/minecraft/recipe/ShapedRecipe;width:I
-
height
final int height- Mappings:
Namespace Name Mixin selector official bLbtm;b:Iintermediary field_9054Lnet/minecraft/class_1869;field_9054:Inamed heightLnet/minecraft/recipe/ShapedRecipe;height:I
-
input
- Mappings:
Namespace Name Mixin selector official cLbtm;c:Lgs;intermediary field_9052Lnet/minecraft/class_1869;field_9052:Lnet/minecraft/class_2371;named inputLnet/minecraft/recipe/ShapedRecipe;input:Lnet/minecraft/util/collection/DefaultedList;
-
output
- Mappings:
Namespace Name Mixin selector official dLbtm;d:Lbqp;intermediary field_9053Lnet/minecraft/class_1869;field_9053:Lnet/minecraft/class_1799;named outputLnet/minecraft/recipe/ShapedRecipe;output:Lnet/minecraft/item/ItemStack;
-
id
- Mappings:
Namespace Name Mixin selector official eLbtm;e:Lww;intermediary field_9051Lnet/minecraft/class_1869;field_9051:Lnet/minecraft/class_2960;named idLnet/minecraft/recipe/ShapedRecipe;id:Lnet/minecraft/util/Identifier;
-
group
- Mappings:
Namespace Name Mixin selector official fLbtm;f:Ljava/lang/String;intermediary field_9056Lnet/minecraft/class_1869;field_9056:Ljava/lang/String;named groupLnet/minecraft/recipe/ShapedRecipe;group:Ljava/lang/String;
-
-
Constructor Details
-
ShapedRecipe
public ShapedRecipe(Identifier id, String group, int width, int height, DefaultedList<Ingredient> input, ItemStack output)- Mappings:
Namespace Name Mixin selector official <init>Lbtm;<init>(Lww;Ljava/lang/String;IILgs;Lbqp;)Vintermediary <init>Lnet/minecraft/class_1869;<init>(Lnet/minecraft/class_2960;Ljava/lang/String;IILnet/minecraft/class_2371;Lnet/minecraft/class_1799;)Vnamed <init>Lnet/minecraft/recipe/ShapedRecipe;<init>(Lnet/minecraft/util/Identifier;Ljava/lang/String;IILnet/minecraft/util/collection/DefaultedList;Lnet/minecraft/item/ItemStack;)V
-
-
Method Details
-
getId
- Specified by:
getIdin interfaceRecipe<CraftingInventory>- Mappings:
Namespace Name Mixin selector official fLbth;f()Lww;intermediary method_8114Lnet/minecraft/class_1860;method_8114()Lnet/minecraft/class_2960;named getIdLnet/minecraft/recipe/Recipe;getId()Lnet/minecraft/util/Identifier;
-
getSerializer
- Specified by:
getSerializerin interfaceRecipe<CraftingInventory>- Mappings:
Namespace Name Mixin selector official R_Lbth;R_()Lbtj;intermediary method_8119Lnet/minecraft/class_1860;method_8119()Lnet/minecraft/class_1865;named getSerializerLnet/minecraft/recipe/Recipe;getSerializer()Lnet/minecraft/recipe/RecipeSerializer;
-
getGroup
Optional group this recipe belongs in. Used to group recipes into different categories by the recipe book.- Specified by:
getGroupin interfaceRecipe<CraftingInventory>- Mappings:
Namespace Name Mixin selector official dLbth;d()Ljava/lang/String;intermediary method_8112Lnet/minecraft/class_1860;method_8112()Ljava/lang/String;named getGroupLnet/minecraft/recipe/Recipe;getGroup()Ljava/lang/String;
-
getOutput
- Specified by:
getOutputin interfaceRecipe<CraftingInventory>- Mappings:
Namespace Name Mixin selector official cLbth;c()Lbqp;intermediary method_8110Lnet/minecraft/class_1860;method_8110()Lnet/minecraft/class_1799;named getOutputLnet/minecraft/recipe/Recipe;getOutput()Lnet/minecraft/item/ItemStack;
-
getIngredients
The ingredients accepted as inputs for this recipe. Used by the recipe book when displaying a ghost form of this recipe on the crafting grid as well as for previewing the possible inputs in the book itself.- Specified by:
getIngredientsin interfaceRecipe<CraftingInventory>- Mappings:
Namespace Name Mixin selector official aLbth;a()Lgs;intermediary method_8117Lnet/minecraft/class_1860;method_8117()Lnet/minecraft/class_2371;named getIngredientsLnet/minecraft/recipe/Recipe;getIngredients()Lnet/minecraft/util/collection/DefaultedList;
-
fits
public boolean fits(int width, int height)Determines whether this recipe's pattern will fit into the available crafting area.- Specified by:
fitsin interfaceRecipe<CraftingInventory>- Mappings:
Namespace Name Mixin selector official aLbth;a(II)Zintermediary method_8113Lnet/minecraft/class_1860;method_8113(II)Znamed fitsLnet/minecraft/recipe/Recipe;fits(II)Z
-
matches
Description copied from interface:RecipeDetermines whether this recipe matches the contents currently placed inside the available crafting grid.- Specified by:
matchesin interfaceRecipe<CraftingInventory>- Mappings:
Namespace Name Mixin selector official aLbtm;a(Lbmx;Lbwp;)Zintermediary method_17728Lnet/minecraft/class_1869;method_17728(Lnet/minecraft/class_1715;Lnet/minecraft/class_1937;)Znamed matchesLnet/minecraft/recipe/ShapedRecipe;matches(Lnet/minecraft/inventory/CraftingInventory;Lnet/minecraft/world/World;)Z
-
matchesPattern
- Mappings:
Namespace Name Mixin selector official aLbtm;a(Lbmx;IIZ)Zintermediary method_8161Lnet/minecraft/class_1869;method_8161(Lnet/minecraft/class_1715;IIZ)Znamed matchesPatternLnet/minecraft/recipe/ShapedRecipe;matchesPattern(Lnet/minecraft/inventory/CraftingInventory;IIZ)Z
-
craft
Description copied from interface:RecipeCrafts this recipe.This method may perform side effects on the
inventoryargument.This method should return a new item stack on each call.
- Specified by:
craftin interfaceRecipe<CraftingInventory>- Returns:
- the resulting item stack
- Mappings:
Namespace Name Mixin selector official aLbtm;a(Lbmx;)Lbqp;intermediary method_17727Lnet/minecraft/class_1869;method_17727(Lnet/minecraft/class_1715;)Lnet/minecraft/class_1799;named craftLnet/minecraft/recipe/ShapedRecipe;craft(Lnet/minecraft/inventory/CraftingInventory;)Lnet/minecraft/item/ItemStack;
-
getWidth
public int getWidth()- Mappings:
Namespace Name Mixin selector official jLbtm;j()Iintermediary method_8150Lnet/minecraft/class_1869;method_8150()Inamed getWidthLnet/minecraft/recipe/ShapedRecipe;getWidth()I
-
getHeight
public int getHeight()- Mappings:
Namespace Name Mixin selector official kLbtm;k()Iintermediary method_8158Lnet/minecraft/class_1869;method_8158()Inamed getHeightLnet/minecraft/recipe/ShapedRecipe;getHeight()I
-
createPatternMatrix
static DefaultedList<Ingredient> createPatternMatrix(String[] pattern, Map<String,Ingredient> symbols, int width, int height)Compiles a pattern and series of symbols into a list of ingredients (the matrix) suitable for matching against a crafting grid.- Mappings:
Namespace Name Mixin selector official aLbtm;a([Ljava/lang/String;Ljava/util/Map;II)Lgs;intermediary method_8148Lnet/minecraft/class_1869;method_8148([Ljava/lang/String;Ljava/util/Map;II)Lnet/minecraft/class_2371;named createPatternMatrixLnet/minecraft/recipe/ShapedRecipe;createPatternMatrix([Ljava/lang/String;Ljava/util/Map;II)Lnet/minecraft/util/collection/DefaultedList;
-
removePadding
Removes empty space from around the recipe pattern.Turns patterns such as:
Into:" o" " a" " ""o" "a"- Returns:
- a new recipe pattern with all leading and trailing empty rows/columns removed
- Mappings:
Namespace Name Mixin selector official aLbtm;a([Ljava/lang/String;)[Ljava/lang/String;intermediary method_8146Lnet/minecraft/class_1869;method_8146([Ljava/lang/String;)[Ljava/lang/String;named removePaddingLnet/minecraft/recipe/ShapedRecipe;removePadding([Ljava/lang/String;)[Ljava/lang/String;
-
isEmpty
public boolean isEmpty()- Specified by:
isEmptyin interfaceRecipe<CraftingInventory>- Mappings:
Namespace Name Mixin selector official iLbth;i()Zintermediary method_31584Lnet/minecraft/class_1860;method_31584()Znamed isEmptyLnet/minecraft/recipe/Recipe;isEmpty()Z
-
findFirstSymbol
- Mappings:
Namespace Name Mixin selector official aLbtm;a(Ljava/lang/String;)Iintermediary method_8151Lnet/minecraft/class_1869;method_8151(Ljava/lang/String;)Inamed findFirstSymbolLnet/minecraft/recipe/ShapedRecipe;findFirstSymbol(Ljava/lang/String;)I
-
findLastSymbol
- Mappings:
Namespace Name Mixin selector official bLbtm;b(Ljava/lang/String;)Iintermediary method_8153Lnet/minecraft/class_1869;method_8153(Ljava/lang/String;)Inamed findLastSymbolLnet/minecraft/recipe/ShapedRecipe;findLastSymbol(Ljava/lang/String;)I
-
getPattern
- Mappings:
Namespace Name Mixin selector official aLbtm;a(Lcom/google/gson/JsonArray;)[Ljava/lang/String;intermediary method_8145Lnet/minecraft/class_1869;method_8145(Lcom/google/gson/JsonArray;)[Ljava/lang/String;named getPatternLnet/minecraft/recipe/ShapedRecipe;getPattern(Lcom/google/gson/JsonArray;)[Ljava/lang/String;
-
readSymbols
Reads the pattern symbols.- Returns:
- a mapping from a symbol to the ingredient it represents
- Mappings:
Namespace Name Mixin selector official cLbtm;c(Lcom/google/gson/JsonObject;)Ljava/util/Map;intermediary method_8157Lnet/minecraft/class_1869;method_8157(Lcom/google/gson/JsonObject;)Ljava/util/Map;named readSymbolsLnet/minecraft/recipe/ShapedRecipe;readSymbols(Lcom/google/gson/JsonObject;)Ljava/util/Map;
-
outputFromJson
- Mappings:
Namespace Name Mixin selector official aLbtm;a(Lcom/google/gson/JsonObject;)Lbqp;intermediary method_35228Lnet/minecraft/class_1869;method_35228(Lcom/google/gson/JsonObject;)Lnet/minecraft/class_1799;named outputFromJsonLnet/minecraft/recipe/ShapedRecipe;outputFromJson(Lcom/google/gson/JsonObject;)Lnet/minecraft/item/ItemStack;
-
getItemStack
- Mappings:
Namespace Name Mixin selector official bLbtm;b(Lcom/google/gson/JsonObject;)Lbql;intermediary method_8155Lnet/minecraft/class_1869;method_8155(Lcom/google/gson/JsonObject;)Lnet/minecraft/class_1792;named getItemStackLnet/minecraft/recipe/ShapedRecipe;getItemStack(Lcom/google/gson/JsonObject;)Lnet/minecraft/item/Item;
-