73 ::ll::TypedStorage<4, 4, ::ItemVersion> mItemParseVersion;
74 ::ll::TypedStorage<8, 32, ::std::string> mTextureAtlasFile;
75 ::ll::TypedStorage<4, 4, int> mFrameCount;
76 ::ll::TypedStorage<1, 1, bool> mAnimatesInToolbar;
77 ::ll::TypedStorage<1, 1, bool> mIsMirroredArt;
78 ::ll::TypedStorage<1, 1, ::SharedTypes::Legacy::UseAnimation> mUseAnim;
79 ::ll::TypedStorage<8, 32, ::std::string> mHoverTextColorFormat;
80 ::ll::TypedStorage<4, 4, int> mIconFrame;
81 ::ll::TypedStorage<4, 4, int> mAtlasFrame;
82 ::ll::TypedStorage<4, 4, int> mAtlasTotalFrames;
83 ::ll::TypedStorage<8, 32, ::std::string> mIconName;
84 ::ll::TypedStorage<8, 32, ::std::string> mAtlasName;
85 ::ll::TypedStorage<1, 1, uchar> mMaxStackSize;
86 ::ll::TypedStorage<2, 2, short> mId;
87 ::ll::TypedStorage<8, 32, ::std::string> mDescriptionId;
88 ::ll::TypedStorage<8, 48, ::HashedString> mRawNameId;
89 ::ll::TypedStorage<8, 32, ::std::string> mNamespace;
90 ::ll::TypedStorage<8, 48, ::HashedString> mFullName;
91 ::ll::TypedStorage<2, 2, short> mMaxDamage;
93 bool mHandEquipped : 1;
94 bool mIsStackedByData : 1;
95 bool mRequiresWorldBuilder : 1;
97 bool mFireResistant : 1;
98 bool mShouldDespawn : 1;
99 bool mAllowOffhand : 1;
100 bool mIgnoresPermissions : 1;
101 ::ll::TypedStorage<4, 4, int> mMaxUseDuration;
102 ::ll::TypedStorage<8, 32, ::BaseGameVersion> mMinRequiredBaseGameVersion;
103 ::ll::TypedStorage<8, 8, ::WeakPtr<::BlockType const>> mBlockType;
104 ::ll::TypedStorage<4, 4, ::CreativeItemCategory> mCreativeCategory;
105 ::ll::TypedStorage<8, 8, ::Item*> mCraftingRemainingItem;
106 ::ll::TypedStorage<8, 32, ::std::string> mCreativeGroup;
107 ::ll::TypedStorage<4, 4, float> mFurnaceBurnIntervalModifier;
108 ::ll::TypedStorage<4, 4, float> mFurnaceXPmultiplier;
109 ::ll::TypedStorage<1, 1, ::ItemCommandVisibility> mIsHiddenInCommands;
110 ::ll::TypedStorage<4, 4, ::Rarity> mBaseRarity;
111 ::ll::TypedStorage<4, 4, ::Interactions::Mining::MineBlockItemEffectType> mMineBlockType;
112 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::FoodItemComponentLegacy>> mFoodComponentLegacy;
113 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SeedItemComponentLegacy>> mSeedComponent;
114 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::CameraItemComponentLegacy>> mCameraComponentLegacy;
115 ::ll::TypedStorage<8, 24, ::std::vector<::std::function<void()>>> mOnResetBAICallbacks;
116 ::ll::TypedStorage<8, 24, ::std::vector<::ItemTag>> mTags;
128 virtual ::PuvLoadData::LoadResultWithTiming initServer(
132 ::JsonBetaState
const
135 virtual void tearDown();
137 virtual ::Item& setDescriptionId(::std::string
const& description);
139 virtual ::std::string
const& getDescriptionId()
const;
141 virtual int getMaxUseDuration(
::ItemStack const*)
const;
143 virtual ::WeakPtr<::BlockType const>
const& getBlockTypeForRendering()
const;
145 virtual bool isMusicDisk()
const;
149 virtual bool isComponentBased()
const;
151 virtual bool isHumanoidArmor()
const;
153 virtual bool isBlockPlanterItem()
const;
155 virtual bool isBucket()
const;
157 virtual bool isCandle()
const;
159 virtual bool isDamageable()
const;
161 virtual bool isDyeable()
const;
163 virtual bool isDye()
const;
165 virtual ::ItemColor getItemColor()
const;
167 virtual bool isFertilizer()
const;
169 virtual bool isFood()
const;
171 virtual bool isThrowable()
const;
173 virtual bool isUseable()
const;
175 virtual bool isTrimAllowed()
const;
177 virtual bool isBodyArmor()
const;
179 virtual ::ItemComponent* getComponent(
::HashedString const&)
const;
181 virtual ::IFoodItemComponent* getFood()
const;
183 virtual ::Item& setMaxDamage(
int maxDamage);
185 virtual ::Item& setMaxUseDuration(
int maxUseDuration);
187 virtual ::std::unique_ptr<::CompoundTag> buildNetworkTag()
const;
189 virtual void initializeFromNetwork(
::CompoundTag const& tag);
191 virtual ::std::vector<::std::string> validateFromNetwork(
::CompoundTag const&);
193 virtual ::BlockShape getBlockShape()
const;
195 virtual bool canBeDepleted()
const;
197 virtual bool canDestroySpecial(
::Block const&)
const;
199 virtual int getLevelDataForAuxValue(
int)
const;
201 virtual bool isStackedByData()
const;
203 virtual short getMaxDamage()
const;
205 virtual int getAttackDamage()
const;
207 virtual float getAttackDamageBonus(
::Actor const&)
const;
209 virtual bool isHandEquipped()
const;
213 virtual bool isPattern()
const;
215 virtual int getPatternIndex()
const;
217 virtual ::Rarity getBaseRarity()
const;
221 virtual uint getSwingDuration()
const;
223 virtual bool showsDurabilityInCreative()
const;
225 virtual bool isWearableThroughLootTable(
::CompoundTag const*)
const;
227 virtual bool canDestroyInCreative()
const;
229 virtual bool isDestructive(
int)
const;
231 virtual bool isLiquidClipItem()
const;
233 virtual bool shouldInteractionWithBlockBypassLiquid(
::Block const&)
const;
235 virtual bool requiresInteract()
const;
237 virtual ::std::string getHoverTextColor(
::ItemStackBase const& stack)
const;
239 virtual void appendFormattedHovertext(
248 virtual int getEnchantSlot()
const;
250 virtual int getEnchantValue()
const;
252 virtual int getArmorValue()
const;
254 virtual int getToughnessValue()
const;
256 virtual float getKnockbackResistanceValue()
const;
258 virtual ::std::optional<::SharedTypes::Legacy::LevelSoundEvent> getAttackMissSound()
const;
260 virtual ::std::optional<::SharedTypes::Legacy::LevelSoundEvent> getAttackHitSound()
const;
262 virtual ::std::optional<::SharedTypes::Legacy::LevelSoundEvent> getAttackCriticalHitSound()
const;
264 virtual ::SharedTypes::Legacy::LevelSoundEvent getBreakSound()
const;
266 virtual ::SharedTypes::Legacy::LevelSoundEvent getEquipSound()
const;
268 virtual bool isComplex()
const;
270 virtual bool isValidAuxValue(
int)
const;
272 virtual int getDamageChance(
int unbreaking)
const;
274 virtual float getViewDamping()
const;
276 virtual bool uniqueAuxValues()
const;
278 virtual bool isActorPlacerItem()
const;
280 virtual ::ItemTintStrategy getTintStrategy()
const;
292 virtual ::ActorDefinitionIdentifier getActorIdentifier(
::ItemStack const&)
const;
294 virtual int buildIdAux(
short auxValue,
::CompoundTag const*)
const;
296 virtual bool canUseOnSimTick()
const;
300 virtual bool canUseAsAttack()
const;
320 virtual ::std::string buildDescriptionName(
::ItemStackBase const& stack)
const;
322 virtual ::Bedrock::Safety::RedactableString
const buildRedactedDescriptionName(
::ItemStackBase const& stack)
const;
326 virtual ::std::string buildEffectDescriptionName(
::ItemStackBase const& stack,
bool)
const;
339 virtual ::HashedString
const& getCooldownCategory()
const;
341 virtual int getCooldownDuration()
const;
343 virtual ::SharedTypes::ItemCooldownType getCooldownType()
const;
349 virtual ::InHandUpdateType getInHandUpdateType(
354 bool const slotChanged
357 virtual bool validFishInteraction(
int)
const;
361 virtual ::SharedTypes::Legacy::ActorLocation getEquipLocation()
const;
363 virtual bool shouldEmitInUseGameEvents()
const;
365 virtual bool useInterruptedByAttacking()
const;
369 virtual ::PuvLoadData::LoadResultWithTiming initClient(
372 ::JsonBetaState
const,
377 virtual ::Item& setIconInfo(::std::string
const& name,
int index);
379 virtual ::ResolvedItemIconInfo getIconInfo(
::ItemStackBase const& item,
int,
bool)
const;
381 virtual ::std::string getInteractText(
::Player const& player)
const;
383 virtual int getAnimationFrameFor(
::Mob*,
bool,
::ItemStack const*,
bool)
const;
385 virtual bool isEmissive(
int auxValue)
const;
387 virtual ::Brightness getLightEmission(
int)
const;
389 virtual bool canBeCharged()
const;
402 virtual bool _shouldAutoCalculatePlacePos()
const;
404 virtual ::InteractionResult
411 MCAPI Item(::std::string
const& nameId,
short id);
415 MCAPI
void _helpChangeInventoryItemInPlace(
419 ::ItemAcquisitionMethod acquisitionMethod
422 MCAPI ::CoordinatorResult _sendTryPlaceBlockEvent(
431 MCAPI ::Item& addTag(
::ItemTag const& tag);
435 MCAPI ::Item& addTags(::std::initializer_list<::std::reference_wrapper<::ItemTag const>> tags);
437 MCAPI ::std::string buildCategoryDescriptionName()
const;
441 MCAPI
void clearTags();
443 MCAPI ::std::vector<::CommandName> getCommandNames()
const;
445 MCAPI
short getDamageValue(
::CompoundTag const* userData)
const;
447 MCAPI ::std::string getSerializedName()
const;
449 MCAPI
bool hasTag(
::ItemTag const& tag)
const;
453 MCAPI
bool isElytra()
const;
455 MCAPI
bool operator==(::Item
const& rhs)
const;
457 MCAPI ::Item& setAllowOffhand(
bool offhand);
459 MCAPI ::Item& setCreativeGroup(::std::string
const& group);
461 MCAPI ::Item& setFireResistant(
bool resistant);
463 MCAPI ::Item& setMinRequiredBaseGameVersion(
::BaseGameVersion const& baseGameVersion);
465 MCAPI ::Item& setShouldDespawn(
bool despawn);
467 MCAPI ::Item& setStackedByData(
bool isStackedByData);
472 MCAPI ::InteractionResult useOn(
489 MCAPI
static bool isElytraBroken(
int value);
497 MCAPI static ::std::string
const& ICON_DESCRIPTION_PREFIX();
499 MCAPI static ::std::string
const& TAG_DAMAGE();
501 MCAPI
static bool const& mGenerateDenyParticleEffect();
507 MCAPI
void* $ctor(::std::string
const& nameId,
short id);
520 MCAPI ::PuvLoadData::LoadResultWithTiming $initServer(
524 ::JsonBetaState
const
528 MCFOLD
void $tearDown();
530 MCAPI ::Item& $setDescriptionId(::std::string
const& description);
532 MCFOLD ::std::string
const& $getDescriptionId()
const;
534 MCAPI
int $getMaxUseDuration(
::ItemStack const*)
const;
536 MCFOLD ::WeakPtr<::BlockType const>
const& $getBlockTypeForRendering()
const;
538 MCFOLD
bool $isMusicDisk()
const;
542 MCFOLD
bool $isComponentBased()
const;
544 MCFOLD
bool $isHumanoidArmor()
const;
546 MCFOLD
bool $isBlockPlanterItem()
const;
548 MCFOLD
bool $isBucket()
const;
550 MCFOLD
bool $isCandle()
const;
552 MCAPI
bool $isDamageable()
const;
554 MCFOLD
bool $isDyeable()
const;
556 MCFOLD
bool $isDye()
const;
559 MCFOLD ::ItemColor $getItemColor()
const;
562 MCFOLD
bool $isFertilizer()
const;
564 MCFOLD
bool $isFood()
const;
566 MCFOLD
bool $isThrowable()
const;
568 MCFOLD
bool $isUseable()
const;
570 MCFOLD
bool $isTrimAllowed()
const;
572 MCFOLD
bool $isBodyArmor()
const;
574 MCFOLD ::ItemComponent* $getComponent(
::HashedString const&)
const;
576 MCAPI ::IFoodItemComponent* $getFood()
const;
578 MCAPI ::Item& $setMaxDamage(
int maxDamage);
580 MCAPI ::Item& $setMaxUseDuration(
int maxUseDuration);
582 MCAPI ::std::unique_ptr<::CompoundTag> $buildNetworkTag()
const;
586 MCFOLD ::std::vector<::std::string> $validateFromNetwork(
::CompoundTag const&);
588 MCFOLD ::BlockShape $getBlockShape()
const;
590 MCAPI
bool $canBeDepleted()
const;
592 MCFOLD
bool $canDestroySpecial(
::Block const&)
const;
594 MCFOLD
int $getLevelDataForAuxValue(
int)
const;
596 MCAPI
bool $isStackedByData()
const;
598 MCFOLD
short $getMaxDamage()
const;
600 MCFOLD
int $getAttackDamage()
const;
602 MCFOLD
float $getAttackDamageBonus(
::Actor const&)
const;
604 MCAPI
bool $isHandEquipped()
const;
608 MCFOLD
bool $isPattern()
const;
610 MCFOLD
int $getPatternIndex()
const;
612 MCAPI ::Rarity $getBaseRarity()
const;
616 MCFOLD uint $getSwingDuration()
const;
618 MCFOLD
bool $showsDurabilityInCreative()
const;
620 MCFOLD
bool $isWearableThroughLootTable(
::CompoundTag const*)
const;
622 MCFOLD
bool $canDestroyInCreative()
const;
624 MCFOLD
bool $isDestructive(
int)
const;
626 MCFOLD
bool $isLiquidClipItem()
const;
628 MCFOLD
bool $shouldInteractionWithBlockBypassLiquid(
::Block const&)
const;
630 MCFOLD
bool $requiresInteract()
const;
632 MCAPI ::std::string $getHoverTextColor(
::ItemStackBase const& stack)
const;
634 MCAPI
void $appendFormattedHovertext(
643 MCFOLD
int $getEnchantSlot()
const;
645 MCFOLD
int $getEnchantValue()
const;
647 MCFOLD
int $getArmorValue()
const;
649 MCFOLD
int $getToughnessValue()
const;
651 MCFOLD
float $getKnockbackResistanceValue()
const;
653 MCFOLD ::std::optional<::SharedTypes::Legacy::LevelSoundEvent> $getAttackMissSound()
const;
655 MCFOLD ::std::optional<::SharedTypes::Legacy::LevelSoundEvent> $getAttackHitSound()
const;
657 MCFOLD ::std::optional<::SharedTypes::Legacy::LevelSoundEvent> $getAttackCriticalHitSound()
const;
659 MCFOLD ::SharedTypes::Legacy::LevelSoundEvent $getBreakSound()
const;
661 MCAPI ::SharedTypes::Legacy::LevelSoundEvent $getEquipSound()
const;
663 MCFOLD
bool $isComplex()
const;
665 MCFOLD
bool $isValidAuxValue(
int)
const;
667 MCAPI
int $getDamageChance(
int unbreaking)
const;
669 MCFOLD
float $getViewDamping()
const;
671 MCFOLD
bool $uniqueAuxValues()
const;
673 MCFOLD
bool $isActorPlacerItem()
const;
675 MCFOLD ::ItemTintStrategy $getTintStrategy()
const;
687 MCAPI ::ActorDefinitionIdentifier $getActorIdentifier(
::ItemStack const&)
const;
689 MCAPI
int $buildIdAux(
short auxValue,
::CompoundTag const*)
const;
691 MCFOLD
bool $canUseOnSimTick()
const;
695 MCFOLD
bool $canUseAsAttack()
const;
715 MCAPI ::std::string $buildDescriptionName(
::ItemStackBase const& stack)
const;
717 MCAPI ::Bedrock::Safety::RedactableString
const $buildRedactedDescriptionName(
::ItemStackBase const& stack)
const;
721 MCAPI ::std::string $buildEffectDescriptionName(
::ItemStackBase const& stack,
bool)
const;
734 MCAPI ::HashedString
const& $getCooldownCategory()
const;
736 MCAPI
int $getCooldownDuration()
const;
738 MCFOLD ::SharedTypes::ItemCooldownType $getCooldownType()
const;
744 MCAPI ::InHandUpdateType $getInHandUpdateType(
749 bool const slotChanged
752 MCFOLD
bool $validFishInteraction(
int)
const;
757 MCFOLD ::SharedTypes::Legacy::ActorLocation $getEquipLocation()
const;
760 MCFOLD
bool $shouldEmitInUseGameEvents()
const;
762 MCFOLD
bool $useInterruptedByAttacking()
const;
767 MCAPI ::PuvLoadData::LoadResultWithTiming $initClient(
770 ::JsonBetaState
const,
776 MCFOLD ::Item& $setIconInfo(::std::string
const& name,
int index);
778 MCAPI ::ResolvedItemIconInfo $getIconInfo(
::ItemStackBase const& item,
int,
bool)
const;
780 MCAPI ::std::string $getInteractText(
::Player const& player)
const;
782 MCFOLD
int $getAnimationFrameFor(
::Mob*,
bool,
::ItemStack const*,
bool)
const;
784 MCAPI
bool $isEmissive(
int auxValue)
const;
786 MCFOLD ::Brightness $getLightEmission(
int)
const;
788 MCFOLD
bool $canBeCharged()
const;
801 MCFOLD
bool $_shouldAutoCalculatePlacePos()
const;
803 MCAPI ::InteractionResult
812 MCAPI
static void** $vftable();