38 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::PlayerContainerRefresher>>> mContainerRefresher;
39 ::ll::TypedStorage<8, 16, ::gsl::not_null<::std::shared_ptr<::DynamicContainerTracker>>> mDynamicContainerTracker;
40 ::ll::TypedStorage<8, 16, ::WeakRef<::IContainerRegistryAccess>> mRegistryAccess;
41 ::ll::TypedStorage<8, 8, ::Player&> mPlayer;
42 ::ll::TypedStorage<8, 24, ::std::vector<::ItemStack>> mLastSlots;
43 ::ll::TypedStorage<1, 1, ::ContainerID> mContainerId;
44 ::ll::TypedStorage<1, 1, ::SharedTypes::Legacy::ContainerType> mContainerType;
49 void(::SharedTypes::Legacy::ContainerType),
52 mContainerTypeSubscribers;
57 mInformControllerOfDestructionCallbacks;
58 ::ll::TypedStorage<8, 40, ::ContainerScreenContext> mScreenContext;
59 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::std::shared_ptr<::ContainerModel>>> mContainers;
61 mOnDynamicContainerChangePublisher;
80 virtual ::ContainerID getContainerId()
const ;
83 virtual void setContainerId(::ContainerID
id) ;
86 virtual ::SharedTypes::Legacy::ContainerType getContainerType()
const ;
89 virtual void setContainerType(::SharedTypes::Legacy::ContainerType type) ;
92 virtual ::Bedrock::PubSub::Subscription
93 registerContainerTypeListener(::std::function<
void(::SharedTypes::Legacy::ContainerType)> callback)
const
97 virtual void debitPlayerLevels(
int levels);
100 virtual bool isCreativeMode()
const;
103 virtual bool isClientSide()
const;
106 virtual bool isServerAuthoritative()
const;
109 virtual bool isValid(
float pickRange);
112 virtual void serverInitItemStackIds() ;
119 virtual ::ItemStack
const& getFullContainerSlot(
int slot,
::FullContainerName const& name)
const ;
122 virtual void broadcastChanges() ;
125 virtual ::ContainerScreenContext _postInit() = 0;
133 MCAPI
void _addContainer(::std::shared_ptr<::ContainerModel> containerModel);
135 MCAPI
bool _isPlayerInRangeOfPosition(
::BlockPos const& blockPos,
float pickRange)
const;
137 MCAPI
void addDynamicContainer(::std::shared_ptr<::ContainerModel> model);
139 MCAPI
void postInit();
145 MCAPI
void* $ctor(::ContainerID containerId,
::Player& player);
159 MCFOLD ::ContainerID $getContainerId()
const;
161 MCFOLD
void $setContainerId(::ContainerID
id);
163 MCFOLD ::SharedTypes::Legacy::ContainerType $getContainerType()
const;
165 MCAPI
void $setContainerType(::SharedTypes::Legacy::ContainerType type);
167 MCAPI ::Bedrock::PubSub::Subscription
168 $registerContainerTypeListener(::std::function<
void(::SharedTypes::Legacy::ContainerType)> callback)
const;
170 MCAPI
void $debitPlayerLevels(
int levels);
172 MCAPI
bool $isCreativeMode()
const;
174 MCAPI
bool $isClientSide()
const;
176 MCAPI
bool $isServerAuthoritative()
const;
178 MCAPI
bool $isValid(
float pickRange);
180 MCAPI
void $serverInitItemStackIds();
184 MCAPI ::ItemStack
const& $getFullContainerSlot(
int slot,
::FullContainerName const& name)
const;
186 MCAPI
void $broadcastChanges();
192 MCAPI
static void** $vftable();