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;
92 virtual ~ItemStackBase();
94 virtual void reinit(
::Item const&,
int,
int);
96 virtual void reinit(
::Block const&,
int);
98 virtual void reinit(::std::string_view
const,
int,
int);
100 virtual void setNull(::std::optional<::std::string> reason);
102 virtual ::std::string toString()
const;
104 virtual ::std::string toDebugString()
const;
110 MCAPI ItemStackBase();
114 MCAPI ItemStackBase(::ItemStackBase
const& rhs);
116 MCAPI ItemStackBase(
::Block const& block,
int count = 1,
::CompoundTag const* _userData =
nullptr);
119 ItemStackBase(::std::string_view name,
int count = 1,
int auxValue = 0,
::CompoundTag const* _userData =
nullptr);
121 MCAPI
void _addCustomUserDataCommon(::std::unique_ptr<::CompoundTag>&& tag);
123 MCAPI
void _checkForItemWorldCompatibility();
125 MCAPI ::std::string _getHoverFormattingPrefix()
const;
127 MCAPI_C
bool _hasFullOrPartialTag(
::HashedString const&
string)
const;
129 MCAPI
void _loadComponents(
::CompoundTag const& compoundTag);
135 MCAPI
bool _setItem(
int id,
bool doRemap);
137 MCAPI
void _setItemFromBlockName(
::HashedString const& blockName);
139 MCAPI
void _updateCompareHashes();
141 MCAPI
void add(
int inCount);
143 MCAPI
bool addComponents(
::Json::Value const& root, ::std::string& errorMsg);
147 MCAPI
void clearChargedItem();
149 MCAPI
void clearCustomLore();
151 MCAPI ::ItemEnchants constructItemEnchantsFromUserData()
const;
153 MCAPI ::SharedTypes::Legacy::ArmorSlot getArmorSlot()
const;
155 MCAPI
short getAuxValue()
const;
157 MCAPI
int getBaseRepairCost()
const;
159 MCAPI_C ::Block
const* getBlockForRendering()
const;
161 MCAPI ::WeakPtr<::BlockType const>
const& getBlockType()
const;
163 MCAPI_C ::WeakPtr<::BlockType const>
const& getBlockTypeForRendering()
const;
165 MCAPI ::mce::Color getColor()
const;
167 MCAPI ::ComponentItem
const* getComponentItem()
const;
169 MCAPI ::std::vector<::std::string> getCustomLore()
const;
171 MCAPI ::std::string getCustomName()
const;
173 MCAPI
short getDamageValue()
const;
175 MCAPI ::std::string getDescriptionId()
const;
177 MCAPI ::ItemDescriptor getDescriptor()
const;
179 MCAPI ::std::unique_ptr<::DynamicProperties> getDynamicProperties()
const;
181 MCAPI ::std::optional<::std::variant<double, float, bool, ::std::string, ::Vec3>>
182 getDynamicProperty(::std::string
const& key, ::std::string
const& collectionName)
const;
184 MCAPI_C ::Bedrock::Safety::RedactableString getFormattedHovertext(
::Level& level,
bool showCategory)
const;
186 MCAPI ::HashedString
const& getFullNameHash()
const;
188 MCAPI_C ::std::string getHoverName()
const;
190 MCAPI_C ::ResolvedItemIconInfo getIconInfo(
int newAnimationFrame,
bool inInventoryPane)
const;
192 MCAPI
short getId()
const;
194 MCAPI
int getIdAux()
const;
196 MCAPI_C
int getIdAuxEnchanted()
const;
198 MCAPI_C
bool getIsValidPickupTime()
const;
200 MCAPI ::Item
const* getItem()
const;
202 MCAPI
short getMaxDamage()
const;
204 MCAPI uchar getMaxStackSize()
const;
206 MCAPI ::std::string getName()
const;
208 MCAPI ::std::unique_ptr<::CompoundTag> getNetworkUserData()
const;
210 MCAPI ::HashedString
const& getRawNameHash()
const;
212 MCAPI ::std::string getRawNameId()
const;
214 MCAPI ::Bedrock::Safety::RedactableString getRedactedCustomName()
const;
216 MCAPI ::Bedrock::Safety::RedactableString getRedactedHoverName()
const;
218 MCAPI ::Bedrock::Safety::RedactableString getRedactedName()
const;
220 MCAPI_C ::HashedString
const& getRendererId()
const;
222 MCAPI_C
bool hasChargedItem()
const;
224 MCAPI_C
bool hasComponent(::std::string
const& name)
const;
226 MCAPI
bool hasContainerData()
const;
228 MCAPI
bool hasCustomHoverName()
const;
230 MCAPI
bool hasSameAuxValue(::ItemStackBase
const& other)
const;
232 MCAPI
bool hasSameUserData(::ItemStackBase
const& other)
const;
234 MCAPI
bool hurtAndBreak(
int deltaDamage,
::Actor* owner);
236 MCAPI
void init(
::BlockType const& block,
int count);
238 MCAPI
void init(
int id,
int count_,
int aux_,
bool doRemap);
240 MCAPI
void init(
::Item const& item,
int count,
int auxValue,
::CompoundTag const* userData,
bool doRemap);
242 MCAPI
bool isArmorItem()
const;
244 MCAPI_C
bool isAttachableEquipment()
const;
246 MCAPI
bool isBlock()
const;
248 MCAPI_C
bool isBlockInstance(
::HashedString const& blockName)
const;
250 MCAPI
bool isDamageableItem()
const;
252 MCAPI_C
bool isDamaged()
const;
254 MCAPI
bool isEnchantingBook()
const;
256 MCAPI
bool isGlint()
const;
258 MCAPI
bool isHorseArmorItem()
const;
260 MCAPI
bool isHumanoidArmorItem()
const;
262 MCAPI
bool isHumanoidWearableBlockItem()
const;
264 MCAPI
bool isInstance(
::HashedString const& itemName,
bool useItemLookup)
const;
266 MCAPI_C
bool isLiquidClipItem()
const;
268 MCAPI
bool isNull()
const;
270 MCAPI_C
bool isOnCooldown(
::Player& player, ::SharedTypes::ItemCooldownType type)
const;
273 isOneOfBlockInstances(::std::vector<::std::reference_wrapper<::HashedString const>>
const& blockTypeIds)
const;
275 MCAPI
bool isOneOfInstances(
276 ::std::initializer_list<::std::reference_wrapper<::HashedString const>> items,
280 MCAPI
bool isPotionItem()
const;
282 MCAPI_C
bool isStackable()
const;
284 MCAPI
bool isStackable(::ItemStackBase
const& other)
const;
286 MCAPI
bool isStackedByData()
const;
288 MCAPI
bool isValidAuxValue(
int value)
const;
290 MCFOLD
bool matches(::ItemStackBase
const& other)
const;
292 MCAPI
bool matchesEitherWearableCase(
::CompoundTag const* userData)
const;
294 MCAPI
bool matchesItem(::ItemStackBase
const& other)
const;
296 MCAPI
explicit operator bool()
const;
298 MCAPI
bool operator!=(::ItemStackBase
const& rhs)
const;
300 MCAPI ::ItemStackBase& operator=(::ItemStackBase
const& rhs);
302 MCFOLD
bool operator==(::ItemStackBase
const& rhs)
const;
304 MCAPI
void remove(
int inCount);
306 MCAPI
void removeDamageValue();
308 MCAPI
void resetHoverName();
310 MCAPI
bool sameItem(
int itemId,
int auxValue)
const;
312 MCAPI ::std::unique_ptr<::CompoundTag> save(
::SaveContext const& saveContext)
const;
316 MCAPI
bool sendEventTriggered(::std::string
const& event,
::RenderParams const& params);
318 MCAPI
void set(
int inCount);
320 MCAPI
void setChargedItem(
::ItemInstance const& instance,
bool isSwapping);
322 MCAPI
void setCustomLore(::std::vector<::std::string>
const& lore);
326 MCAPI
void setDamageValue(
short newDamage);
328 MCAPI
void setDynamicProperty(
329 ::std::string
const& key,
330 ::std::variant<double, float, bool, ::std::string, ::Vec3>
const& value,
331 ::std::string
const& collectionName
334 MCAPI
void setRepairCost(
int cost);
336 MCAPI
void setStackSize(uchar inCount);
338 MCAPI
void setUserData(::std::unique_ptr<::CompoundTag> tag);
340 MCAPI
bool updateComponent(::std::string
const& name,
::Json::Value const& data);
347 _loadBlocksForCanPlaceOnCanDestroy(::std::vector<::BlockType const*>& blockList, ::std::string
const& blockName);
349 MCAPI_C
static void loadItemStacksFromDescriptor(
350 ::std::vector<::ItemStack>& outItems,
351 ::std::vector<::NetworkItemStackDescriptor>
const& descriptors,
360 MCAPI static ::std::string
const& TAG_CAN_DESTROY();
362 MCAPI static ::std::string
const& TAG_CAN_PLACE_ON();
364 MCAPI static ::std::string
const& TAG_CHARGED_ITEM();
366 MCAPI static ::std::string
const& TAG_DISPLAY();
368 MCAPI static ::std::string
const& TAG_DISPLAY_FILTERED_NAME();
370 MCAPI static ::std::string
const& TAG_DISPLAY_NAME();
372 MCAPI static ::std::string
const& TAG_ENCHANTS();
374 MCAPI static ::std::string
const& TAG_LORE();
376 MCAPI static ::std::string
const& TAG_REPAIR_COST();
378 MCAPI static ::std::string
const& TAG_STORE_CAN_DESTROY();
380 MCAPI static ::std::string
const& TAG_STORE_CAN_PLACE_ON();
382 MCAPI static ::std::string
const& TAG_UNBREAKABLE();
392 MCAPI
void* $ctor(::ItemStackBase
const& rhs);
396 MCAPI
void* $ctor(::std::string_view name,
int count,
int auxValue,
::CompoundTag const* _userData);
408 MCFOLD
void $reinit(
::Item const&,
int,
int);
410 MCFOLD
void $reinit(
::Block const&,
int);
412 MCFOLD
void $reinit(::std::string_view
const,
int,
int);
414 MCAPI
void $setNull(::std::optional<::std::string> reason);
416 MCAPI ::std::string $toString()
const;
418 MCAPI ::std::string $toDebugString()
const;
Definition SaveContext.h:5