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