LeviLamina
Loading...
Searching...
No Matches
BrewingStandBlockActor.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/level/block/actor/BlockActor.h"
9
10// auto generated forward declare list
11// clang-format off
12class Actor;
13class BlockPos;
14class BlockSource;
15class CompoundTag;
16class DataLoadHelper;
17class ILevel;
18class Item;
19class ItemDescriptor;
20class SaveContext;
21// clang-format on
22
23class BrewingStandBlockActor : public ::BlockActor, public ::Container {
24public:
25 // BrewingStandBlockActor inner types define
26 enum : int {
27 Ingredient = 0,
28 Potion1 = 1,
29 Potion2 = 2,
30 Potion3 = 3,
31 Fuel = 4,
32 };
33
34public:
35 // member variables
36 // NOLINTBEGIN
37 ::ll::TypedStorage<4, 4, int> mBrewTime;
38 ::ll::TypedStorage<4, 4, int> mFuelAmount;
39 ::ll::TypedStorage<4, 4, int> mFuelTotal;
40 ::ll::TypedStorage<8, 8, ::Item const*> mIngredient;
41 ::ll::TypedStorage<8, 760, ::ItemStack[5]> mItems;
42 ::ll::TypedStorage<1, 1, bool> mNotifyPlayersOnChange;
43 // NOLINTEND
44
45public:
46 // prevent constructor by default
47 BrewingStandBlockActor();
48
49public:
50 // virtual functions
51 // NOLINTBEGIN
52 virtual ~BrewingStandBlockActor() /*override*/;
53
54 virtual ::ItemStack const& getItem(int slot) const /*override*/;
55
56 virtual void setItem(int slot, ::ItemStack const& item) /*override*/;
57
58 virtual ::std::string getName() const /*override*/;
59
60 virtual int getMaxStackSize() const /*override*/;
61
62 virtual int getContainerSize() const /*override*/;
63
64 virtual void startOpen(::Actor&) /*override*/;
65
66 virtual void stopOpen(::Actor& actor) /*override*/;
67
68 virtual void setContainerChanged(int slot) /*override*/;
69
70 virtual void onRemoved(::BlockSource&) /*override*/;
71
72 virtual bool canPushInItem(int slot, int face, ::ItemStack const& item) const /*override*/;
73
74 virtual bool canPullOutItem(int slot, int face, ::ItemStack const&) const /*override*/;
75
76 virtual ::Container* getContainer() /*override*/;
77
78 virtual ::Container const* getContainer() const /*override*/;
79
80 virtual void load(::ILevel& base, ::CompoundTag const&, ::DataLoadHelper&) /*override*/;
81
82 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
83
84 virtual void tick(::BlockSource& region) /*override*/;
85
86 virtual void onChanged(::BlockSource& region) /*override*/;
87
88 virtual void onMove() /*override*/;
89
90 virtual void serverInitItemStackIds(
91 int containerSlot,
92 int count,
93 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
94 ) /*override*/;
95 // NOLINTEND
96
97public:
98 // member functions
99 // NOLINTBEGIN
100 MCAPI explicit BrewingStandBlockActor(::BlockPos const& pos);
101
102 MCAPI void brew();
103
104 MCAPI bool canBrew();
105
106 MCFOLD int getBrewTime() const;
107
108 MCFOLD int getFuelAmount() const;
109
110 MCFOLD int getFuelTotal() const;
111
112 MCAPI int getPotionSlotUsage() const;
113
114 MCFOLD void setBrewTime(int value);
115
116 MCFOLD void setFuelAmount(int value);
117
118 MCFOLD void setFuelTotal(int value);
119 // NOLINTEND
120
121public:
122 // static functions
123 // NOLINTBEGIN
124 MCAPI static bool isFuel(::ItemDescriptor const& itemDescriptor);
125 // NOLINTEND
126
127public:
128 // constructor thunks
129 // NOLINTBEGIN
130 MCAPI void* $ctor(::BlockPos const& pos);
131 // NOLINTEND
132
133public:
134 // destructor thunk
135 // NOLINTBEGIN
136 MCAPI void $dtor();
137 // NOLINTEND
138
139public:
140 // virtual function thunks
141 // NOLINTBEGIN
142 MCAPI ::ItemStack const& $getItem(int slot) const;
143
144 MCAPI void $setItem(int slot, ::ItemStack const& item);
145
146 MCFOLD ::std::string $getName() const;
147
148 MCFOLD int $getMaxStackSize() const;
149
150 MCFOLD int $getContainerSize() const;
151
152 MCFOLD void $startOpen(::Actor&);
153
154 MCFOLD void $stopOpen(::Actor& actor);
155
156 MCAPI void $setContainerChanged(int slot);
157
158 MCFOLD void $onRemoved(::BlockSource&);
159
160 MCAPI bool $canPushInItem(int slot, int face, ::ItemStack const& item) const;
161
162 MCAPI bool $canPullOutItem(int slot, int face, ::ItemStack const&) const;
163
164 MCFOLD ::Container* $getContainer();
165
166 MCFOLD ::Container const* $getContainer() const;
167
168 MCAPI void $load(::ILevel& base, ::CompoundTag const&, ::DataLoadHelper&);
169
170 MCAPI bool $save(::CompoundTag& tag, ::SaveContext const& saveContext) const;
171
172 MCAPI void $tick(::BlockSource& region);
173
174 MCAPI void $onChanged(::BlockSource& region);
175
176 MCFOLD void $onMove();
177
178 MCAPI void $serverInitItemStackIds(
179 int containerSlot,
180 int count,
181 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
182 );
183
184
185 // NOLINTEND
186
187public:
188 // vftables
189 // NOLINTBEGIN
190 MCAPI static void** $vftableForBlockActor();
191
192 MCAPI static void** $vftableForContainer();
193 // NOLINTEND
194};
Definition Actor.h:123
Definition BlockPos.h:21
Definition BlockSource.h:72
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition ILevel.h:218
Definition ItemDescriptor.h:25
Definition ItemStack.h:35
Definition Item.h:71
Definition SaveContext.h:5