25class SmithingTableContainerManagerController :
public ::ContainerManagerController {
29 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::SmithingTableContainerManagerModel>>
30 mSmithingTableContainerManagerModel;
31 ::ll::TypedStorage<8, 40, ::SlotData const> mCreatedItemOutputSlot;
32 ::ll::TypedStorage<8, 136, ::ItemResultPreview> mResultPreview;
39 SmithingTableContainerManagerController();
46 virtual ~SmithingTableContainerManagerController() =
default;
48 virtual ~SmithingTableContainerManagerController() ;
52 virtual bool isOutputSlot(::std::string
const&)
const ;
54 virtual bool isOutputSlot(::std::string
const& collectionName)
const ;
58 virtual ::ItemStackBase
const& getTakeableItemStackBase(
::SlotData const&)
const ;
60 virtual ::ItemStackBase
const& getTakeableItemStackBase(
::SlotData const& slot)
const ;
66 virtual void handleTakeAmount(
::SlotData const& dstSlot,
int amount,
::SlotData const& srcSlot) ;
82 virtual int handleAutoPlace(
85 ::std::vector<::AutoPlaceItem>
const&,
86 ::std::vector<::AutoPlaceResult>&
89 virtual int handleAutoPlace(
92 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
93 ::std::vector<::AutoPlaceResult>& destinations
104 virtual ::CreateContainerItemScope
107 virtual ::CreateContainerItemScope
117 MCNAPI
explicit SmithingTableContainerManagerController(
118 ::std::weak_ptr<::SmithingTableContainerManagerModel> containerManagerModel
121 MCNAPI
void _consumeItems();
125 MCNAPI ::std::pair<::ItemInstance, ::RecipeNetId> _getResult();
129 MCNAPI
void _setupCallbacks();
131 MCNAPI
void _updateResultPreview();
133 MCNAPI
bool getHasInputItem()
const;
135 MCNAPI
bool getHasMaterialItem()
const;
137 MCNAPI
bool getHasTemplateItem()
const;
139 MCNAPI ::SmithingTableTemplateType getSmithingTableTemplateType()
const;
141 MCNAPI
bool shouldCrossOutIconBeVisible();
149 MCNAPI
void* $ctor(::std::weak_ptr<::SmithingTableContainerManagerModel> containerManagerModel);
163 MCNAPI
bool $isOutputSlot(::std::string
const& collectionName)
const;
165 MCNAPI ::ItemStackBase
const& $getTakeableItemStackBase(
::SlotData const& slot)
const;
167 MCNAPI
void $handleTakeAmount(
::SlotData const& dstSlot,
int amount,
::SlotData const& srcSlot);
173 MCNAPI
int $handleAutoPlace(
176 ::std::vector<::AutoPlaceItem>
const& autoPlaceOrder,
177 ::std::vector<::AutoPlaceResult>& destinations