26 enum class PotFace : uint64 {
33 using SherdList = ::std::array<::std::string, 4>;
38 ::ll::TypedStorage<8, 128, ::std::array<::std::string, 4>> mSherdItemNames;
39 ::ll::TypedStorage<8, 152, ::ItemStack> mContainedItem;
40 ::ll::TypedStorage<1, 1, ::DecoratedPotAnimation> mAnimation;
41 ::ll::TypedStorage<4, 4, int> mAnimationTick;
46 DecoratedPotBlockActor();
57 virtual void serverInitItemStackIds(
60 ::std::function<
void(
int,
::ItemStack const&)> onNetIdChanged
63 virtual int getContainerSize()
const ;
65 virtual int getMaxStackSize()
const ;
67 virtual ::ItemStack
const& getItem(
int index)
const ;
69 virtual void setItem(
int modelSlot,
::ItemStack const& item) ;
71 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(
::BlockSource&) ;
75 virtual ~DecoratedPotBlockActor() =
default;
81 MCAPI
explicit DecoratedPotBlockActor(
::BlockPos const& pos);
87 MCAPI
void _setContainedItem(
::ItemStack const& item);
91 MCAPI
void tryAddItem(
::Player& player);
97 MCAPI static ::std::optional<::std::array<::std::string, 4>> _tryGetSherdsFromItem(
::ItemStackBase const& item);
99 MCAPI_C static ::std::string getDelimitedConcatenatedSherdNames(
::CompoundTag const* userData);
101 MCAPI
static void removeDefaultSherdsFromUserData(
::ItemStackBase& itemInstance);
104 saveSherdsToItemForInventoryRendering(
::ItemStack& itemInstance, ::std::string
const& screenSherdNames);
107 saveSherdsToTag(
::CompoundTag& tag, ::std::array<::std::string, 4>
const& sherds,
bool forceSaveDefaultSherds);
109 MCAPI static ::std::optional<::std::array<::std::string, 4>> tryGetSherdsFromTag(
::CompoundTag const& tag);
115 MCAPI static ::std::array<::std::string, 4>
const& DEFAULT_SHERD_LIST();
134 $serverInitItemStackIds(
int containerSlot,
int, ::std::function<
void(
int,
::ItemStack const&)> onNetIdChanged);
136 MCFOLD
int $getContainerSize()
const;
138 MCFOLD
int $getMaxStackSize()
const;
140 MCFOLD ::ItemStack
const& $getItem(
int index)
const;
142 MCAPI
void $setItem(
int modelSlot,
::ItemStack const& item);
144 MCFOLD ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(
::BlockSource&);
Definition SaveContext.h:5