Package io.papermc.paper.potion

# Class PotionMix

java.lang.Object
io.papermc.paper.potion.PotionMix

All Implemented Interfaces:
  `net.kyori.adventure.key.Keyed`, `Keyed`

@NonExtendable public class PotionMix extends Object implements Keyed
Represents a potion mix made in a Brewing Stand.

## Constructor Summary

Constructors
Constructor
Description
`PotionMix(@NotNull NamespacedKey key, @NotNull ItemStack result, @NotNull RecipeChoice input, @NotNull RecipeChoice ingredient)`
Creates a new potion mix.

## Method Summary

Modifier and Type
Method
Description
`boolean`
`equals(Object o)`
`@NotNull RecipeChoice`
`getIngredient()`
Gets the ingredient in the top slot of the brewing stand.
`@NotNull RecipeChoice`
`getInput()`
Gets the input for the bottom 3 slots in the brewing stand.
`@NotNull NamespacedKey`
`getKey()`
Return the namespaced identifier for this object.
`@NotNull ItemStack`
`getResult()`
Gets the resulting itemstack after the brew has finished.
`int`
`hashCode()`
`String`
`toString()`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Methods inherited from interface org.bukkit.Keyed

`key`

## Constructor Details

### PotionMix

public PotionMix(@NotNull @NotNull NamespacedKey key, @NotNull @NotNull ItemStack result, @NotNull @NotNull RecipeChoice input, @NotNull @NotNull RecipeChoice ingredient)
Creates a new potion mix. Add it to the server with `PotionBrewer.addPotionMix(PotionMix)`.

Parameters:
  `key` - a unique key for the mix
  `result` - the resulting itemstack that will appear in the 3 bottom slots
  `input` - the input placed into the bottom 3 slots
  `ingredient` - the ingredient placed into the top slot

## Method Details

### getKey

@NotNull public @NotNull 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

### getResult

@NotNull public @NotNull ItemStack getResult()
Gets the resulting itemstack after the brew has finished.

Returns:
  the result itemstack

### getInput

@NotNull public @NotNull RecipeChoice getInput()
Gets the input for the bottom 3 slots in the brewing stand.

Returns:
  the bottom 3 slot ingredients

### getIngredient

@NotNull public @NotNull RecipeChoice getIngredient()
Gets the ingredient in the top slot of the brewing stand.

Returns:
  the top slot input

### toString

public String toString()

Overrides:
  `toString` in class `Object`

### equals

public boolean equals(Object o)

Overrides:
  `equals` in class `Object`

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Object`