Class AbstractCookingRecipe

java.lang.Object
net.minecraft.recipe.AbstractCookingRecipe
All Implemented Interfaces:
Recipe<Inventory>
Direct Known Subclasses:
BlastingRecipe, CampfireCookingRecipe, SmeltingRecipe, SmokingRecipe

public abstract class AbstractCookingRecipe extends Object implements Recipe<Inventory>
Mappings:
Namespace Name
official clr
intermediary net/minecraft/class_1874
named net/minecraft/recipe/AbstractCookingRecipe
  • Field Details

    • type

      protected final RecipeType<?> type
      Mappings:
      Namespace Name Mixin selector
      official a Lclr;a:Lcmn;
      intermediary field_17544 Lnet/minecraft/class_1874;field_17544:Lnet/minecraft/class_3956;
      named type Lnet/minecraft/recipe/AbstractCookingRecipe;type:Lnet/minecraft/recipe/RecipeType;
    • category

      protected final CookingRecipeCategory category
      Mappings:
      Namespace Name Mixin selector
      official b Lclr;b:Lclx;
      intermediary field_40241 Lnet/minecraft/class_1874;field_40241:Lnet/minecraft/class_7709;
      named category Lnet/minecraft/recipe/AbstractCookingRecipe;category:Lnet/minecraft/recipe/book/CookingRecipeCategory;
    • group

      protected final String group
      Mappings:
      Namespace Name Mixin selector
      official c Lclr;c:Ljava/lang/String;
      intermediary field_9062 Lnet/minecraft/class_1874;field_9062:Ljava/lang/String;
      named group Lnet/minecraft/recipe/AbstractCookingRecipe;group:Ljava/lang/String;
    • ingredient

      protected final Ingredient ingredient
      Mappings:
      Namespace Name Mixin selector
      official d Lclr;d:Lcmg;
      intermediary field_9061 Lnet/minecraft/class_1874;field_9061:Lnet/minecraft/class_1856;
      named ingredient Lnet/minecraft/recipe/AbstractCookingRecipe;ingredient:Lnet/minecraft/recipe/Ingredient;
    • result

      protected final ItemStack result
      Mappings:
      Namespace Name Mixin selector
      official e Lclr;e:Lcjf;
      intermediary field_9059 Lnet/minecraft/class_1874;field_9059:Lnet/minecraft/class_1799;
      named result Lnet/minecraft/recipe/AbstractCookingRecipe;result:Lnet/minecraft/item/ItemStack;
    • experience

      protected final float experience
      Mappings:
      Namespace Name Mixin selector
      official f Lclr;f:F
      intermediary field_9057 Lnet/minecraft/class_1874;field_9057:F
      named experience Lnet/minecraft/recipe/AbstractCookingRecipe;experience:F
    • cookingTime

      protected final int cookingTime
      Mappings:
      Namespace Name Mixin selector
      official g Lclr;g:I
      intermediary field_9058 Lnet/minecraft/class_1874;field_9058:I
      named cookingTime Lnet/minecraft/recipe/AbstractCookingRecipe;cookingTime:I
  • Constructor Details

    • AbstractCookingRecipe

      public AbstractCookingRecipe(RecipeType<?> type, String group, CookingRecipeCategory category, Ingredient ingredient, ItemStack result, float experience, int cookingTime)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lclr;<init>(Lcmn;Ljava/lang/String;Lclx;Lcmg;Lcjf;FI)V
      intermediary <init> Lnet/minecraft/class_1874;<init>(Lnet/minecraft/class_3956;Ljava/lang/String;Lnet/minecraft/class_7709;Lnet/minecraft/class_1856;Lnet/minecraft/class_1799;FI)V
      named <init> Lnet/minecraft/recipe/AbstractCookingRecipe;<init>(Lnet/minecraft/recipe/RecipeType;Ljava/lang/String;Lnet/minecraft/recipe/book/CookingRecipeCategory;Lnet/minecraft/recipe/Ingredient;Lnet/minecraft/item/ItemStack;FI)V
  • Method Details

    • matches

      public boolean matches(Inventory inventory, World world)
      Returns whether this recipe matches the contents inside the inventory in the given world.

      The world currently is only used by the map cloning recipe to prevent duplication of explorer maps.

      Specified by:
      matches in interface Recipe<Inventory>
      Parameters:
      inventory - the input inventory
      world - the input world
      Returns:
      whether this recipe matches the contents inside the inventory in the given world
      Mappings:
      Namespace Name Mixin selector
      official a Lcmj;a(Lbgr;Lcpv;)Z
      intermediary method_8115 Lnet/minecraft/class_1860;method_8115(Lnet/minecraft/class_1263;Lnet/minecraft/class_1937;)Z
      named matches Lnet/minecraft/recipe/Recipe;matches(Lnet/minecraft/inventory/Inventory;Lnet/minecraft/world/World;)Z
    • craft

      public ItemStack craft(Inventory inventory, DynamicRegistryManager registryManager)
      Crafts this recipe.

      This method does not perform side effects on the inventory.

      This method should return a new item stack on each call.

      Specified by:
      craft in interface Recipe<Inventory>
      Parameters:
      inventory - the input inventory
      Returns:
      the resulting item stack
      Mappings:
      Namespace Name Mixin selector
      official a Lcmj;a(Lbgr;Lhr;)Lcjf;
      intermediary method_8116 Lnet/minecraft/class_1860;method_8116(Lnet/minecraft/class_1263;Lnet/minecraft/class_5455;)Lnet/minecraft/class_1799;
      named craft Lnet/minecraft/recipe/Recipe;craft(Lnet/minecraft/inventory/Inventory;Lnet/minecraft/registry/DynamicRegistryManager;)Lnet/minecraft/item/ItemStack;
    • fits

      public boolean fits(int width, int height)
      Returns whether this recipe will fit into the given grid size.

      This is currently only used by recipe book.

      Specified by:
      fits in interface Recipe<Inventory>
      Parameters:
      width - the width of the input inventory
      height - the height of the input inventory
      Returns:
      whether this recipe will fit into the given grid size
      Mappings:
      Namespace Name Mixin selector
      official a Lcmj;a(II)Z
      intermediary method_8113 Lnet/minecraft/class_1860;method_8113(II)Z
      named fits Lnet/minecraft/recipe/Recipe;fits(II)Z
    • getIngredients

      public DefaultedList<Ingredient> getIngredients()
      Returns 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:
      getIngredients in interface Recipe<Inventory>
      Returns:
      the ingredients accepted as inputs for this recipe
      Mappings:
      Namespace Name Mixin selector
      official a Lcmj;a()Lhn;
      intermediary method_8117 Lnet/minecraft/class_1860;method_8117()Lnet/minecraft/class_2371;
      named getIngredients Lnet/minecraft/recipe/Recipe;getIngredients()Lnet/minecraft/util/collection/DefaultedList;
    • getExperience

      public float getExperience()
      Mappings:
      Namespace Name Mixin selector
      official b Lclr;b()F
      intermediary method_8171 Lnet/minecraft/class_1874;method_8171()F
      named getExperience Lnet/minecraft/recipe/AbstractCookingRecipe;getExperience()F
    • getResult

      public ItemStack getResult(DynamicRegistryManager registryManager)
      Returns a preview of the recipe's output.

      The returned stack should not be modified. To obtain the actual output, call Recipe.craft(Inventory, DynamicRegistryManager).

      Specified by:
      getResult in interface Recipe<Inventory>
      Returns:
      a preview of the recipe's output
      Mappings:
      Namespace Name Mixin selector
      official a Lcmj;a(Lhr;)Lcjf;
      intermediary method_8110 Lnet/minecraft/class_1860;method_8110(Lnet/minecraft/class_5455;)Lnet/minecraft/class_1799;
      named getResult Lnet/minecraft/recipe/Recipe;getResult(Lnet/minecraft/registry/DynamicRegistryManager;)Lnet/minecraft/item/ItemStack;
    • getGroup

      public String getGroup()
      Returns a group this recipe belongs in, or an empty string. This is only used by the recipe book.

      The group string is arbitrary, and is not rendered anywhere; in the recipe book, recipes with the same group will belong to the same cell in the grid of recipes. If the string is empty, this recipe will belong to its own cell.

      Specified by:
      getGroup in interface Recipe<Inventory>
      Returns:
      a group this recipe belongs in, or an empty string
      Mappings:
      Namespace Name Mixin selector
      official c Lcmj;c()Ljava/lang/String;
      intermediary method_8112 Lnet/minecraft/class_1860;method_8112()Ljava/lang/String;
      named getGroup Lnet/minecraft/recipe/Recipe;getGroup()Ljava/lang/String;
    • getCookingTime

      public int getCookingTime()
      Mappings:
      Namespace Name Mixin selector
      official d Lclr;d()I
      intermediary method_8167 Lnet/minecraft/class_1874;method_8167()I
      named getCookingTime Lnet/minecraft/recipe/AbstractCookingRecipe;getCookingTime()I
    • getType

      public RecipeType<?> getType()
      Returns the type of this recipe.

      The type in the recipe JSON format is the serializer instead.

      Specified by:
      getType in interface Recipe<Inventory>
      Returns:
      the type of this recipe
      Mappings:
      Namespace Name Mixin selector
      official e Lcmj;e()Lcmn;
      intermediary method_17716 Lnet/minecraft/class_1860;method_17716()Lnet/minecraft/class_3956;
      named getType Lnet/minecraft/recipe/Recipe;getType()Lnet/minecraft/recipe/RecipeType;
    • getCategory

      public CookingRecipeCategory getCategory()
      Mappings:
      Namespace Name Mixin selector
      official f Lclr;f()Lclx;
      intermediary method_45438 Lnet/minecraft/class_1874;method_45438()Lnet/minecraft/class_7709;
      named getCategory Lnet/minecraft/recipe/AbstractCookingRecipe;getCategory()Lnet/minecraft/recipe/book/CookingRecipeCategory;