Class ShapelessRecipe

  • All Implemented Interfaces:
    Recipe, Keyed

    public class ShapelessRecipe
    extends Object
    implements Recipe, Keyed
    Represents a shapeless recipe, where the arrangement of the ingredients on the crafting grid does not matter.
    • Method Detail

      • addIngredient

        @NotNull
        public ShapelessRecipe addIngredient​(@NotNull
                                             MaterialData ingredient)
        Adds the specified ingredient.
        Parameters:
        ingredient - The ingredient to add.
        Returns:
        The changed recipe, so you can chain calls.
      • addIngredient

        @NotNull
        public ShapelessRecipe addIngredient​(@NotNull
                                             Material ingredient)
        Adds the specified ingredient.
        Parameters:
        ingredient - The ingredient to add.
        Returns:
        The changed recipe, so you can chain calls.
      • addIngredient

        @Deprecated
        @NotNull
        public ShapelessRecipe addIngredient​(@NotNull
                                             Material ingredient,
                                             int rawdata)
        Deprecated.
        Magic value
        Adds the specified ingredient.
        Parameters:
        ingredient - The ingredient to add.
        rawdata - The data value, or -1 to allow any data value.
        Returns:
        The changed recipe, so you can chain calls.
      • addIngredient

        @NotNull
        public ShapelessRecipe addIngredient​(int count,
                                             @NotNull
                                             MaterialData ingredient)
        Adds multiples of the specified ingredient.
        Parameters:
        count - How many to add (can't be more than 9!)
        ingredient - The ingredient to add.
        Returns:
        The changed recipe, so you can chain calls.
      • addIngredient

        @NotNull
        public ShapelessRecipe addIngredient​(int count,
                                             @NotNull
                                             Material ingredient)
        Adds multiples of the specified ingredient.
        Parameters:
        count - How many to add (can't be more than 9!)
        ingredient - The ingredient to add.
        Returns:
        The changed recipe, so you can chain calls.
      • addIngredient

        @Deprecated
        @NotNull
        public ShapelessRecipe addIngredient​(int count,
                                             @NotNull
                                             Material ingredient,
                                             int rawdata)
        Deprecated.
        Magic value
        Adds multiples of the specified ingredient.
        Parameters:
        count - How many to add (can't be more than 9!)
        ingredient - The ingredient to add.
        rawdata - The data value, or -1 to allow any data value.
        Returns:
        The changed recipe, so you can chain calls.
      • removeIngredient

        @NotNull
        public ShapelessRecipe removeIngredient​(@NotNull
                                                RecipeChoice ingredient)
        Removes an ingredient from the list.
        Parameters:
        ingredient - The ingredient to remove
        Returns:
        The changed recipe.
      • removeIngredient

        @NotNull
        public ShapelessRecipe removeIngredient​(@NotNull
                                                Material ingredient)
        Removes an ingredient from the list. If the ingredient occurs multiple times, only one instance of it is removed. Only removes exact matches, with a data value of 0.
        Parameters:
        ingredient - The ingredient to remove
        Returns:
        The changed recipe.
      • removeIngredient

        @NotNull
        public ShapelessRecipe removeIngredient​(@NotNull
                                                MaterialData ingredient)
        Removes an ingredient from the list. If the ingredient occurs multiple times, only one instance of it is removed. If the data value is -1, only ingredients with a -1 data value will be removed.
        Parameters:
        ingredient - The ingredient to remove
        Returns:
        The changed recipe.
      • removeIngredient

        @NotNull
        public ShapelessRecipe removeIngredient​(int count,
                                                @NotNull
                                                Material ingredient)
        Removes multiple instances of an ingredient from the list. If there are less instances then specified, all will be removed. Only removes exact matches, with a data value of 0.
        Parameters:
        count - The number of copies to remove.
        ingredient - The ingredient to remove
        Returns:
        The changed recipe.
      • removeIngredient

        @NotNull
        public ShapelessRecipe removeIngredient​(int count,
                                                @NotNull
                                                MaterialData ingredient)
        Removes multiple instances of an ingredient from the list. If there are less instances then specified, all will be removed. If the data value is -1, only ingredients with a -1 data value will be removed.
        Parameters:
        count - The number of copies to remove.
        ingredient - The ingredient to remove.
        Returns:
        The changed recipe.
      • removeIngredient

        @Deprecated
        @NotNull
        public ShapelessRecipe removeIngredient​(@NotNull
                                                Material ingredient,
                                                int rawdata)
        Deprecated.
        Magic value
        Removes an ingredient from the list. If the ingredient occurs multiple times, only one instance of it is removed. If the data value is -1, only ingredients with a -1 data value will be removed.
        Parameters:
        ingredient - The ingredient to remove
        rawdata - The data value;
        Returns:
        The changed recipe.
      • removeIngredient

        @Deprecated
        @NotNull
        public ShapelessRecipe removeIngredient​(int count,
                                                @NotNull
                                                Material ingredient,
                                                int rawdata)
        Deprecated.
        Magic value
        Removes multiple instances of an ingredient from the list. If there are less instances then specified, all will be removed. If the data value is -1, only ingredients with a -1 data value will be removed.
        Parameters:
        count - The number of copies to remove.
        ingredient - The ingredient to remove.
        rawdata - The data value.
        Returns:
        The changed recipe.
      • getResult

        @NotNull
        public ItemStack getResult()
        Get the result of this recipe.
        Specified by:
        getResult in interface Recipe
        Returns:
        The result stack.
      • getIngredientList

        @NotNull
        public List<ItemStack> getIngredientList()
        Get the list of ingredients used for this recipe.
        Returns:
        The input list
      • getKey

        @NotNull
        public NamespacedKey getKey()
        Description copied from interface: Keyed
        Return the namespaced identifier for this object.
        Specified by:
        getKey in interface Keyed
        Returns:
        this object's key
      • getGroup

        @NotNull
        public String getGroup()
        Get the group of this recipe. Recipes with the same group may be grouped together when displayed in the client.
        Returns:
        recipe group. An empty string denotes no group. May not be null.
      • setGroup

        public void setGroup​(@NotNull
                             String group)
        Set the group of this recipe. Recipes with the same group may be grouped together when displayed in the client.
        Parameters:
        group - recipe group. An empty string denotes no group. May not be null.