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