LeviLamina
Loading...
Searching...
No Matches
BannerItem.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/item/Item.h"
7#include "mc/world/item/ItemColor.h"
8#include "mc/world/item/Rarity.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class BannerPattern;
14class Block;
15class BlockPos;
16class CompoundTag;
18class ItemDescriptor;
19class ItemStack;
20class ItemStackBase;
21class Level;
22class Vec3;
23namespace Bedrock::Safety { class RedactableString; }
24// clang-format on
25
26class BannerItem : public ::Item {
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 8, ::Block const&> mWallBanner;
31 ::ll::TypedStorage<8, 8, ::Block const&> mStandingBanner;
32 // NOLINTEND
33
34public:
35 // prevent constructor by default
36 BannerItem& operator=(BannerItem const&);
37 BannerItem(BannerItem const&);
38 BannerItem();
39
40public:
41 // virtual functions
42 // NOLINTBEGIN
43 virtual ::InteractionResult
44 _useOn(::ItemStack& instance, ::Actor& actor, ::BlockPos pos, uchar face, ::Vec3 const& clickPos) const
45 /*override*/;
46
47 virtual ::std::string
48 buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const* userData) const /*override*/;
49
50 virtual ::Rarity getRarity(::ItemStackBase const& stack) const /*override*/;
51
52 virtual void appendFormattedHovertext(
53 ::ItemStackBase const& stack,
54 ::Level& level,
56 bool const showCategory
57 ) const /*override*/;
58
59 virtual bool isValidAuxValue(int auxValue) const /*override*/;
60
61 virtual bool isWearableThroughLootTable(::CompoundTag const* userData) const /*override*/;
62
63 virtual void fixupCommon(::ItemStackBase& item) const /*override*/;
64
65 virtual ~BannerItem() /*override*/ = default;
66 // NOLINTEND
67
68public:
69 // static functions
70 // NOLINTBEGIN
71 MCAPI static ::std::vector<::std::pair<::gsl::not_null<::BannerPattern const*>, ::ItemColor>>
72 getPatternAndColorPairsFromItemStack(::ItemStackBase const& item);
73 // NOLINTEND
74
75public:
76 // virtual function thunks
77 // NOLINTBEGIN
78 MCAPI ::InteractionResult
79 $_useOn(::ItemStack& instance, ::Actor& actor, ::BlockPos pos, uchar face, ::Vec3 const& clickPos) const;
80
81 MCAPI ::std::string
82 $buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const* userData) const;
83
84#ifdef LL_PLAT_S
85 MCAPI ::Rarity $getRarity(::ItemStackBase const& stack) const;
86#endif
87
88 MCAPI void $appendFormattedHovertext(
89 ::ItemStackBase const& stack,
90 ::Level& level,
92 bool const showCategory
93 ) const;
94
95 MCFOLD bool $isValidAuxValue(int auxValue) const;
96
97 MCAPI bool $isWearableThroughLootTable(::CompoundTag const* userData) const;
98
99 MCAPI void $fixupCommon(::ItemStackBase& item) const;
100
101
102 // NOLINTEND
103
104public:
105 // vftables
106 // NOLINTBEGIN
107 MCAPI static void** $vftable();
108 // NOLINTEND
109};
Definition Actor.h:105
Definition BannerPattern.h:15
Definition RedactableString.h:10
Definition BlockPos.h:19
Definition Block.h:43
Definition CompoundTag.h:23
Definition InteractionResult.h:5
Definition ItemDescriptor.h:23
Definition ItemStackBase.h:44
Definition ItemStack.h:26
Definition Level.h:249
Definition Vec3.h:10