Class PotionItem

java.lang.Object
net.minecraft.item.Item
net.minecraft.item.PotionItem
All Implemented Interfaces:
ItemConvertible, ToggleableFeature
Direct Known Subclasses:
ThrowablePotionItem

public class PotionItem extends Item
Mappings:
Namespace Name
official cgh
intermediary net/minecraft/class_1812
named net/minecraft/item/PotionItem
  • Field Details

    • MAX_USE_TIME

      private static final int MAX_USE_TIME
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lcgh;a:I
      intermediary field_30917 Lnet/minecraft/class_1812;field_30917:I
      named MAX_USE_TIME Lnet/minecraft/item/PotionItem;MAX_USE_TIME:I
  • Constructor Details

    • PotionItem

      public PotionItem(Item.Settings settings)
      Mappings:
      Namespace Name Mixin selector
      official <init> Lcfn;<init>(Lcfn$a;)V
      intermediary <init> Lnet/minecraft/class_1792;<init>(Lnet/minecraft/class_1792$class_1793;)V
      named <init> Lnet/minecraft/item/Item;<init>(Lnet/minecraft/item/Item$Settings;)V
  • Method Details

    • getDefaultStack

      public ItemStack getDefaultStack()
      Returns the default stack for this item.

      Items that expect certain NBT data in the item stack should override this method to return the stack with the NBT data.

      Overrides:
      getDefaultStack in class Item
      Returns:
      the default stack for this item
      Mappings:
      Namespace Name Mixin selector
      official ad_ Lcfn;ad_()Lcfs;
      intermediary method_7854 Lnet/minecraft/class_1792;method_7854()Lnet/minecraft/class_1799;
      named getDefaultStack Lnet/minecraft/item/Item;getDefaultStack()Lnet/minecraft/item/ItemStack;
    • finishUsing

      public ItemStack finishUsing(ItemStack stack, World world, LivingEntity user)
      Called when an entity finishes using the item, such as eating food or drinking a potion. This method handles eating food by default.

      This method is called on both the logical client and logical server, so take caution when overriding this method. The logical side can be checked using World.isClient.

      user might not be a player in some cases. For example, this occurs when a fox eats food or when a wandering trader drinks milk.

      Overrides:
      finishUsing in class Item
      Returns:
      the new item stack after using the item
      Mappings:
      Namespace Name Mixin selector
      official a Lcfn;a(Lcfs;Lcmf;Lbft;)Lcfs;
      intermediary method_7861 Lnet/minecraft/class_1792;method_7861(Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Lnet/minecraft/class_1309;)Lnet/minecraft/class_1799;
      named finishUsing Lnet/minecraft/item/Item;finishUsing(Lnet/minecraft/item/ItemStack;Lnet/minecraft/world/World;Lnet/minecraft/entity/LivingEntity;)Lnet/minecraft/item/ItemStack;
    • useOnBlock

      public ActionResult useOnBlock(ItemUsageContext context)
      Called when an item is used on a block.

      This method is called on both the logical client and logical server, so take caution when using this method. The logical side can be checked using context.getWorld().isClient().

      Overrides:
      useOnBlock in class Item
      Parameters:
      context - the usage context
      Returns:
      an action result that specifies if using the item on a block was successful.
      Mappings:
      Namespace Name Mixin selector
      official a Lcfn;a(Lcic;)Lbdu;
      intermediary method_7884 Lnet/minecraft/class_1792;method_7884(Lnet/minecraft/class_1838;)Lnet/minecraft/class_1269;
      named useOnBlock Lnet/minecraft/item/Item;useOnBlock(Lnet/minecraft/item/ItemUsageContext;)Lnet/minecraft/util/ActionResult;
    • getMaxUseTime

      public int getMaxUseTime(ItemStack stack)
      Returns the maximum use (right-click) time of this item, in ticks. Once a player has used an item for said number of ticks, they stop using it, and Item.finishUsing(net.minecraft.item.ItemStack, net.minecraft.world.World, net.minecraft.entity.LivingEntity) is called.
      Overrides:
      getMaxUseTime in class Item
      Returns:
      the maximum use (right-click) time of this item, in ticks
      Mappings:
      Namespace Name Mixin selector
      official b Lcfn;b(Lcfs;)I
      intermediary method_7881 Lnet/minecraft/class_1792;method_7881(Lnet/minecraft/class_1799;)I
      named getMaxUseTime Lnet/minecraft/item/Item;getMaxUseTime(Lnet/minecraft/item/ItemStack;)I
    • getUseAction

      public UseAction getUseAction(ItemStack stack)
      Returns the use action the item should perform.
      Overrides:
      getUseAction in class Item
      Returns:
      the use action the item should perform
      Mappings:
      Namespace Name Mixin selector
      official c Lcfn;c(Lcfs;)Lchl;
      intermediary method_7853 Lnet/minecraft/class_1792;method_7853(Lnet/minecraft/class_1799;)Lnet/minecraft/class_1839;
      named getUseAction Lnet/minecraft/item/Item;getUseAction(Lnet/minecraft/item/ItemStack;)Lnet/minecraft/util/UseAction;
    • use

      public TypedActionResult<ItemStack> use(World world, PlayerEntity user, Hand hand)
      Called when the player uses (or starts using) the item. The use action, by default, is bound to the right mouse button. This method checks the player's hunger when the item is a food, and will pass in all other cases by default.

      If the item can be used for multiple ticks, then this will only be called when the player starts using it. After that, Item.usageTick(net.minecraft.world.World, net.minecraft.entity.LivingEntity, net.minecraft.item.ItemStack, int) is called every tick until the player finishes using the item.

      This method is called on both the logical client and logical server, so take caution when overriding this method. The logical side can be checked using world.isClient().

      Overrides:
      use in class Item
      Parameters:
      world - the world the item was used in
      user - the player who used the item
      hand - the hand used
      Returns:
      a typed action result that specifies whether using the item was successful. The action result contains the new item stack that the player's hand will be set to.
      Mappings:
      Namespace Name Mixin selector
      official a Lcfn;a(Lcmf;Lbyi;Lbdt;)Lbdv;
      intermediary method_7836 Lnet/minecraft/class_1792;method_7836(Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1271;
      named use Lnet/minecraft/item/Item;use(Lnet/minecraft/world/World;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/Hand;)Lnet/minecraft/util/TypedActionResult;
    • getTranslationKey

      public String getTranslationKey(ItemStack stack)
      Gets the translation key of this item using the provided item stack for context.
      Overrides:
      getTranslationKey in class Item
      Mappings:
      Namespace Name Mixin selector
      official j Lcfn;j(Lcfs;)Ljava/lang/String;
      intermediary method_7866 Lnet/minecraft/class_1792;method_7866(Lnet/minecraft/class_1799;)Ljava/lang/String;
      named getTranslationKey Lnet/minecraft/item/Item;getTranslationKey(Lnet/minecraft/item/ItemStack;)Ljava/lang/String;
    • appendTooltip

      public void appendTooltip(ItemStack stack, @Nullable @Nullable World world, List<Text> tooltip, TooltipContext context)
      Called by the client to append tooltips to an item. Subclasses can override this and add custom tooltips to tooltip list.
      Overrides:
      appendTooltip in class Item
      Parameters:
      tooltip - the list of tooltips to show
      Mappings:
      Namespace Name Mixin selector
      official a Lcfn;a(Lcfs;Lcmf;Ljava/util/List;Lchj;)V
      intermediary method_7851 Lnet/minecraft/class_1792;method_7851(Lnet/minecraft/class_1799;Lnet/minecraft/class_1937;Ljava/util/List;Lnet/minecraft/class_1836;)V
      named appendTooltip Lnet/minecraft/item/Item;appendTooltip(Lnet/minecraft/item/ItemStack;Lnet/minecraft/world/World;Ljava/util/List;Lnet/minecraft/client/item/TooltipContext;)V