56 ::ll::TypedStorage<1, 1, bool> mCompareAux;
57 ::ll::TypedStorage<1, 1, bool> mCompareRelevantUserData;
58 ::ll::TypedStorage<1, 1, bool> mCompareDamage;
63 LLNDAPI std::string getTypeName()
const;
64 LLNDAPI std::string getDescriptionName()
const;
65 LLNDAPI
bool isEnchanted()
const;
66 LLNDAPI
bool removeEnchants()
const;
67 LLAPI
void deserializeComponents(
IDataInput& input);
73 ::std::unique_ptr<::CompoundTag> mUserData;
77 bool mValid_DeprecatedSeeComment;
80 ::std::chrono::steady_clock::time_point mPickupTime;
81 ::std::vector<::BlockType const*> mCanPlaceOn;
82 uint64 mCanPlaceOnHash;
83 ::std::vector<::BlockType const*> mCanDestroy;
84 uint64 mCanDestroyHash;
86 ::std::unique_ptr<::ItemInstance> mChargedItem;
96 virtual ~ItemStackBase();
98 virtual void reinit(
::Item const& item,
int count,
int auxValue);
100 virtual void reinit(
::Block const& block,
int count);
102 virtual void reinit(::std::string_view
const name,
int count,
int auxValue);
104 virtual void setNull(::std::optional<::std::string> reason);
106 virtual ::std::string toString()
const;
108 virtual ::std::string toDebugString()
const;
116 MCAPI ItemStackBase(::ItemStackBase
const& rhs);
118 MCAPI ItemStackBase(
::Block const& block,
int count = 1,
::CompoundTag const* _userData =
nullptr);
121 ItemStackBase(::std::string_view name,
int count = 1,
int auxValue = 0,
::CompoundTag const* _userData =
nullptr);
123 MCAPI
void _addCustomUserDataCommon(::std::unique_ptr<::CompoundTag>&& tag);
125 MCAPI
void _checkForItemWorldCompatibility();
127 MCAPI ::std::string _getHoverFormattingPrefix()
const;
130 MCAPI
bool _hasFullOrPartialTag(
::HashedString const&
string)
const;
133 MCAPI
void _loadComponents(
::CompoundTag const& compoundTag);
139 MCAPI
bool _setItem(
int id,
bool doRemap);
141 MCAPI
void _setItemFromBlockName(
::HashedString const& blockName);
143 MCAPI
void _updateCompareHashes();
145 MCAPI
void add(
int inCount);
147 MCAPI
bool addComponents(
::Json::Value const& root, ::std::string& errorMsg);
151 MCAPI
void clearChargedItem();
153 MCAPI
void clearCustomLore();
155 MCAPI ::ItemEnchants constructItemEnchantsFromUserData()
const;
157 MCAPI ::SharedTypes::Legacy::ArmorSlot getArmorSlot()
const;
159 MCAPI
short getAuxValue()
const;
161 MCAPI
int getBaseRepairCost()
const;
164 MCAPI ::Block
const* getBlockForRendering()
const;
167 MCAPI ::WeakPtr<::BlockType const>
const& getBlockType()
const;
170 MCAPI ::WeakPtr<::BlockType const>
const& getBlockTypeForRendering()
const;
173 MCAPI ::mce::Color getColor()
const;
175 MCAPI ::ComponentItem
const* getComponentItem()
const;
177 MCAPI ::std::vector<::std::string> getCustomLore()
const;
179 MCAPI ::std::string getCustomName()
const;
181 MCAPI
short getDamageValue()
const;
183 MCAPI ::std::string getDescriptionId()
const;
185 MCAPI ::ItemDescriptor getDescriptor()
const;
187 MCAPI ::std::unique_ptr<::DynamicProperties> getDynamicProperties()
const;
189 MCAPI ::std::optional<::std::variant<double, float, bool, ::std::string, ::Vec3>>
190 getDynamicProperty(::std::string
const& key, ::std::string
const& collectionName)
const;
193 MCAPI ::Bedrock::Safety::RedactableString getFormattedHovertext(
::Level& level,
bool showCategory)
const;
196 MCAPI ::HashedString
const& getFullNameHash()
const;
199 MCAPI ::std::string getHoverName()
const;
201 MCAPI ::ResolvedItemIconInfo getIconInfo(
int newAnimationFrame,
bool inInventoryPane)
const;
204 MCAPI
short getId()
const;
206 MCAPI
int getIdAux()
const;
209 MCAPI
int getIdAuxEnchanted()
const;
211 MCAPI
bool getIsValidPickupTime()
const;
214 MCAPI ::Item
const* getItem()
const;
216 MCAPI
short getMaxDamage()
const;
218 MCAPI uchar getMaxStackSize()
const;
220 MCAPI ::std::string getName()
const;
222 MCAPI ::std::unique_ptr<::CompoundTag> getNetworkUserData()
const;
224 MCAPI ::HashedString
const& getRawNameHash()
const;
226 MCAPI ::std::string getRawNameId()
const;
228 MCAPI ::Bedrock::Safety::RedactableString getRedactedCustomName()
const;
230 MCAPI ::Bedrock::Safety::RedactableString getRedactedHoverName()
const;
232 MCAPI ::Bedrock::Safety::RedactableString getRedactedName()
const;
235 MCAPI ::HashedString
const& getRendererId()
const;
237 MCAPI
bool hasChargedItem()
const;
239 MCAPI
bool hasComponent(::std::string
const& name)
const;
242 MCAPI
bool hasContainerData()
const;
244 MCAPI
bool hasCustomHoverName()
const;
246 MCAPI
bool hasSameAuxValue(::ItemStackBase
const& other)
const;
248 MCAPI
bool hasSameUserData(::ItemStackBase
const& other)
const;
250 MCAPI
bool hurtAndBreak(
int deltaDamage,
::Actor* owner);
252 MCAPI
void init(
::BlockType const& block,
int count);
254 MCAPI
void init(
int id,
int count_,
int aux_,
bool doRemap);
256 MCAPI
void init(
::Item const& item,
int count,
int auxValue,
::CompoundTag const* userData,
bool doRemap);
258 MCAPI
bool isArmorItem()
const;
261 MCAPI
bool isAttachableEquipment()
const;
263 MCAPI
bool isBlock()
const;
265 MCAPI
bool isBlockInstance(
::HashedString const& blockName)
const;
268 MCAPI
bool isDamageableItem()
const;
271 MCAPI
bool isDamaged()
const;
274 MCAPI
bool isEnchantingBook()
const;
276 MCAPI
bool isGlint()
const;
278 MCAPI
bool isHorseArmorItem()
const;
280 MCAPI
bool isHumanoidArmorItem()
const;
282 MCAPI
bool isHumanoidWearableBlockItem()
const;
284 MCAPI
bool isInstance(
::HashedString const& itemName,
bool useItemLookup)
const;
287 MCAPI
bool isLiquidClipItem()
const;
290 MCAPI
bool isNull()
const;
293 MCAPI
bool isOnCooldown(
::Player& player, ::SharedTypes::ItemCooldownType type)
const;
297 isOneOfBlockInstances(::std::vector<::std::reference_wrapper<::HashedString const>>
const& blockTypeIds)
const;
299 MCAPI
bool isOneOfInstances(
300 ::std::initializer_list<::std::reference_wrapper<::HashedString const>> items,
304 MCAPI
bool isPotionItem()
const;
307 MCAPI
bool isStackable()
const;
310 MCAPI
bool isStackable(::ItemStackBase
const& other)
const;
312 MCAPI
bool isStackedByData()
const;
314 MCAPI
bool isValidAuxValue(
int value)
const;
317 MCFOLD
bool matches(::ItemStackBase
const& other)
const;
320 MCAPI
bool matchesEitherWearableCase(
::CompoundTag const* userData)
const;
322 MCAPI
bool matchesItem(::ItemStackBase
const& other)
const;
324 MCAPI
explicit operator bool()
const;
326 MCAPI
bool operator!=(::ItemStackBase
const& rhs)
const;
328 MCAPI ::ItemStackBase& operator=(::ItemStackBase
const& rhs);
330 MCFOLD
bool operator==(::ItemStackBase
const& rhs)
const;
332 MCAPI
void remove(
int inCount);
334 MCAPI
void removeDamageValue();
336 MCAPI
void resetHoverName();
338 MCAPI
bool sameItem(
int itemId,
int auxValue)
const;
340 MCAPI ::std::unique_ptr<::CompoundTag> save(
::SaveContext const& saveContext)
const;
344 MCAPI
bool sendEventTriggered(::std::string
const& event,
::RenderParams const& params);
346 MCAPI
void set(
int inCount);
348 MCAPI
void setChargedItem(
::ItemInstance const& instance,
bool isSwapping);
350 MCAPI
void setCustomLore(::std::vector<::std::string>
const& lore);
354 MCAPI
void setDamageValue(
short newDamage);
356 MCAPI
void setDynamicProperty(
357 ::std::string
const& key,
358 ::std::variant<double, float, bool, ::std::string, ::Vec3>
const& value,
359 ::std::string
const& collectionName
362 MCAPI
void setRepairCost(
int cost);
364 MCAPI
void setStackSize(uchar inCount);
366 MCAPI
void setUserData(::std::unique_ptr<::CompoundTag> tag);
368 MCAPI
void startCooldown(
::Player& player, ::SharedTypes::ItemCooldownType type)
const;
370 MCAPI
bool updateComponent(::std::string
const& name,
::Json::Value const& data);
377 _loadBlocksForCanPlaceOnCanDestroy(::std::vector<::BlockType const*>& blockList, ::std::string
const& blockName);
380 MCAPI
static void loadItemStacksFromDescriptor(
381 ::std::vector<::ItemStack>& outItems,
382 ::std::vector<::NetworkItemStackDescriptor>
const& descriptors,
392 MCAPI static ::std::string
const& TAG_CAN_DESTROY();
394 MCAPI static ::std::string
const& TAG_CAN_PLACE_ON();
396 MCAPI static ::std::string
const& TAG_CHARGED_ITEM();
398 MCAPI static ::std::string
const& TAG_DISPLAY();
400 MCAPI static ::std::string
const& TAG_DISPLAY_FILTERED_NAME();
402 MCAPI static ::std::string
const& TAG_DISPLAY_NAME();
404 MCAPI static ::std::string
const& TAG_ENCHANTS();
406 MCAPI static ::std::string
const& TAG_LORE();
408 MCAPI static ::std::string
const& TAG_REPAIR_COST();
410 MCAPI static ::std::string
const& TAG_STORE_CAN_DESTROY();
412 MCAPI static ::std::string
const& TAG_STORE_CAN_PLACE_ON();
414 MCAPI static ::std::string
const& TAG_UNBREAKABLE();
422 MCAPI
void* $ctor(::ItemStackBase
const& rhs);
426 MCAPI
void* $ctor(::std::string_view name,
int count,
int auxValue,
::CompoundTag const* _userData);
438 MCFOLD
void $reinit(
::Item const& item,
int count,
int auxValue);
440 MCFOLD
void $reinit(
::Block const& block,
int count);
442 MCFOLD
void $reinit(::std::string_view
const name,
int count,
int auxValue);
444 MCAPI
void $setNull(::std::optional<::std::string> reason);
446 MCAPI ::std::string $toString()
const;
448 MCAPI ::std::string $toDebugString()
const;
Definition SaveContext.h:5