25class CraftingContainerManagerModel :
public ::ContainerManagerModel {
28 using FilterFunction = ::std::function<::FilterResult(
::ItemInstance const&,
bool)>;
33 ::ll::TypedStorage<4, 12, ::BlockPos> mBlockPos;
34 ::ll::TypedStorage<1, 1, bool> mWorkbench;
35 ::ll::TypedStorage<1, 1, bool> mPocket;
36 ::ll::TypedStorage<1, 1, bool> mCraftableFilterOn;
37 ::ll::TypedStorage<8, 32, ::std::string> mSearchString;
38 ::ll::TypedStorage<8, 32, ::std::string> mCaseFoldedSearchString;
39 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ContainerModel>> mInventoryContainerModel;
40 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ContainerModel>> mCraftingInputContainerModel;
41 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::ContainerModel>> mHotbarContainerModel;
42 ::ll::TypedStorage<8, 64, ::RecipeIngredientSet> mIngredientSet;
43 ::ll::TypedStorage<8, 128, ::ItemInstance> mLastCraftedItem;
44 ::ll::TypedStorage<4, 4, int> mContainerPopulationTabIndex;
45 ::ll::TypedStorage<8, 8, uint64> mContainerPopulationGroupIndex;
46 ::ll::TypedStorage<8, 8, uint64> mContainerPopulationGroupItemIndex;
47 ::ll::TypedStorage<8, 8, uint64> mContainerPopulationItemIndex;
48 ::ll::TypedStorage<8, 8, uint64> mContainerPopulationTotalItemCount;
55 CraftingContainerManagerModel();
62 virtual ~CraftingContainerManagerModel() =
default;
64 virtual ~CraftingContainerManagerModel() ;
67 virtual ::std::vector<::ItemStack> getItemCopies()
const ;
69 virtual void setSlot(
int,
::ItemStack const&,
bool) ;
71 virtual ::ItemStack
const& getSlot(
int)
const ;
73 virtual void setData(
int,
int) ;
75 virtual void broadcastChanges() ;
77 virtual bool isValid(
float pickRange) ;
81 virtual ::ContainerScreenContext _postInit() ;
88 MCAPI CraftingContainerManagerModel(
89 ::ContainerID containerId,
93 bool craftableFilterOn,
95 ::std::string
const& inventorySearch
98 MCAPI ::std::shared_ptr<::FilteredContainerModel> _createContainerModel(
99 ::ContainerEnumName containerEnumName,
105 MCAPI ::FilterResult _filterByInventory(
::ItemInstance const& item,
bool includeCursorItem)
const;
107 MCAPI ::FilterResult _filterByText(
::ItemInstance const& item, ::TextSearchMode searchMode)
const;
109 MCAPI
bool _foundInStartOfAnyWord(::std::string
const& itemName)
const;
113 MCAPI ::std::vector<::std::string>
const getCraftingTags()
const;
115 MCAPI
bool hasIngredientSetChanged(
::ItemStack const& inHand);
117 MCAPI
void setIsFiltering(
bool craftableFilterOn);
119 MCAPI
void setSearchString(::std::string
const& searchString);
128 ::ContainerID containerId,
132 bool craftableFilterOn,
134 ::std::string
const& inventorySearch
151 MCFOLD ::std::vector<::ItemStack> $getItemCopies()
const;
153 MCFOLD
void $setSlot(
int,
::ItemStack const&,
bool);
155 MCFOLD ::ItemStack
const& $getSlot(
int)
const;
157 MCFOLD
void $setData(
int,
int);
159 MCFOLD
void $broadcastChanges();
161 MCAPI
bool $isValid(
float pickRange);
165 MCAPI ::ContainerScreenContext $_postInit();
Definition ContainerScreenContext.h:16