21 using SparseContainerData = ::std::unordered_map<int, ::ItemStack>;
26 ::ll::TypedStorage<8, 8, ::Container&> mBackingContainer;
27 ::ll::TypedStorage<4, 4, ::SparseContainerBackingSetType const> mBackingSetType;
28 ::ll::TypedStorage<8, 64, ::std::unordered_map<int, ::ItemStack>> mItems;
29 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ISparseContainerSetListener>> mSparseContainerSetListener;
30 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::IPlayerContainerSetter>> mPlayerSetter;
40 virtual ::ItemStack
const& getItem(
int slot)
const ;
43 virtual void setItem(
int modelSlot,
::ItemStack const& item) ;
46 virtual void startOpen(
::Player& player) ;
49 virtual void stopOpen(
::Player& player) ;
52 virtual int getContainerSize()
const ;
55 virtual int getMaxStackSize()
const ;
58 virtual void containerContentChanged(
int slot) ;
61 virtual void serverInitItemStackIds(
64 ::std::function<
void(
int,
::ItemStack const&)> onNetIdChanged
73 ::SparseContainerBackingSetType backingSetType,
74 ::std::unique_ptr<::ISparseContainerSetListener> sparseContainerSetListener,
75 ::std::unique_ptr<::IPlayerContainerSetter> playerSetter
78 MCAPI
void _setBackingContainerSlot(
int slot,
::ItemStack const& newItem);
86 ::SparseContainerBackingSetType backingSetType,
87 ::std::unique_ptr<::ISparseContainerSetListener> sparseContainerSetListener,
88 ::std::unique_ptr<::IPlayerContainerSetter> playerSetter
101 MCAPI ::ItemStack
const& $getItem(
int slot)
const;
103 MCAPI
void $setItem(
int modelSlot,
::ItemStack const& item);
105 MCAPI
void $startOpen(
::Player& player);
107 MCAPI
void $stopOpen(
::Player& player);
109 MCAPI
int $getContainerSize()
const;
111 MCAPI
int $getMaxStackSize()
const;
113 MCAPI
void $containerContentChanged(
int slot);
115 MCFOLD
void $serverInitItemStackIds(
118 ::std::function<
void(
int,
::ItemStack const&)> onNetIdChanged
125 MCAPI
static void** $vftableForContainerContentChangeListener();
127 MCAPI
static void** $vftableForContainer();
Definition ContainerContentChangeListener.h:5