LeviLamina
Loading...
Searching...
No Matches
PotionItem.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/ItemUseMethod.h"
8#include "mc/world/item/ResolvedItemIconInfo.h"
9#include "mc/world/item/alchemy/Potion.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
14class BlockLegacy;
15class BlockPos;
16class BlockSource;
17class CompoundTag;
18class Container;
20class ItemDescriptor;
21class ItemStack;
22class ItemStackBase;
23class Level;
24class Player;
25class Vec3;
26namespace Bedrock::Safety { class RedactableString; }
27// clang-format on
28
29class PotionItem : public ::Item {
30public:
31 // member variables
32 // NOLINTBEGIN
33 ::ll::TypedStorage<8, 1984, ::ResolvedItemIconInfo[31]> mPotionIcons;
34 ::ll::TypedStorage<4, 124, ::Potion::PotionVariant[31]> mPotionVariants;
35 // NOLINTEND
36
37public:
38 // prevent constructor by default
39 PotionItem();
40
41public:
42 // virtual functions
43 // NOLINTBEGIN
44 // vIndex: 121
45 virtual ::Potion::PotionType getPotionType() const;
46
47 // vIndex: 107
48 virtual ::Item& setIconInfo(::std::string const& name, int index) /*override*/;
49
50 // vIndex: 87
51 virtual ::std::string buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const*) const
52 /*override*/;
53
54 // vIndex: 52
55 virtual void appendFormattedHovertext(
56 ::ItemStackBase const& stack,
57 ::Level& level,
59 bool const showCategory
60 ) const /*override*/;
61
62 // vIndex: 88
63 virtual ::std::string buildEffectDescriptionName(::ItemStackBase const& stack) const /*override*/;
64
65 // vIndex: 63
66 virtual bool uniqueAuxValues() const /*override*/;
67
68 // vIndex: 108
69 virtual ::ResolvedItemIconInfo getIconInfo(::ItemStackBase const& item, int, bool) const /*override*/;
70
71 // vIndex: 76
72 virtual ::ItemStack& use(::ItemStack& item, ::Player& player) const /*override*/;
73
74 // vIndex: 79
75 virtual ::ItemUseMethod useTimeDepleted(::ItemStack& inoutInstance, ::Level* level, ::Player* player) const
76 /*override*/;
77
78 // vIndex: 78
79 virtual bool dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const
80 /*override*/;
81
82 // vIndex: 60
83 virtual bool isValidAuxValue(int auxValue) const /*override*/;
84
85 // vIndex: 47
86 virtual bool isDestructive(int auxValue) const /*override*/;
87
88 // vIndex: 120
89 virtual ::InteractionResult
90 _useOn(::ItemStack& instance, ::Actor& entity, ::BlockPos pos, uchar face, ::Vec3 const& clickPos) const
91 /*override*/;
92
93 // vIndex: 0
94 virtual ~PotionItem() /*override*/;
95 // NOLINTEND
96
97public:
98 // member functions
99 // NOLINTBEGIN
100 MCAPI PotionItem(::std::string const& name, int id);
101
102 MCAPI bool const _isBlockConvertibleToMud(::BlockLegacy const& block) const;
103 // NOLINTEND
104
105public:
106 // constructor thunks
107 // NOLINTBEGIN
108 MCAPI void* $ctor(::std::string const& name, int id);
109 // NOLINTEND
110
111public:
112 // destructor thunk
113 // NOLINTBEGIN
114 MCAPI void $dtor();
115 // NOLINTEND
116
117public:
118 // virtual function thunks
119 // NOLINTBEGIN
120 MCFOLD ::Potion::PotionType $getPotionType() const;
121
122 MCAPI ::Item& $setIconInfo(::std::string const& name, int index);
123
124 MCAPI ::std::string $buildDescriptionId(::ItemDescriptor const& itemDescriptor, ::CompoundTag const*) const;
125
126 MCAPI void $appendFormattedHovertext(
127 ::ItemStackBase const& stack,
128 ::Level& level,
130 bool const showCategory
131 ) const;
132
133 MCAPI ::std::string $buildEffectDescriptionName(::ItemStackBase const& stack) const;
134
135 MCFOLD bool $uniqueAuxValues() const;
136
137 MCAPI ::ResolvedItemIconInfo $getIconInfo(::ItemStackBase const& item, int, bool) const;
138
139 MCAPI ::ItemStack& $use(::ItemStack& item, ::Player& player) const;
140
141 MCAPI bool $dispense(::BlockSource& region, ::Container& container, int slot, ::Vec3 const& pos, uchar face) const;
142
143 MCAPI bool $isValidAuxValue(int auxValue) const;
144
145 MCAPI bool $isDestructive(int auxValue) const;
146
147 MCAPI ::InteractionResult
148 $_useOn(::ItemStack& instance, ::Actor& entity, ::BlockPos pos, uchar face, ::Vec3 const& clickPos) const;
149 // NOLINTEND
150
151public:
152 // vftables
153 // NOLINTBEGIN
154 MCAPI static void** $vftable();
155 // NOLINTEND
156};
Definition Actor.h:103
Definition RedactableString.h:10
Definition BlockLegacy.h:88
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition CompoundTag.h:13
Definition Container.h:30
Definition InteractionResult.h:5
Definition ItemDescriptor.h:22
Definition ItemStackBase.h:35
Definition ItemStack.h:25
Definition Item.h:65
Definition Level.h:238
Definition Player.h:119
Definition PotionItem.h:29
Definition Vec3.h:10