Class ItemUsage

java.lang.Object
net.minecraft.item.ItemUsage

public class ItemUsage extends Object
Utility methods related to item usage.
Mappings:
Namespace Name
official cay
intermediary net/minecraft/class_5328
named net/minecraft/item/ItemUsage
  • Constructor Details

    • ItemUsage

      public ItemUsage()
  • Method Details

    • consumeHeldItem

      public static TypedActionResult<ItemStack> consumeHeldItem(World world, PlayerEntity player, Hand hand)
      Consumes the item that player holds. This should be called inside Item.use(net.minecraft.world.World, net.minecraft.entity.player.PlayerEntity, net.minecraft.util.Hand) for consumable items, such as milk bucket.
      Returns:
      the action result of consuming
      Mappings:
      Namespace Name Mixin selector
      official a Lcay;a(Lcgx;Lbuc;Lbai;)Lbak;
      intermediary method_29282 Lnet/minecraft/class_5328;method_29282(Lnet/minecraft/class_1937;Lnet/minecraft/class_1657;Lnet/minecraft/class_1268;)Lnet/minecraft/class_1271;
      named consumeHeldItem Lnet/minecraft/item/ItemUsage;consumeHeldItem(Lnet/minecraft/world/World;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/util/Hand;)Lnet/minecraft/util/TypedActionResult;
    • exchangeStack

      public static ItemStack exchangeStack(ItemStack inputStack, PlayerEntity player, ItemStack outputStack, boolean creativeOverride)
      Returns the stack to put in the player's hand after exchanging stacks.

      Exchanging stacks causes the input stack to be decremented and the output stack to be inserted to the player's inventory (or dropped if it cannot be inserted.) For example, milking a cow exchanges one empty bucket and one milk bucket. If creativeOverride is true and the player is in creative mode, the player only receives the new stack when they do not have the output stack.

      Returns:
      the stack to put in the player's hand after exchanging stacks
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lcay;a(Lcax;Lbuc;Lcax;Z)Lcax;
      intermediary method_30270 Lnet/minecraft/class_5328;method_30270(Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;Z)Lnet/minecraft/class_1799;
      named exchangeStack Lnet/minecraft/item/ItemUsage;exchangeStack(Lnet/minecraft/item/ItemStack;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/item/ItemStack;Z)Lnet/minecraft/item/ItemStack;
    • exchangeStack

      public static ItemStack exchangeStack(ItemStack inputStack, PlayerEntity player, ItemStack outputStack)
      Returns the stack to put in the player's hand after exchanging stacks.

      Exchanging stacks causes the input stack to be decremented and the output stack to be inserted to the player's inventory (or dropped if it cannot be inserted.) For example, milking a cow exchanges one empty bucket and one milk bucket. If the player is in creative mode, the player only receives the new stack when they do not have the output stack.

      Returns:
      the stack to put in the player's hand after exchanging stacks
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lcay;a(Lcax;Lbuc;Lcax;)Lcax;
      intermediary method_30012 Lnet/minecraft/class_5328;method_30012(Lnet/minecraft/class_1799;Lnet/minecraft/class_1657;Lnet/minecraft/class_1799;)Lnet/minecraft/class_1799;
      named exchangeStack Lnet/minecraft/item/ItemUsage;exchangeStack(Lnet/minecraft/item/ItemStack;Lnet/minecraft/entity/player/PlayerEntity;Lnet/minecraft/item/ItemStack;)Lnet/minecraft/item/ItemStack;
    • spawnItemContents

      public static void spawnItemContents(ItemEntity itemEntity, Stream<ItemStack> contents)
      Spawns item entity's contents at the item entity's position. This should be called inside Item.onItemEntityDestroyed(net.minecraft.entity.ItemEntity) for items that hold other items, such as shulker boxes.
      See Also:
      Mappings:
      Namespace Name Mixin selector
      official a Lcay;a(Lbqv;Ljava/util/stream/Stream;)V
      intermediary method_33263 Lnet/minecraft/class_5328;method_33263(Lnet/minecraft/class_1542;Ljava/util/stream/Stream;)V
      named spawnItemContents Lnet/minecraft/item/ItemUsage;spawnItemContents(Lnet/minecraft/entity/ItemEntity;Ljava/util/stream/Stream;)V