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 BlockSource;
14class CompoundTag;
15class DataLoadHelper;
16class ILevel;
17class Item;
18class SaveContext;
19// clang-format on
20
21class BrewingStandBlockActor : public ::BlockActor, public ::Container {
22public:
23 // BrewingStandBlockActor inner types define
24 enum : int {
25 Ingredient = 0,
26 Potion1 = 1,
27 Potion2 = 2,
28 Potion3 = 3,
29 Fuel = 4,
30 };
31
32public:
33 // member variables
34 // NOLINTBEGIN
35 ::ll::TypedStorage<4, 4, int> mBrewTime;
36 ::ll::TypedStorage<4, 4, int> mFuelAmount;
37 ::ll::TypedStorage<4, 4, int> mFuelTotal;
38 ::ll::TypedStorage<8, 8, ::Item const*> mIngredient;
39 ::ll::TypedStorage<8, 760, ::ItemStack[5]> mItems;
40 ::ll::TypedStorage<1, 1, bool> mNotifyPlayersOnChange;
41 // NOLINTEND
42
43public:
44 // virtual functions
45 // NOLINTBEGIN
46 virtual ~BrewingStandBlockActor() /*override*/ = default;
47
48 virtual ::ItemStack const& getItem(int slot) const /*override*/;
49
50 virtual void setItem(int modelSlot, ::ItemStack const& item) /*override*/;
51
52 virtual ::std::string getName() const /*override*/;
53
54 virtual int getMaxStackSize() const /*override*/;
55
56 virtual int getContainerSize() const /*override*/;
57
58 virtual void startOpen(::Actor&) /*override*/;
59
60 virtual void stopOpen(::Actor& actor) /*override*/;
61
62 virtual void setContainerChanged(int slot) /*override*/;
63
64 virtual void onRemoved(::BlockSource&) /*override*/;
65
66 virtual bool canPushInItem(int slot, int face, ::ItemStack const& item) const /*override*/;
67
68 virtual bool canPullOutItem(int slot, int face, ::ItemStack const&) const /*override*/;
69
70 virtual ::Container* getContainer() /*override*/;
71
72 virtual ::Container const* getContainer() const /*override*/;
73
74 virtual void load(::ILevel& level, ::CompoundTag const& base, ::DataLoadHelper& dataLoadHelper) /*override*/;
75
76 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
77
78 virtual void tick(::BlockSource& region) /*override*/;
79
80 virtual void onChanged(::BlockSource& region) /*override*/;
81
82 virtual void onMove() /*override*/;
83
84 virtual void serverInitItemStackIds(
85 int containerSlot,
86 int count,
87 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
88 ) /*override*/;
89 // NOLINTEND
90
91public:
92 // member functions
93 // NOLINTBEGIN
94 MCAPI void brew();
95
96 MCAPI bool canBrew();
97 // NOLINTEND
98
99public:
100 // virtual function thunks
101 // NOLINTBEGIN
102 MCAPI ::ItemStack const& $getItem(int slot) const;
103
104 MCAPI void $setItem(int modelSlot, ::ItemStack const& item);
105
106 MCFOLD ::std::string $getName() const;
107
108 MCFOLD int $getMaxStackSize() const;
109
110 MCFOLD int $getContainerSize() const;
111
112 MCFOLD void $startOpen(::Actor&);
113
114 MCFOLD void $stopOpen(::Actor& actor);
115
116 MCFOLD void $setContainerChanged(int slot);
117
118 MCFOLD void $onRemoved(::BlockSource&);
119
120 MCAPI bool $canPushInItem(int slot, int face, ::ItemStack const& item) const;
121
122 MCAPI bool $canPullOutItem(int slot, int face, ::ItemStack const&) const;
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 MCAPI void $tick(::BlockSource& region);
133
134 MCAPI void $onChanged(::BlockSource& region);
135
136 MCFOLD void $onMove();
137
138 MCAPI void $serverInitItemStackIds(
139 int containerSlot,
140 int count,
141 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
142 );
143
144
145 // NOLINTEND
146
147public:
148 // vftables
149 // NOLINTBEGIN
150 MCAPI static void** $vftableForBlockActor();
151
152 MCAPI static void** $vftableForContainer();
153 // NOLINTEND
154};
Definition Actor.h:105
Definition BlockSource.h:68
Definition BrewingStandBlockActor.h:21
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition ILevel.h:214
Definition ItemStack.h:26
Definition Item.h:69
Definition SaveContext.h:5