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
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
43public:
44 // virtual functions
45 // NOLINTBEGIN
46 virtual ~CartographyContainerManagerController() /*override*/ = default;
47
48 virtual void postInit(::std::weak_ptr<::ContainerManagerController> self) /*override*/;
49
50 virtual bool isOutputSlot(::std::string const& collectionName) const /*override*/;
51
52 virtual ::ItemStackBase const& getTakeableItemStackBase(::SlotData const& slot) const /*override*/;
53
54 virtual void setPreviewItemName(::Bedrock::Safety::RedactableString const& name) /*override*/;
55
56 virtual void setItemName(::Bedrock::Safety::RedactableString const& name) /*override*/;
57
58 virtual ::Bedrock::Safety::RedactableString const& getPreviewItemName() const /*override*/;
59
60 virtual ::Bedrock::Safety::RedactableString const& getItemName() const /*override*/;
61
62 virtual void updatePreviewItem() /*override*/;
63
64 virtual void handleTakeAmount(::SlotData const& dstSlot, int amount, ::SlotData const& srcSlot) /*override*/;
65
66 virtual void handleTakeAll(::SlotData const& dstSlot, ::SlotData const& srcSlot) /*override*/;
67
68 virtual void handlePlaceAll(::SelectedSlotInfo const& selected, ::SlotData const& dstSlot) /*override*/;
69
70 virtual void handleTakeHalf(::SlotData const& dstSlot, ::SlotData const& srcSlot) /*override*/;
71
72 virtual void handlePlaceOne(::SlotData const& srcSlot, ::SlotData const& dstSlot) /*override*/;
73
74 virtual int handleAutoPlace(
75 ::SlotData const& srcSlot,
76 int amount,
77 ::std::vector<::AutoPlaceItem> const& autoPlaceOrder,
78 ::std::vector<::AutoPlaceResult>& destinations
79 ) /*override*/;
80
81 virtual void _onContainerScreenAction(::ContainerScreenActionResult const& result) /*override*/;
82
83 virtual ::CreateContainerItemScope
84 _makeCreateItemScope(::SlotData const& srcSlot, ::ItemTransferAmount const&) /*override*/;
85
86 virtual void _onItemAcquired(::ItemInstance const& stack, ::SlotData const& srcSlot) /*override*/;
87
88 virtual void _updateItemStackRequest(
89 ::ContainerScreenRequestActionType,
91 ::ItemStackRequestScope& requestScope
92 ) /*override*/;
93 // NOLINTEND
94
95public:
96 // member functions
97 // NOLINTBEGIN
98 MCNAPI_C ::ItemInstance _buildResultItem();
99
100 MCNAPI_C void _clearName();
101
102 MCNAPI_C bool _createCraftItem(::ItemInstance& instance, ::ItemStackRequestScope const& requestScope);
103
104 MCNAPI_C bool _handleTransferCraft(::SlotData const& srcSlot, ::SlotData const& dstSlot);
105
106 MCNAPI_C void _setName(::Bedrock::Safety::RedactableString const& name);
107
108 MCNAPI_C void _setupCallbacks();
109 // NOLINTEND
110
111public:
112 // constructor thunks
113 // NOLINTBEGIN
114 MCNAPI_C void* $ctor(::std::weak_ptr<::CartographyContainerManagerModel> containerManagerModel);
115 // NOLINTEND
116
117public:
118 // virtual function thunks
119 // NOLINTBEGIN
120#ifdef LL_PLAT_C
121 MCNAPI void $postInit(::std::weak_ptr<::ContainerManagerController> self);
122
123 MCNAPI bool $isOutputSlot(::std::string const& collectionName) const;
124
125 MCNAPI ::ItemStackBase const& $getTakeableItemStackBase(::SlotData const& slot) const;
126
127 MCNAPI void $setPreviewItemName(::Bedrock::Safety::RedactableString const& name);
128
129 MCNAPI void $setItemName(::Bedrock::Safety::RedactableString const& name);
130
131 MCNAPI ::Bedrock::Safety::RedactableString const& $getPreviewItemName() const;
132
133 MCNAPI ::Bedrock::Safety::RedactableString const& $getItemName() const;
134
135 MCNAPI void $updatePreviewItem();
136
137 MCNAPI void $handleTakeAmount(::SlotData const& dstSlot, int amount, ::SlotData const& srcSlot);
138
139 MCNAPI void $handleTakeAll(::SlotData const& dstSlot, ::SlotData const& srcSlot);
140
141 MCNAPI void $handlePlaceAll(::SelectedSlotInfo const& selected, ::SlotData const& dstSlot);
142
143 MCNAPI void $handleTakeHalf(::SlotData const& dstSlot, ::SlotData const& srcSlot);
144
145 MCNAPI void $handlePlaceOne(::SlotData const& srcSlot, ::SlotData const& dstSlot);
146
147 MCNAPI int $handleAutoPlace(
148 ::SlotData const& srcSlot,
149 int amount,
150 ::std::vector<::AutoPlaceItem> const& autoPlaceOrder,
151 ::std::vector<::AutoPlaceResult>& destinations
152 );
153
154 MCNAPI void $_onContainerScreenAction(::ContainerScreenActionResult const& result);
155
156 MCNAPI ::CreateContainerItemScope $_makeCreateItemScope(::SlotData const& srcSlot, ::ItemTransferAmount const&);
157
158 MCNAPI void $_onItemAcquired(::ItemInstance const& stack, ::SlotData const& srcSlot);
159
160 MCNAPI void $_updateItemStackRequest(
161 ::ContainerScreenRequestActionType,
162 ::ContainerScreenActionResult const& result,
163 ::ItemStackRequestScope& requestScope
164 );
165#endif
166
167
168 // NOLINTEND
169
170public:
171 // vftables
172 // NOLINTBEGIN
173 MCNAPI static void** $vftable();
174 // NOLINTEND
175};
Definition RedactableString.h:10
Definition CartographyContainerManagerController.h:27
Definition CartographyContainerManagerModel.h:18
Definition ContainerManagerController.h:47
Definition ItemInstance.h:15
Definition ItemStackBase.h:44
Definition AutoPlaceItem.h:5
Definition AutoPlaceResult.h:5
Definition ContainerScreenActionResult.h:11
Definition CreateContainerItemScope.h:18
Definition ItemStackRequestScope.h:14
Definition ItemTransferAmount.h:5
Definition SelectedSlotInfo.h:5
Definition SlotData.h:5