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