net.minecraft.world.item

public final class ItemStack

implements DataComponentHolder

dcv
net.minecraft.world.item.ItemStack
net.minecraft.class_1799
net.minecraft.item.ItemStack

Field summary

Modifier and TypeField
private static final List<Component>
m
OP_NBT_WARNING
field_55546
OPERATOR_WARNINGS
private static final Component
n
UNBREAKABLE_TOOLTIP
field_56297
UNBREAKABLE_TEXT
public static final com.mojang.serialization.MapCodec<ItemStack>
a
MAP_CODEC
field_55709
MAP_CODEC
public static final com.mojang.serialization.Codec<ItemStack>
b
CODEC
field_24671
CODEC
public static final com.mojang.serialization.Codec<ItemStack>
c
SINGLE_ITEM_CODEC
field_49747
UNCOUNTED_CODEC
public static final com.mojang.serialization.Codec<ItemStack>
d
STRICT_CODEC
field_51397
VALIDATED_CODEC
public static final com.mojang.serialization.Codec<ItemStack>
e
STRICT_SINGLE_ITEM_CODEC
field_51398
VALIDATED_UNCOUNTED_CODEC
public static final com.mojang.serialization.Codec<ItemStack>
f
OPTIONAL_CODEC
field_49266
OPTIONAL_CODEC
public static final com.mojang.serialization.Codec<ItemStack>
g
SIMPLE_ITEM_CODEC
field_49267
REGISTRY_ENTRY_CODEC
public static final StreamCodec<RegistryFriendlyByteBuf, ItemStack>
h
OPTIONAL_STREAM_CODEC
field_49268
OPTIONAL_PACKET_CODEC
public static final StreamCodec<RegistryFriendlyByteBuf, ItemStack>
i
OPTIONAL_UNTRUSTED_STREAM_CODEC
field_58141
LENGTH_PREPENDED_OPTIONAL_PACKET_CODEC
public static final StreamCodec<RegistryFriendlyByteBuf, ItemStack>
j
STREAM_CODEC
field_48349
PACKET_CODEC
public static final StreamCodec<RegistryFriendlyByteBuf, List<ItemStack>>
k
OPTIONAL_LIST_STREAM_CODEC
field_49269
OPTIONAL_LIST_PACKET_CODEC
private static final org.slf4j.Logger
o
LOGGER
field_8033
LOGGER
public static final ItemStack
l
EMPTY
field_8037
EMPTY
private static final Component
p
DISABLED_ITEM_TOOLTIP
field_40211
DISABLED_TEXT
private int
q
count
field_8031
count
private int
r
popTime
field_8030
bobbingAnimationTime
private final Item
s
item
field_8038
item
final PatchedDataComponentMap
t
components
field_49270
components
private Entity
u
entityRepresentation
field_24093
holder

Constructor summary

ModifierConstructor
public (ItemLike item)
public (Holder<Item> entry)
public (Holder<Item> item, int count, DataComponentPatch changes)
public (Holder<Item> itemEntry, int count)
public (ItemLike item, int count)
private (ItemLike item, int count, PatchedDataComponentMap components)
private (Void v)

Method summary

Modifier and TypeMethod
public static com.mojang.serialization.DataResult<ItemStack>
a(dcv arg0)
validateStrict(ItemStack arg0)
method_57372(class_1799 arg0)
validate(ItemStack stack)
private static StreamCodec<RegistryFriendlyByteBuf, ItemStack>
b(zm<wx, ko> arg0)
createOptionalStreamCodec(StreamCodec<RegistryFriendlyByteBuf, DataComponentPatch> arg0)
method_68810(class_9139<class_9129, class_9326> arg0)
createOptionalPacketCodec(PacketCodec<RegistryByteBuf, ComponentChanges> componentsPacketCodec)
public static StreamCodec<RegistryFriendlyByteBuf, ItemStack>
a(zm<wx, dcv> arg0)
validatedStreamCodec(StreamCodec<RegistryFriendlyByteBuf, ItemStack> arg0)
method_59693(class_9139<class_9129, class_1799> arg0)
createExtraValidatingPacketCodec(PacketCodec<RegistryByteBuf, ItemStack> basePacketCodec)
public Optional<TooltipComponent>
b()
getTooltipImage()
method_32347()
getTooltipData()
public DataComponentMap
a()
getComponents()
method_57353()
getComponents()
public DataComponentMap
c()
getPrototype()
method_58658()
getDefaultComponents()
public DataComponentPatch
d()
getComponentsPatch()
method_57380()
getComponentChanges()
public DataComponentMap
e()
immutableComponents()
method_65359()
getImmutableComponents()
public boolean
d(kp<?> arg0)
hasNonDefault(DataComponentType<?> arg0)
method_65797(class_9331<?> arg0)
hasChangedComponent(ComponentType<?> type)
public static com.mojang.serialization.DataResult<Unit>
a(kn arg0)
validateComponents(DataComponentMap arg0)
method_59691(class_9323 arg0)
validateComponents(ComponentMap components)
public boolean
f()
isEmpty()
method_7960()
isEmpty()
public boolean
a(cyd arg0)
isItemEnabled(FeatureFlagSet arg0)
method_45435(class_7699 arg0)
isItemEnabled(FeatureSet enabledFeatures)
public ItemStack
a(int arg0)
split(int arg0)
method_7971(int arg0)
split(int amount)
public ItemStack
g()
copyAndClear()
method_51164()
copyAndEmpty()
public Item
h()
getItem()
method_7909()
getItem()
public Holder<Item>
i()
getItemHolder()
method_41409()
getRegistryEntry()
public boolean
a(bae<dcr> arg0)
is(TagKey<Item> arg0)
method_31573(class_6862<class_1792> arg0)
isIn(TagKey<Item> tag)
public boolean
a(dcr arg0)
is(Item arg0)
method_31574(class_1792 arg0)
isOf(Item item)
public boolean
a(Predicate<jl<dcr>> arg0)
is(Predicate<Holder<Item>> arg0)
method_41407(Predicate<class_6880<class_1792>> arg0)
itemMatches(Predicate<RegistryEntry<Item>> predicate)
public boolean
a(jl<dcr> arg0)
is(Holder<Item> arg0)
method_41406(class_6880<class_1792> arg0)
itemMatches(RegistryEntry<Item> itemEntry)
public boolean
a(jp<dcr> arg0)
is(HolderSet<Item> arg0)
method_53187(class_6885<class_1792> arg0)
isIn(RegistryEntryList<Item> registryEntryList)
public Stream<TagKey<Item>>
j()
getTags()
method_40133()
streamTags()
public InteractionResult
a(dgq arg0)
useOn(UseOnContext arg0)
method_7981(class_1838 arg0)
useOnBlock(ItemUsageContext context)
public float
a(eeb arg0)
getDestroySpeed(BlockState arg0)
method_7924(class_2680 arg0)
getMiningSpeedMultiplier(BlockState state)
public InteractionResult
a(dmu arg0, cut arg1, bxi arg2)
use(Level arg0, Player arg1, InteractionHand arg2)
method_7913(class_1937 arg0, class_1657 arg1, class_1268 arg2)
use(World world, PlayerEntity user, Hand hand)
public ItemStack
a(dmu arg0, cam arg1)
finishUsingItem(Level arg0, LivingEntity arg1)
method_7910(class_1937 arg0, class_1309 arg1)
finishUsing(World world, LivingEntity user)
private ItemStack
a(cam arg0, dcv arg1)
applyAfterUseComponentSideEffects(LivingEntity arg0, ItemStack arg1)
method_62837(class_1309 arg0, class_1799 arg1)
applyRemainderAndCooldown(LivingEntity user, ItemStack stack)
public int
k()
getMaxStackSize()
method_7914()
getMaxCount()
public boolean
l()
isStackable()
method_7946()
isStackable()
public boolean
m()
isDamageableItem()
method_7963()
isDamageable()
public boolean
n()
isDamaged()
method_7986()
isDamaged()
public int
o()
getDamageValue()
method_7919()
getDamage()
public void
b(int arg0)
setDamageValue(int arg0)
method_7974(int arg0)
setDamage(int damage)
public int
p()
getMaxDamage()
method_7936()
getMaxDamage()
public boolean
q()
isBroken()
method_61657()
shouldBreak()
public boolean
r()
nextDamageWillBreak()
method_63692()
willBreakNextUse()
public void
a(int arg0, aub arg1, auc arg2, Consumer<dcr> arg3)
hurtAndBreak(int arg0, ServerLevel arg1, ServerPlayer arg2, Consumer<Item> arg3)
method_7956(int arg0, class_3218 arg1, class_3222 arg2, Consumer<class_1792> arg3)
damage(int amount, ServerWorld world, ServerPlayerEntity player, Consumer<Item> breakCallback)
private int
a(int arg0, aub arg1, auc arg2)
processDurabilityChange(int arg0, ServerLevel arg1, ServerPlayer arg2)
method_61651(int arg0, class_3218 arg1, class_3222 arg2)
calculateDamage(int baseDamage, ServerWorld world, ServerPlayerEntity player)
private void
a(int arg0, auc arg1, Consumer<dcr> arg2)
applyDamage(int arg0, ServerPlayer arg1, Consumer<Item> arg2)
method_61652(int arg0, class_3222 arg1, Consumer<class_1792> arg2)
onDurabilityChange(int damage, ServerPlayerEntity player, Consumer<Item> breakCallback)
public void
a(int arg0, cut arg1)
hurtWithoutBreaking(int arg0, Player arg1)
method_61653(int arg0, class_1657 arg1)
damage(int amount, PlayerEntity player)
public void
a(int arg0, cam arg1, bxi arg2)
hurtAndBreak(int arg0, LivingEntity arg1, InteractionHand arg2)
method_71012(int arg0, class_1309 arg1, class_1268 arg2)
damage(int amount, LivingEntity entity, Hand hand)
public void
a(int arg0, cam arg1, bzw arg2)
hurtAndBreak(int arg0, LivingEntity arg1, EquipmentSlot arg2)
method_7970(int arg0, class_1309 arg1, class_1304 arg2)
damage(int amount, LivingEntity entity, EquipmentSlot slot)
public ItemStack
a(int arg0, dmt arg1, cam arg2, bzw arg3)
hurtAndConvertOnBreak(int arg0, ItemLike arg1, LivingEntity arg2, EquipmentSlot arg3)
method_60986(int arg0, class_1935 arg1, class_1309 arg2, class_1304 arg3)
damage(int amount, ItemConvertible itemAfterBreaking, LivingEntity entity, EquipmentSlot slot)
public boolean
s()
isBarVisible()
method_31578()
isItemBarVisible()
public int
t()
getBarWidth()
method_31579()
getItemBarStep()
public int
u()
getBarColor()
method_31580()
getItemBarColor()
public boolean
a(dak arg0, cyw arg1, cut arg2)
overrideStackedOnOther(Slot arg0, ClickAction arg1, Player arg2)
method_31575(class_1735 arg0, class_5536 arg1, class_1657 arg2)
onStackClicked(Slot slot, ClickType clickType, PlayerEntity player)
public boolean
a(dcv arg0, dak arg1, cyw arg2, cut arg3, cbd arg4)
overrideOtherStackedOnMe(ItemStack arg0, Slot arg1, ClickAction arg2, Player arg3, SlotAccess arg4)
method_31576(class_1799 arg0, class_1735 arg1, class_5536 arg2, class_1657 arg3, class_5630 arg4)
onClicked(ItemStack stack, Slot slot, ClickType clickType, PlayerEntity player, StackReference cursorStackReference)
public boolean
a(cam arg0, cam arg1)
hurtEnemy(LivingEntity arg0, LivingEntity arg1)
method_7979(class_1309 arg0, class_1309 arg1)
postHit(LivingEntity target, LivingEntity user)
public void
b(cam arg0, cam arg1)
postHurtEnemy(LivingEntity arg0, LivingEntity arg1)
method_59979(class_1309 arg0, class_1309 arg1)
postDamageEntity(LivingEntity target, LivingEntity user)
public void
a(dmu arg0, eeb arg1, jb arg2, cut arg3)
mineBlock(Level arg0, BlockState arg1, BlockPos arg2, Player arg3)
method_7952(class_1937 arg0, class_2680 arg1, class_2338 arg2, class_1657 arg3)
postMine(World world, BlockState state, BlockPos pos, PlayerEntity miner)
public boolean
b(eeb arg0)
isCorrectToolForDrops(BlockState arg0)
method_7951(class_2680 arg0)
isSuitableFor(BlockState state)
public InteractionResult
a(cut arg0, cam arg1, bxi arg2)
interactLivingEntity(Player arg0, LivingEntity arg1, InteractionHand arg2)
method_7920(class_1657 arg0, class_1309 arg1, class_1268 arg2)
useOnEntity(PlayerEntity user, LivingEntity entity, Hand hand)
public ItemStack
v()
copy()
method_7972()
copy()
public ItemStack
c(int arg0)
copyWithCount(int arg0)
method_46651(int arg0)
copyWithCount(int count)
public ItemStack
a(dmt arg0)
transmuteCopy(ItemLike arg0)
method_60503(class_1935 arg0)
withItem(ItemConvertible item)
public ItemStack
a(dmt arg0, int arg1)
transmuteCopy(ItemLike arg0, int arg1)
method_56701(class_1935 arg0, int arg1)
copyComponentsToNewStack(ItemConvertible item, int count)
private ItemStack
b(dmt arg0, int arg1)
transmuteCopyIgnoreEmpty(ItemLike arg0, int arg1)
method_56704(class_1935 arg0, int arg1)
copyComponentsToNewStackIgnoreEmpty(ItemConvertible item, int count)
public static boolean
a(dcv arg0, dcv arg1)
matches(ItemStack arg0, ItemStack arg1)
method_7973(class_1799 arg0, class_1799 arg1)
areEqual(ItemStack left, ItemStack right)
public static boolean
a(List<dcv> arg0, List<dcv> arg1)
listMatches(List<ItemStack> arg0, List<ItemStack> arg1)
method_57362(List<class_1799> arg0, List<class_1799> arg1)
stacksEqual(List<ItemStack> left, List<ItemStack> right)
public static boolean
b(dcv arg0, dcv arg1)
isSameItem(ItemStack arg0, ItemStack arg1)
method_7984(class_1799 arg0, class_1799 arg1)
areItemsEqual(ItemStack left, ItemStack right)
public static boolean
c(dcv arg0, dcv arg1)
isSameItemSameComponents(ItemStack arg0, ItemStack arg1)
method_31577(class_1799 arg0, class_1799 arg1)
areItemsAndComponentsEqual(ItemStack stack, ItemStack otherStack)
public static com.mojang.serialization.MapCodec<ItemStack>
a(String arg0)
lenientOptionalFieldOf(String arg0)
method_56702(String arg0)
createOptionalCodec(String fieldName)
public static int
b(dcv arg0)
hashItemAndComponents(ItemStack arg0)
method_57355(class_1799 arg0)
hashCode(ItemStack stack)
public static int
a(List<dcv> arg0)
hashStackList(List<ItemStack> arg0)
method_57361(List<class_1799> arg0)
listHashCode(List<ItemStack> stacks)
public void
a(dmu arg0, bzm arg1, bzw arg2)
inventoryTick(Level arg0, Entity arg1, EquipmentSlot arg2)
method_7917(class_1937 arg0, class_1297 arg1, class_1304 arg2)
inventoryTick(World world, Entity entity, EquipmentSlot slot)
public void
a(cut arg0, int arg1)
onCraftedBy(Player arg0, int arg1)
method_7982(class_1657 arg0, int arg1)
onCraftByPlayer(PlayerEntity player, int amount)
public void
a(dmu arg0)
onCraftedBySystem(Level arg0)
method_54466(class_1937 arg0)
onCraftByCrafter(World world)
public int
a(cam arg0)
getUseDuration(LivingEntity arg0)
method_7935(class_1309 arg0)
getMaxUseTime(LivingEntity user)
public ItemUseAnimation
w()
getUseAnimation()
method_7976()
getUseAction()
public void
a(dmu arg0, cam arg1, int arg2)
releaseUsing(Level arg0, LivingEntity arg1, int arg2)
method_7930(class_1937 arg0, class_1309 arg1, int arg2)
onStoppedUsing(World world, LivingEntity user, int remainingUseTicks)
public boolean
x()
useOnRelease()
method_7967()
isUsedOnRelease()
public <T> T
b(kp<T> arg0, T arg1)
set(DataComponentType<T> arg0, T arg1)
method_57379(class_9331<T> arg0, T arg1)
set(ComponentType<T> type, T value)
public <T> void
a(kp<T> arg0, kl arg1)
copyFrom(DataComponentType<T> arg0, DataComponentGetter arg1)
method_66697(class_9331<T> arg0, class_9473 arg1)
copy(ComponentType<T> type, ComponentsAccess from)
public <T, U> T
a(kp<T> arg0, T arg1, U arg2, BiFunction<T, U, T> arg3)
update(DataComponentType<T> arg0, T arg1, U arg2, BiFunction<T, U, T> arg3)
method_57367(class_9331<T> arg0, T arg1, U arg2, BiFunction<T, U, T> arg3)
apply(ComponentType<T> type, T defaultValue, U change, BiFunction<T, U, T> applier)
public <T> T
a(kp<T> arg0, T arg1, UnaryOperator<T> arg2)
update(DataComponentType<T> arg0, T arg1, UnaryOperator<T> arg2)
method_57368(class_9331<T> arg0, T arg1, UnaryOperator<T> arg2)
apply(ComponentType<T> type, T defaultValue, UnaryOperator<T> applier)
public <T> T
e(kp<? extends T> arg0)
remove(DataComponentType<? extends T> arg0)
method_57381(class_9331<? extends T> arg0)
remove(ComponentType<? extends T> type)
public void
a(ko arg0)
applyComponentsAndValidate(DataComponentPatch arg0)
method_59692(class_9326 arg0)
applyChanges(ComponentChanges changes)
public void
b(ko arg0)
applyComponents(DataComponentPatch arg0)
method_57366(class_9326 arg0)
applyUnvalidatedChanges(ComponentChanges changes)
public void
b(kn arg0)
applyComponents(DataComponentMap arg0)
method_57365(class_9323 arg0)
applyComponentsFrom(ComponentMap components)
public Component
y()
getHoverName()
method_7964()
getName()
public Component
z()
getCustomName()
method_65130()
getCustomName()
public Component
A()
getItemName()
method_63693()
getItemName()
public Component
B()
getStyledHoverName()
method_63015()
getFormattedName()
public <T extends TooltipProvider> void
a(kp<T> arg0, dcr$b arg1, dfz arg2, Consumer<xo> arg3, dek arg4)
addToTooltip(DataComponentType<T> arg0, Item$TooltipContext arg1, TooltipDisplay arg2, Consumer<Component> arg3, TooltipFlag arg4)
method_57369(class_9331<T> arg0, class_1792$class_9635 arg1, class_10712 arg2, Consumer<class_2561> arg3, class_1836 arg4)
appendComponentTooltip(ComponentType<T> componentType, Item$TooltipContext context, TooltipDisplayComponent displayComponent, Consumer<Text> textConsumer, TooltipType type)
public List<Component>
a(dcr$b arg0, cut arg1, dek arg2)
getTooltipLines(Item$TooltipContext arg0, Player arg1, TooltipFlag arg2)
method_7950(class_1792$class_9635 arg0, class_1657 arg1, class_1836 arg2)
getTooltip(Item$TooltipContext context, PlayerEntity player, TooltipType type)
public void
a(dcr$b arg0, dfz arg1, cut arg2, dek arg3, Consumer<xo> arg4)
addDetailsToTooltip(Item$TooltipContext arg0, TooltipDisplay arg1, Player arg2, TooltipFlag arg3, Consumer<Component> arg4)
method_67194(class_1792$class_9635 arg0, class_10712 arg1, class_1657 arg2, class_1836 arg3, Consumer<class_2561> arg4)
appendTooltip(Item$TooltipContext context, TooltipDisplayComponent displayComponent, PlayerEntity player, TooltipType type, Consumer<Text> textConsumer)
private void
a(Consumer<xo> arg0, dfz arg1, cut arg2)
addAttributeTooltips(Consumer<Component> arg0, TooltipDisplay arg1, Player arg2)
method_57363(Consumer<class_2561> arg0, class_10712 arg1, class_1657 arg2)
appendAttributeModifiersTooltip(Consumer<Text> textConsumer, TooltipDisplayComponent displayComponent, PlayerEntity player)
public boolean
C()
hasFoil()
method_7958()
hasGlint()
public Rarity
D()
getRarity()
method_7932()
getRarity()
public boolean
E()
isEnchantable()
method_7923()
isEnchantable()
public void
a(jl<dji> arg0, int arg1)
enchant(Holder<Enchantment> arg0, int arg1)
method_7978(class_6880<class_1887> arg0, int arg1)
addEnchantment(RegistryEntry<Enchantment> enchantment, int level)
public boolean
F()
isEnchanted()
method_7942()
hasEnchantments()
public ItemEnchantments
G()
getEnchantments()
method_58657()
getEnchantments()
public boolean
H()
isFramed()
method_7961()
isInFrame()
public void
a(bzm arg0)
setEntityRepresentation(Entity arg0)
method_27320(class_1297 arg0)
setHolder(Entity holder)
public ItemFrame
I()
getFrame()
method_7945()
getFrame()
public Entity
J()
getEntityRepresentation()
method_27319()
getHolder()
public void
a(bzx arg0, org.apache.commons.lang3.function.TriConsumer<jl<cbn>, cbq, dfm$b> arg1)
forEachModifier(EquipmentSlotGroup arg0, org.apache.commons.lang3.function.TriConsumer<Holder<Attribute>, AttributeModifier, ItemAttributeModifiers$Display> arg1)
method_60617(class_9274 arg0, org.apache.commons.lang3.function.TriConsumer<class_6880<class_1320>, class_1322, class_9285$class_11193> arg1)
applyAttributeModifier(AttributeModifierSlot slot, org.apache.commons.lang3.function.TriConsumer<RegistryEntry<EntityAttribute>, EntityAttributeModifier, AttributeModifiersComponent$Display> attributeModifierConsumer)
public void
a(bzw arg0, BiConsumer<jl<cbn>, cbq> arg1)
forEachModifier(EquipmentSlot arg0, BiConsumer<Holder<Attribute>, AttributeModifier> arg1)
method_57354(class_1304 arg0, BiConsumer<class_6880<class_1320>, class_1322> arg1)
applyAttributeModifiers(EquipmentSlot slot, BiConsumer<RegistryEntry<EntityAttribute>, EntityAttributeModifier> attributeModifierConsumer)
public Component
K()
getDisplayName()
method_7954()
toHoverableText()
public boolean
a(eef arg0)
canPlaceOnBlockInAdventureMode(BlockInWorld arg0)
method_57357(class_2694 arg0)
canPlaceOn(CachedBlockPosition pos)
public boolean
b(eef arg0)
canBreakBlockInAdventureMode(BlockInWorld arg0)
method_57373(class_2694 arg0)
canBreak(CachedBlockPosition pos)
public int
L()
getPopTime()
method_7965()
getBobbingAnimationTime()
public void
d(int arg0)
setPopTime(int arg0)
method_7912(int arg0)
setBobbingAnimationTime(int bobbingAnimationTime)
public int
M()
getCount()
method_7947()
getCount()
public void
e(int arg0)
setCount(int arg0)
method_7939(int arg0)
setCount(int count)
public void
f(int arg0)
limitSize(int arg0)
method_58408(int arg0)
capCount(int maxCount)
public void
g(int arg0)
grow(int arg0)
method_7933(int arg0)
increment(int amount)
public void
h(int arg0)
shrink(int arg0)
method_7934(int arg0)
decrement(int amount)
public void
a(int arg0, cam arg1)
consume(int arg0, LivingEntity arg1)
method_57008(int arg0, class_1309 arg1)
decrementUnlessCreative(int amount, LivingEntity entity)
public ItemStack
b(int arg0, cam arg1)
consumeAndReturn(int arg0, LivingEntity arg1)
method_60504(int arg0, class_1309 arg1)
splitUnlessCreative(int amount, LivingEntity entity)
public void
b(dmu arg0, cam arg1, int arg2)
onUseTick(Level arg0, LivingEntity arg1, int arg2)
method_7949(class_1937 arg0, class_1309 arg1, int arg2)
usageTick(World world, LivingEntity user, int remainingUseTicks)
public void
a(cqz arg0)
onDestroyed(ItemEntity arg0)
method_33262(class_1542 arg0)
onItemEntityDestroyed(ItemEntity entity)
public boolean
a(byb arg0)
canBeHurtBy(DamageSource arg0)
method_58407(class_1282 arg0)
takesDamageFrom(DamageSource source)
public boolean
c(dcv arg0)
isValidRepairItem(ItemStack arg0)
method_61655(class_1799 arg0)
canRepairWith(ItemStack ingredient)
public boolean
a(eeb arg0, dmu arg1, jb arg2, cut arg3)
canDestroyBlock(BlockState arg0, Level arg1, BlockPos arg2, Player arg3)
method_66334(class_2680 arg0, class_1937 arg1, class_2338 arg2, class_1657 arg3)
canMine(BlockState state, World world, BlockPos pos, PlayerEntity player)