LeviLamina
Loading...
Searching...
No Matches
ChemistryTableBlockActor.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/level/block/actor/BlockActor.h"
8
9// auto generated forward declare list
10// clang-format off
11class BlockPos;
12class BlockSource;
13class CompoundTag;
15class DataLoadHelper;
16class HashedString;
17class ILevel;
18class ItemStack;
19class LabTablePacket;
21class Player;
22class Random;
23class SaveContext;
24struct ActorUniqueID;
25// clang-format on
26
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ActorUniqueID>> mOpenedPlayer;
32 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::LabTableReaction>> mCurReaction;
33 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::CraftableCompounds>> mCraftableCompounds;
34 ::ll::TypedStorage<8, 1368, ::ItemStack[9]> mItems;
35 ::ll::TypedStorage<8, 152, ::ItemStack> mPendingReactionOutput;
36 ::ll::TypedStorage<1, 1, bool> mIsTableTypeCached;
37 ::ll::TypedStorage<8, 48, ::HashedString> mCachedTableType;
38 // NOLINTEND
39
40public:
41 // virtual functions
42 // NOLINTBEGIN
43 // vIndex: 0
44 virtual ~ChemistryTableBlockActor() /*override*/;
45
46 // vIndex: 33
47 virtual ::Container* getContainer() /*override*/;
48
49 // vIndex: 32
50 virtual ::Container const* getContainer() const /*override*/;
51
52 // vIndex: 7
53 virtual ::ItemStack const& getItem(int slot) const /*override*/;
54
55 // vIndex: 12
56 virtual void setItem(int modelSlot, ::ItemStack const& item) /*override*/;
57
58 // vIndex: 21
59 virtual int getMaxStackSize() const /*override*/;
60
61 // vIndex: 20
62 virtual int getContainerSize() const /*override*/;
63
64 // vIndex: 22
65 virtual void startOpen(::Player& p) /*override*/;
66
67 // vIndex: 23
68 virtual void stopOpen(::Player& player) /*override*/;
69
70 // vIndex: 13
71 virtual void onRemoved(::BlockSource& region) /*override*/;
72
73 // vIndex: 1
74 virtual void load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
75
76 // vIndex: 2
77 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
78
79 // vIndex: 7
80 virtual void tick(::BlockSource& region) /*override*/;
81
82 // vIndex: 2
83 virtual void serverInitItemStackIds(
84 int containerSlot,
85 int count,
86 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
87 ) /*override*/;
88 // NOLINTEND
89
90public:
91 // member functions
92 // NOLINTBEGIN
93 MCAPI explicit ChemistryTableBlockActor(::BlockPos const& pos);
94
95 MCAPI ::std::unique_ptr<::LabTableReaction>
96 _createReaction(::Random& random, ::std::vector<::ItemStack> const& consumedInput);
97
98 MCAPI void _popPendingReactionOutput(::BlockSource& region);
99
100 MCAPI ::HashedString const& _updateType(::BlockSource& region);
101
102 MCAPI void playerOpenLabTable(::Player& player);
103
104 MCAPI void reset(::BlockSource& region);
105
106 MCAPI void serverCombine(::BlockSource& region, ::std::vector<::ItemStack> const& consumedInput);
107
108 MCAPI void serverLabTablePacket_DEPRECATED(::LabTablePacket const& packet, ::BlockSource& region);
109 // NOLINTEND
110
111public:
112 // constructor thunks
113 // NOLINTBEGIN
114 MCAPI void* $ctor(::BlockPos const& pos);
115 // NOLINTEND
116
117public:
118 // destructor thunk
119 // NOLINTBEGIN
120 MCAPI void $dtor();
121 // NOLINTEND
122
123public:
124 // virtual function thunks
125 // NOLINTBEGIN
126 MCFOLD ::Container* $getContainer();
127
128 MCFOLD ::Container const* $getContainer() const;
129
130 MCAPI ::ItemStack const& $getItem(int slot) const;
131
132 MCAPI void $setItem(int modelSlot, ::ItemStack const& item);
133
134 MCFOLD int $getMaxStackSize() const;
135
136 MCFOLD int $getContainerSize() const;
137
138 MCFOLD void $startOpen(::Player& p);
139
140 MCAPI void $stopOpen(::Player& player);
141
142 MCAPI void $onRemoved(::BlockSource& region);
143
144 MCAPI void $load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
145
146 MCAPI bool $save(::CompoundTag& tag, ::SaveContext const& saveContext) const;
147
148 MCAPI void $tick(::BlockSource& region);
149
150 MCAPI void $serverInitItemStackIds(
151 int containerSlot,
152 int count,
153 ::std::function<void(int, ::ItemStack const&)> onNetIdChanged
154 );
155 // NOLINTEND
156
157public:
158 // vftables
159 // NOLINTBEGIN
160 MCAPI static void** $vftableForContainer();
161
162 MCAPI static void** $vftableForBlockActor();
163 // NOLINTEND
164};
Definition BlockActor.h:32
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition ChemistryTableBlockActor.h:27
Definition CompoundTag.h:13
Definition Container.h:30
Definition CraftableCompounds.h:17
Definition DataLoadHelper.h:20
Definition HashedString.h:5
Definition ILevel.h:203
Definition ItemStack.h:25
Definition LabTablePacket.h:18
Definition LabTableReaction.h:16
Definition Player.h:119
Definition Random.h:16
Definition SaveContext.h:5
Definition ActorUniqueID.h:5