3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/DirtyFlag.h"
7#include "mc/client/gui/ViewRequest.h"
8#include "mc/client/gui/screens/controllers/BlockContainerScreenController.h"
9#include "mc/world/item/ItemInstance.h"
26 ::ll::TypedStorage<8, 8, ::BlockSource*> mRegion;
27 ::ll::TypedStorage<8, 8, ::BlockActor*> mBlockActor;
28 ::ll::TypedStorage<4, 4, ::std::bitset<9>> mDisabledSlotsPrediction;
29 ::ll::TypedStorage<8, 8, int64> mLastDisabledSlotsInteractedTime;
30 ::ll::TypedStorage<8, 128, ::ItemInstance> mCrafterOutputItem;
35 CrafterScreenController();
40 virtual ~CrafterScreenController() =
default;
42 virtual ::ui::ViewRequest handleEvent(::ScreenEvent& screenEvent) ;
44 virtual ::ui::DirtyFlag tick() ;
50 MCAPI CrafterScreenController(
51 ::std::shared_ptr<::ClientInstanceScreenModel> model,
53 ::BlockPos
const& pos,
54 ::ActorUniqueID uniqueId
57 MCAPI
void _registerBindings();
59 MCAPI
void _registerEventHandlers();
61 MCAPI
void _setToggledStateForSlot(
int slot,
bool shouldEnable);
68 ::std::shared_ptr<::ClientInstanceScreenModel> model,
70 ::BlockPos
const& pos,
71 ::ActorUniqueID uniqueId
78 MCAPI ::ui::ViewRequest $handleEvent(::ScreenEvent& screenEvent);
80 MCAPI ::ui::DirtyFlag $tick();
Definition BlockActor.h:32
Definition BlockContainerScreenController.h:5
Definition BlockSource.h:68
Definition ClientInstanceScreenModel.h:5
Definition CrafterScreenController.h:5
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForScreenController()
Definition ActorUniqueID.h:5
Definition ScreenEvent.h:5