26class StonecutterContainerManagerController :
public ::ContainerManagerController {
30 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::StonecutterContainerManagerModel>> mStonecutterContainerManagerModel;
31 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mSelectedStoneIndexNotifier;
32 ::ll::TypedStorage<8, 40, ::SlotData const> mCreatedItemOutputSlot;
33 ::ll::TypedStorage<8, 136, ::ItemResultPreview> mResultPreview;
40 StonecutterContainerManagerController();
46 virtual ~StonecutterContainerManagerController() =
default;
48 virtual void postInit(::std::weak_ptr<::ContainerManagerController> self) ;
50 virtual bool isOutputSlot(::std::string
const& collectionName)
const ;
52 virtual bool handleTakeAmount(
::SlotData const& dstSlot,
int amount,
::SlotData const& srcSlot) ;
62 virtual int handleAutoPlace(
65 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
66 ::std::vector<::AutoPlaceResult>& destinations
69 virtual ::ItemStackBase
const& getTakeableItemStackBase(
::SlotData const& slot)
const ;
73 virtual ::CreateContainerItemScope
78 virtual void _updateItemStackRequest(
79 ::ContainerScreenRequestActionType,
89 MCNAPI
explicit StonecutterContainerManagerController(
90 ::std::weak_ptr<::StonecutterContainerManagerModel> containerManagerModel
95 MCNAPI
void _updateResultItem();
97 MCNAPI
int getItemIdAuxForStonePattern(
int collectionIndex)
const;
99 MCNAPI ::ItemInstance getItemInstanceForStonePattern(
int collectionIndex)
const;
101 MCNAPI
int getNumberOfStonePatterns()
const;
103 MCNAPI
int getStackCountForStonePattern(
int collectionIndex)
const;
105 MCNAPI
bool hasInputItem()
const;
113 MCNAPI
void* $ctor(::std::weak_ptr<::StonecutterContainerManagerModel> containerManagerModel);
121 MCNAPI
void $postInit(::std::weak_ptr<::ContainerManagerController> self);
123 MCNAPI
bool $isOutputSlot(::std::string
const& collectionName)
const;
125 MCNAPI
bool $handleTakeAmount(
::SlotData const& dstSlot,
int amount,
::SlotData const& srcSlot);
135 MCNAPI
int $handleAutoPlace(
138 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
139 ::std::vector<::AutoPlaceResult>& destinations
142 MCNAPI ::ItemStackBase
const& $getTakeableItemStackBase(
::SlotData const& slot)
const;
146 MCNAPI ::CreateContainerItemScope
151 MCNAPI
void $_updateItemStackRequest(
152 ::ContainerScreenRequestActionType,