Class CustomCookingRecipe<C extends CustomCookingRecipe<C,​T>,​T extends org.bukkit.inventory.CookingRecipe<?>>

java.lang.Object
me.wolfyscript.customcrafting.recipes.types.CustomRecipe<C,​NoneResultTarget>
me.wolfyscript.customcrafting.recipes.types.CustomCookingRecipe<C,​T>
All Implemented Interfaces:
ICustomRecipe<C,​NoneResultTarget>, ICustomVanillaRecipe<T>, me.wolfyscript.utilities.util.Keyed
Direct Known Subclasses:
CustomBlastRecipe, CustomCampfireRecipe, CustomFurnaceRecipe, CustomSmokerRecipe

public abstract class CustomCookingRecipe<C extends CustomCookingRecipe<C,​T>,​T extends org.bukkit.inventory.CookingRecipe<?>> extends CustomRecipe<C,​NoneResultTarget> implements ICustomVanillaRecipe<T>
  • Constructor Details

    • CustomCookingRecipe

      protected CustomCookingRecipe(me.wolfyscript.utilities.util.NamespacedKey namespacedKey, me.wolfyscript.utilities.libraries.com.fasterxml.jackson.databind.JsonNode node)
    • CustomCookingRecipe

      protected CustomCookingRecipe()
    • CustomCookingRecipe

      protected CustomCookingRecipe(CustomCookingRecipe<C,​T> customCookingRecipe)
  • Method Details

    • clone

      public abstract C clone()
      Specified by:
      clone in interface ICustomRecipe<C extends CustomCookingRecipe<C,​T>,​T extends org.bukkit.inventory.CookingRecipe<?>>
      Specified by:
      clone in class CustomRecipe<C extends CustomCookingRecipe<C,​T>,​NoneResultTarget>
    • validType

      public abstract boolean validType(org.bukkit.Material material)
      Parameters:
      material - The type of the block.
      Returns:
      if the recipe can be used inside that type of block!
    • getSource

      public Ingredient getSource()
    • getIngredient

      public Ingredient getIngredient(int slot)
      Specified by:
      getIngredient in interface ICustomRecipe<C extends CustomCookingRecipe<C,​T>,​T extends org.bukkit.inventory.CookingRecipe<?>>
    • setIngredient

      public void setIngredient(int slot, Ingredient ingredient)
      Description copied from interface: ICustomRecipe
      Used to set Ingredient from cache of the RecipeCreator
      Specified by:
      setIngredient in interface ICustomRecipe<C extends CustomCookingRecipe<C,​T>,​T extends org.bukkit.inventory.CookingRecipe<?>>
      Parameters:
      slot - The slot of the ingredient in the recipe.
      ingredient - The ingredient to set
    • setIngredient

      public void setIngredient(Ingredient ingredient)
    • setCookingTime

      public void setCookingTime(int cookingTime)
    • getExp

      public float getExp()
    • getCookingTime

      public int getCookingTime()
    • setExp

      public void setExp(float exp)
    • getRecipeChoice

      protected org.bukkit.inventory.RecipeChoice getRecipeChoice()
    • prepareMenu

      public void prepareMenu(me.wolfyscript.utilities.api.inventory.gui.GuiHandler<CCCache> guiHandler, me.wolfyscript.utilities.api.inventory.gui.GuiCluster<CCCache> cluster)
      Specified by:
      prepareMenu in interface ICustomRecipe<C extends CustomCookingRecipe<C,​T>,​T extends org.bukkit.inventory.CookingRecipe<?>>
    • renderMenu

      public void renderMenu(me.wolfyscript.utilities.api.inventory.gui.GuiWindow<CCCache> guiWindow, me.wolfyscript.utilities.api.inventory.gui.GuiUpdate<CCCache> event)
      Specified by:
      renderMenu in interface ICustomRecipe<C extends CustomCookingRecipe<C,​T>,​T extends org.bukkit.inventory.CookingRecipe<?>>
    • writeToJson

      public void writeToJson(me.wolfyscript.utilities.libraries.com.fasterxml.jackson.core.JsonGenerator gen, me.wolfyscript.utilities.libraries.com.fasterxml.jackson.databind.SerializerProvider serializerProvider) throws IOException
      Specified by:
      writeToJson in interface ICustomRecipe<C extends CustomCookingRecipe<C,​T>,​T extends org.bukkit.inventory.CookingRecipe<?>>
      Overrides:
      writeToJson in class CustomRecipe<C extends CustomCookingRecipe<C,​T>,​NoneResultTarget>
      Throws:
      IOException