LeviLamina
Loading...
Searching...
No Matches
CauldronBlockActor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/Container.h"
7#include "mc/world/item/ItemStack.h"
8#include "mc/world/item/alchemy/Potion.h"
9#include "mc/world/level/block/actor/VanillaBlockActor.h"
10
11// auto generated forward declare list
12// clang-format off
13class Actor;
15class BlockPos;
16class BlockSource;
17class CompoundTag;
18class DataLoadHelper;
19class ILevel;
20class SaveContext;
21namespace mce { class Color; }
22// clang-format on
23
24class CauldronBlockActor : public ::VanillaBlockActor, public ::Container {
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<4, 4, int> mPotionId;
29 ::ll::TypedStorage<4, 4, ::Potion::PotionType> mPotionType;
30 ::ll::TypedStorage<1, 1, bool> mHasCustomColor;
31 ::ll::TypedStorage<4, 4, int> mCustomColor;
32 ::ll::TypedStorage<8, 1520, ::ItemStack[10]> mItems;
33 // NOLINTEND
34
35public:
36 // prevent constructor by default
37 CauldronBlockActor();
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 virtual ~CauldronBlockActor() /*override*/ = default;
43
44 virtual ::ItemStack const& getItem(int slot) const /*override*/;
45
46 virtual void setItem(int slot, ::ItemStack const& item) /*override*/;
47
48 virtual ::std::string getName() const /*override*/;
49
50 virtual int getMaxStackSize() const /*override*/;
51
52 virtual int getContainerSize() const /*override*/;
53
54 virtual void startOpen(::Actor&) /*override*/;
55
56 virtual void stopOpen(::Actor& actor) /*override*/;
57
58 virtual ::Container* getContainer() /*override*/;
59
60 virtual ::Container const* getContainer() const /*override*/;
61
62 virtual void load(::ILevel& level, ::CompoundTag const& base, ::DataLoadHelper& dataLoadHelper) /*override*/;
63
64 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
65
66 virtual void tick(::BlockSource& region) /*override*/;
67
68 virtual void onChanged(::BlockSource& region) /*override*/;
69
70 virtual void serverInitItemStackIds(
71 int containerSlot,
72 int count,
73 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
74 ) /*override*/;
75
76 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(::BlockSource&) /*override*/;
77
78 virtual void _onUpdatePacket(::CompoundTag const& data, ::BlockSource& region) /*override*/;
79 // NOLINTEND
80
81public:
82 // member functions
83 // NOLINTBEGIN
84 MCAPI explicit CauldronBlockActor(::BlockPos const& pos);
85
86 MCAPI ::mce::Color getMixDyeColor();
87
88 MCAPI ::mce::Color getPotionColor() const;
89
90 MCAPI void mixDyes();
91
92 MCAPI void setCustomColor(::mce::Color const& color);
93 // NOLINTEND
94
95public:
96 // static variables
97 // NOLINTBEGIN
98 MCAPI static ::mce::Color& WATER_COLOR();
99 // NOLINTEND
100
101public:
102 // constructor thunks
103 // NOLINTBEGIN
104 MCAPI void* $ctor(::BlockPos const& pos);
105 // NOLINTEND
106
107public:
108 // virtual function thunks
109 // NOLINTBEGIN
110 MCFOLD ::ItemStack const& $getItem(int slot) const;
111
112 MCAPI void $setItem(int slot, ::ItemStack const& item);
113
114 MCAPI ::std::string $getName() const;
115
116 MCFOLD int $getMaxStackSize() const;
117
118 MCFOLD int $getContainerSize() const;
119
120 MCFOLD void $startOpen(::Actor&);
121
122 MCFOLD void $stopOpen(::Actor& actor);
123
124 MCFOLD ::Container* $getContainer();
125
126 MCFOLD ::Container const* $getContainer() const;
127
128 MCAPI void $load(::ILevel& level, ::CompoundTag const& base, ::DataLoadHelper& dataLoadHelper);
129
130 MCAPI bool $save(::CompoundTag& tag, ::SaveContext const& saveContext) const;
131
132 MCFOLD void $tick(::BlockSource& region);
133
134 MCFOLD void $onChanged(::BlockSource& region);
135
136 MCAPI void $serverInitItemStackIds(
137 int containerSlot,
138 int count,
139 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
140 );
141
142 MCFOLD ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(::BlockSource&);
143
144 MCFOLD void $_onUpdatePacket(::CompoundTag const& data, ::BlockSource& region);
145
146
147 // NOLINTEND
148
149public:
150 // vftables
151 // NOLINTBEGIN
153
154 MCNAPI static void** $vftable();
155
156 MCAPI static void** $vftableForBlockActor();
157
159
161 // NOLINTEND
162};
Definition Actor.h:114
Definition BlockActorDataPacket.h:19
Definition BlockPos.h:17
Definition BlockSource.h:71
static MCAPI void ** $vftableForIVanillaMainBlockActorComponent()
static MCAPI void ** $vftable()
static MCAPI void ** $vftableForIVanillaRenderBlockActorComponent()
static MCAPI void ** $vftableForIVanillaTickBlockActorComponent()
Definition CompoundTag.h:18
Definition DataLoadHelper.h:20
Definition ILevel.h:220
Definition ItemStack.h:24
Definition SaveContext.h:5
Definition Color.h:13