LeviLamina
Loading...
Searching...
No Matches
CartographyContainerManagerController.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/safety/RedactableString.h"
7#include "mc/world/containers/SlotData.h"
8#include "mc/world/containers/managers/controllers/ContainerManagerController.h"
9#include "mc/world/containers/managers/controllers/ItemResultPreview.h"
10#include "mc/world/containers/managers/controllers/MapOutputType.h"
11#include "mc/world/inventory/simulation/ContainerScreenRequestActionType.h"
12
13// auto generated forward declare list
14// clang-format off
16class ItemInstance;
17class ItemStackBase;
18struct AutoPlaceItem;
19struct AutoPlaceResult;
24struct SelectedSlotInfo;
25// clang-format on
26
27class CartographyContainerManagerController : public ::ContainerManagerController {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::CartographyContainerManagerModel>> mCartographyContainerManagerModel;
32 ::ll::TypedStorage<8, 72, ::Bedrock::Safety::RedactableString> mPreviewName;
33 ::ll::TypedStorage<8, 72, ::Bedrock::Safety::RedactableString> mItemName;
34 ::ll::TypedStorage<8, 32, ::std::string> mItemResultLocName;
35 ::ll::TypedStorage<8, 40, ::SlotData const> mCreatedItemOutputSlot;
36 ::ll::TypedStorage<1, 1, bool> mCurrentlyCrafting;
37 ::ll::TypedStorage<1, 1, bool> mIsCurrentlyRenaming;
38 ::ll::TypedStorage<1, 1, bool> mWasPreviouslyRenaming;
39 ::ll::TypedStorage<4, 4, ::MapOutputType> mMapOutputType;
40 ::ll::TypedStorage<8, 136, ::ItemResultPreview> mResultPreview;
41 // NOLINTEND
42
43#ifdef LL_PLAT_S
44#else // LL_PLAT_C
45public:
46 // prevent constructor by default
47 CartographyContainerManagerController();
48
49#endif
50public:
51 // virtual functions
52 // NOLINTBEGIN
53#ifdef LL_PLAT_S
54 virtual ~CartographyContainerManagerController() /*override*/ = default;
55#else // LL_PLAT_C
56 virtual ~CartographyContainerManagerController() /*override*/;
57#endif
58
59#ifdef LL_PLAT_S
60 virtual void postInit(::std::weak_ptr<::ContainerManagerController>) /*override*/;
61#else // LL_PLAT_C
62 virtual void postInit(::std::weak_ptr<::ContainerManagerController> self) /*override*/;
63#endif
64
65#ifdef LL_PLAT_S
66 virtual bool isOutputSlot(::std::string const&) const /*override*/;
67#else // LL_PLAT_C
68 virtual bool isOutputSlot(::std::string const& collectionName) const /*override*/;
69#endif
70
71#ifdef LL_PLAT_S
72 virtual ::ItemStackBase const& getTakeableItemStackBase(::SlotData const&) const /*override*/;
73#else // LL_PLAT_C
74 virtual ::ItemStackBase const& getTakeableItemStackBase(::SlotData const& slot) const /*override*/;
75#endif
76
77#ifdef LL_PLAT_S
78 virtual void setPreviewItemName(::Bedrock::Safety::RedactableString const&) /*override*/;
79#else // LL_PLAT_C
80 virtual void setPreviewItemName(::Bedrock::Safety::RedactableString const& name) /*override*/;
81#endif
82
83#ifdef LL_PLAT_S
84 virtual void setItemName(::Bedrock::Safety::RedactableString const&) /*override*/;
85#else // LL_PLAT_C
86 virtual void setItemName(::Bedrock::Safety::RedactableString const& name) /*override*/;
87#endif
88
89 virtual ::Bedrock::Safety::RedactableString const& getPreviewItemName() const /*override*/;
90
91 virtual ::Bedrock::Safety::RedactableString const& getItemName() const /*override*/;
92
93 virtual void updatePreviewItem() /*override*/;
94
95#ifdef LL_PLAT_S
96 virtual void handleTakeAmount(::SlotData const&, int, ::SlotData const&) /*override*/;
97#else // LL_PLAT_C
98 virtual void handleTakeAmount(::SlotData const& dstSlot, int amount, ::SlotData const& srcSlot) /*override*/;
99#endif
100
101#ifdef LL_PLAT_S
102 virtual void handleTakeAll(::SlotData const&, ::SlotData const&) /*override*/;
103#else // LL_PLAT_C
104 virtual void handleTakeAll(::SlotData const& dstSlot, ::SlotData const& srcSlot) /*override*/;
105#endif
106
107#ifdef LL_PLAT_S
108 virtual void handlePlaceAll(::SelectedSlotInfo const&, ::SlotData const&) /*override*/;
109#else // LL_PLAT_C
110 virtual void handlePlaceAll(::SelectedSlotInfo const& selected, ::SlotData const& dstSlot) /*override*/;
111#endif
112
113#ifdef LL_PLAT_S
114 virtual void handleTakeHalf(::SlotData const&, ::SlotData const&) /*override*/;
115#else // LL_PLAT_C
116 virtual void handleTakeHalf(::SlotData const& dstSlot, ::SlotData const& srcSlot) /*override*/;
117#endif
118
119#ifdef LL_PLAT_S
120 virtual void handlePlaceOne(::SlotData const&, ::SlotData const&) /*override*/;
121#else // LL_PLAT_C
122 virtual void handlePlaceOne(::SlotData const& srcSlot, ::SlotData const& dstSlot) /*override*/;
123#endif
124
125#ifdef LL_PLAT_S
126 virtual int handleAutoPlace(
127 ::SlotData const&,
128 int,
129 ::std::vector<::AutoPlaceItem> const&,
130 ::std::vector<::AutoPlaceResult>&
131 ) /*override*/;
132#else // LL_PLAT_C
133 virtual int handleAutoPlace(
134 ::SlotData const& srcSlot,
135 int amount,
136 ::std::vector<::AutoPlaceItem> const& autoPlaceOrder,
137 ::std::vector<::AutoPlaceResult>& destinations
138 ) /*override*/;
139#endif
140
141#ifdef LL_PLAT_S
142 virtual void _onContainerScreenAction(::ContainerScreenActionResult const&) /*override*/;
143#else // LL_PLAT_C
144 virtual void _onContainerScreenAction(::ContainerScreenActionResult const& result) /*override*/;
145#endif
146
147#ifdef LL_PLAT_S
148 virtual ::CreateContainerItemScope
149 _makeCreateItemScope(::SlotData const&, ::ItemTransferAmount const&) /*override*/;
150#else // LL_PLAT_C
151 virtual ::CreateContainerItemScope
152 _makeCreateItemScope(::SlotData const& srcSlot, ::ItemTransferAmount const&) /*override*/;
153#endif
154
155#ifdef LL_PLAT_S
156 virtual void _onItemAcquired(::ItemInstance const&, ::SlotData const&) /*override*/;
157#else // LL_PLAT_C
158 virtual void _onItemAcquired(::ItemInstance const& instance, ::SlotData const& srcSlot) /*override*/;
159#endif
160
161#ifdef LL_PLAT_S
162 virtual void _updateItemStackRequest(
163 ::ContainerScreenRequestActionType,
166 ) /*override*/;
167#else // LL_PLAT_C
168 virtual void _updateItemStackRequest(
169 ::ContainerScreenRequestActionType result,
170 ::ContainerScreenActionResult const& requestScope,
172 ) /*override*/;
173#endif
174
175 // NOLINTEND
176
177public:
178 // member functions
179 // NOLINTBEGIN
180#ifdef LL_PLAT_C
181 MCNAPI explicit CartographyContainerManagerController(
182 ::std::weak_ptr<::CartographyContainerManagerModel> containerManagerModel
183 );
184
185 MCNAPI ::ItemInstance _buildResultItem();
186
187 MCNAPI bool _createCraftItem(::ItemInstance& instance, ::ItemStackRequestScope const& requestScope);
188
189 MCNAPI bool _handleTransferCraft(::SlotData const& srcSlot, ::SlotData const& dstSlot);
190
191 MCNAPI void _setupCallbacks();
192
193 MCNAPI ::std::string const& getItemResultLocName() const;
194
195 MCNAPI ::MapOutputType getMapOutputType() const;
196
197 MCNAPI void setIsCurrentlyRenaming(bool isRenaming);
198#endif
199 // NOLINTEND
200
201public:
202 // constructor thunks
203 // NOLINTBEGIN
204#ifdef LL_PLAT_C
205 MCNAPI void* $ctor(::std::weak_ptr<::CartographyContainerManagerModel> containerManagerModel);
206#endif
207 // NOLINTEND
208
209public:
210 // destructor thunk
211 // NOLINTBEGIN
212 MCNAPI void $dtor();
213 // NOLINTEND
214
215public:
216 // virtual function thunks
217 // NOLINTBEGIN
218#ifdef LL_PLAT_C
219 MCNAPI void $postInit(::std::weak_ptr<::ContainerManagerController> self);
220
221 MCNAPI bool $isOutputSlot(::std::string const& collectionName) const;
222
223 MCNAPI ::ItemStackBase const& $getTakeableItemStackBase(::SlotData const& slot) const;
224
225 MCNAPI void $setPreviewItemName(::Bedrock::Safety::RedactableString const& name);
226
227 MCNAPI void $setItemName(::Bedrock::Safety::RedactableString const& name);
228
229 MCNAPI ::Bedrock::Safety::RedactableString const& $getPreviewItemName() const;
230
231 MCNAPI ::Bedrock::Safety::RedactableString const& $getItemName() const;
232
233 MCNAPI void $updatePreviewItem();
234
235 MCNAPI void $handleTakeAmount(::SlotData const& dstSlot, int amount, ::SlotData const& srcSlot);
236
237 MCNAPI void $handleTakeAll(::SlotData const& dstSlot, ::SlotData const& srcSlot);
238
239 MCNAPI void $handlePlaceAll(::SelectedSlotInfo const& selected, ::SlotData const& dstSlot);
240
241 MCNAPI void $handleTakeHalf(::SlotData const& dstSlot, ::SlotData const& srcSlot);
242
243 MCNAPI void $handlePlaceOne(::SlotData const& srcSlot, ::SlotData const& dstSlot);
244
245 MCNAPI int $handleAutoPlace(
246 ::SlotData const& srcSlot,
247 int amount,
248 ::std::vector<::AutoPlaceItem> const& autoPlaceOrder,
249 ::std::vector<::AutoPlaceResult>& destinations
250 );
251
252 MCNAPI void $_onContainerScreenAction(::ContainerScreenActionResult const& result);
253
254 MCNAPI ::CreateContainerItemScope $_makeCreateItemScope(::SlotData const& srcSlot, ::ItemTransferAmount const&);
255
256 MCNAPI void $_onItemAcquired(::ItemInstance const& instance, ::SlotData const& srcSlot);
257
258 MCNAPI void $_updateItemStackRequest(
259 ::ContainerScreenRequestActionType result,
260 ::ContainerScreenActionResult const& requestScope,
262 );
263#endif
264
265
266 // NOLINTEND
267
268public:
269 // vftables
270 // NOLINTBEGIN
271 MCNAPI static void** $vftable();
272 // NOLINTEND
273};
Definition RedactableString.h:10
Definition CartographyContainerManagerModel.h:18
Definition ItemInstance.h:15
Definition ItemStackBase.h:52
Definition AutoPlaceItem.h:5
Definition AutoPlaceResult.h:5
Definition ContainerScreenActionResult.h:14
Definition CreateContainerItemScope.h:18
Definition ItemStackRequestScope.h:16
Definition ItemTransferAmount.h:9
Definition SelectedSlotInfo.h:10
Definition SlotData.h:10