LeviLamina
Loading...
Searching...
No Matches
CraftingContainerManagerController Class Reference
Inheritance diagram for CraftingContainerManagerController:

Classes

struct  BlockChangeListener

Public Member Functions

virtual bool isOutputSlot (::std::string const &collectionName) const
virtual void handleTakeAmount (::SlotData const &dstSlot, int amount, ::SlotData const &srcSlot)
virtual void handleTakeAll (::SlotData const &dstSlot, ::SlotData const &srcSlot)
virtual void handlePlaceAll (::SelectedSlotInfo const &selected, ::SlotData const &dstSlot)
virtual void handleTakeHalf (::SlotData const &dstSlot, ::SlotData const &srcSlot)
virtual void handlePlaceOne (::SlotData const &srcSlot, ::SlotData const &dstSlot)
virtual int handleAutoPlace (::SlotData const &srcSlot, int amount, ::std::vector<::AutoPlaceItem > const &autoPlaceOrder, ::std::vector<::AutoPlaceResult > &destinations)
virtual int handleAutoPlaceStack (::SlotData const &srcSlot, ::ItemTakeType type, ::std::vector<::AutoPlaceItem > const &autoPlaceOrder, ::std::vector<::AutoPlaceResult > &destinations)
virtual void handleSplitSingle (::SlotData const &srcSlot, ::SlotData const &dstSlot)
virtual void handleSplitMultiple (::SelectedSlotInfo const &selected, ::ItemInstance const &itemTemplate, ::SlotData const &dstSlot)
virtual void handleAddToStack (::SlotData const &dstSlot, ::SlotData const &srcSlot, ::ItemTakeType type)
virtual bool handleDrop (::SlotData const &srcSlot, ::ItemTransferAmount const transferAmount)
virtual void closeContainers ()
virtual::ItemStackBase const & getTakeableItemStackBase (::SlotData const &slot) const
MCNAPI_C ::std::vector<::ItemInstance_craftItem (::ItemStackRequestScope const &requestScope, uchar craftCount)
MCNAPI_C void _filterRecipes ()
MCNAPI_C ::std::vector<::RecipeSearchResult_getRecipesForItem (::ItemInstance const &recipeItem, ::std::vector<::std::string > const &tags, bool)
MCNAPI_C void _handleItemCraftedEvents (::ItemInstance const &resultItem, ::std::vector< short > const &ingredientIds, ::ShapedRecipeTriggeredEvent const &shapedRecipeTriggeredEvent)
MCNAPI_C bool _handleTransferCraft (::SlotData const &srcSlot, ::SlotData const &dstSlot)
MCNAPI_C void _handleTransferCraftExtraResults (::std::vector<::ItemInstance > &allResults)
MCNAPI_C bool _inventoryContainsItemForRecipeInputSlot (::std::string const &containerName, int collectionIndex) const
MCNAPI_C::CreateContainerItemScope _makeCreateItemScopeCrafting (::SlotData const &srcSlot, ::ItemTransferAmount const &takeAmount, ::std::vector<::ItemInstance > &allResults)
MCNAPI_C::CreateContainerItemScope _makeCreateItemScopeCreative (::SlotData const &srcSlot, ::ItemTransferAmount const &takeAmount)
MCNAPI_C void _setupCallbacks ()
MCNAPI_C void _updateCraftingResultItem ()
MCNAPI_C bool autoCraftItem (::SlotData const &recipeSlot, ::ItemCraftType craftAmount, ::std::vector<::AutoPlaceItem > const &)
MCNAPI_C void clearAllRecipes ()
MCNAPI_C void evacuateCraftingContainerToInventory (::ContainerController *container, ::std::vector<::AutoPlaceItem > const &autoPlace)
MCNAPI_C int getBackgroundStyle (::std::string const &containerName, int collectionIndex) const
MCNAPI_C::CraftableCountingData getCraftableCount (::ItemInstance const &item)
MCNAPI_C::std::string const & getExpandoItemGroupName (::std::string const &collectionName, int collectionIndex)
MCNAPI_C::ItemInstance const & getGhostItem (::std::string const &collectionName, int collectionIndex)
MCNAPI_C int getIndexForCreativeItem (::std::string const &collectionName, ::ItemStackBase const &item) const
MCNAPI_C::ItemInstance const & getRecipeItem (::std::string const &collectionName, int collectionIndex) const
MCNAPI_C::std::string const & getSearchString () const
MCNAPI_C void handleRecipeSelect (::std::string const &collectionName, int collectionIndex, bool displayOnly, ::std::vector<::AutoPlaceItem > const &autoPlace)
MCNAPI_C bool isCreativeContainer (::std::string const &containerName) const
MCNAPI_C bool isExpandableItemFiltered (::std::string const &collectionName, int collectionIndex) const
MCNAPI_C bool isTakeableContainer (::std::string const &containerName) const
MCNAPI_C bool setLastCraftedItem (::ItemInstance const &item)
MCNAPI_C void setOnItemExpandedCallback (::std::function< void(::std::string const &, int, int)> callback)
MCNAPI_C void setSearchString (::std::string const &searchString)
MCNAPI_C void switchExpandoItem (::std::string const &collectionName, int collectionIndex)
MCNAPI_C void * $ctor (::std::weak_ptr<::CraftingContainerManagerModel > containerManagerModel)
MCAPI void $dtor ()
virtual void postInit (::std::weak_ptr<::ContainerManagerController >)
virtual void registerContainerCallbacks ()
virtual void setPreviewItemName (::Bedrock::Safety::RedactableString const &name)
virtual void setItemName (::Bedrock::Safety::RedactableString const &name)
virtual::Bedrock::Safety::RedactableString const & getPreviewItemName () const
virtual::Bedrock::Safety::RedactableString const & getItemName () const
virtual void updatePreviewItem ()
virtual void handlePlaceAmount (::SlotData const &srcSlot, int amount, ::SlotData const &dstSlot)
virtual bool handleCoalesce (::SlotData const &dstSlot, ::std::vector<::std::string > const &coalesceOrder, ::std::string const &coalesceSrc)
virtual bool handleSwap (::SlotData const &slotA, ::SlotData const &slotB)
virtual bool handleDestroy (::SelectedSlotInfo const &selected, ::ItemTransferAmount const transferAmount)
virtual bool handleDestroy (::SlotData const &srcSlot, ::ItemTransferAmount const transferAmount)
virtual bool handleConsume (::SlotData const &srcSlot, ::ItemTransferAmount const transferAmount)
virtual void _updateItemStackRequest (::ContainerScreenRequestActionType, ::ContainerScreenActionResult const &, ::ItemStackRequestScope &)
MCNAPI_C void _updateItemStackRequest (::ContainerScreenActionResult const &result, ::ItemStackRequestScope &requestScope)
virtual::CreateContainerItemScope _makeCreateItemScope (::SlotData const &, ::ItemTransferAmount const &)
virtual void _onItemTransferredFrom (::ItemInstance const &stack, ::SlotData const &srcSlot)
virtual void _onItemTransferredTo (::ItemInstance const &stack, ::SlotData const &dstSlot)
virtual void _onItemAcquired (::ItemInstance const &stack, ::SlotData const &srcSlot)
virtual void _onItemPlaced (::ItemInstance const &stack, ::SlotData const &dstSlot)
virtual void _onContainerScreenAction (::ContainerScreenActionResult const &result)
MCNAPI_C void _addContainer (::std::shared_ptr<::ContainerController > uiContainer)
MCNAPI_C void _addOutputsAsDestinations (::ContainerScreenActionResult const &result, ::std::vector<::AutoPlaceResult > &destinations) const
MCNAPI_C int _appendAutoPlaceOutputs (::ItemTransferRequest &request, ::ItemStackBase const &itemToPlace, int requestAmount, ::std::vector<::AutoPlaceItem > const &autoPlaceOrder, int placementGroup)
MCNAPI_C void _autoPlaceOrDrop (::SlotData const &srcSlot, ::ItemTransferAmount amount, ::std::vector<::AutoPlaceItem > const &autoPlaceOrder)
MCNAPI_C int _buildAutoPlaceRequest (::SlotData const &srcSlot, ::ItemTransferAmount requestTakeAmount, ::std::vector<::AutoPlaceItem > const &autoPlaceOrder, ::ItemTransferRequest &request)
MCNAPI_C int _bulkAutoPlaceOutput (int craftableCount, int amount, ::ItemInstance outputItem, ::SlotData const &srcSlot, ::std::vector<::AutoPlaceItem > const &autoPlaceOrder, ::std::vector<::AutoPlaceResult > &destinations)
MCNAPI_C::AutoPlaceRequest const _canAutoPlace (::SlotData const &srcSlot, ::ItemTransferAmount requestTakeAmount, ::std::vector<::AutoPlaceItem > const &autoPlaceOrder)
MCNAPI_C bool _canCraftIntoStorageItem (::ItemInstance const &itemToCraft, ::ItemStack const &storageItem)
MCNAPI_C void _clearCreativeHotbar ()
MCNAPI_C void _closeContainers (::ContainerManagerModel &containerModel)
MCNAPI_C::ContainerValidationSlotData _getContainerValidationSlotData (::SlotData const &slotData) const
MCNAPI_C::ItemStack const & _getItem (::SlotData const &slot, bool canBeEmpty) const
MCNAPI_C::ItemStack const & _getItem0 (::ContainerEnumName collectionEnumName) const
MCNAPI_C ::std::tuple<::ItemStack const &, ::std::shared_ptr<::ContainerController > > _getItemAndContainerController (::SlotData const &slot, bool canBeEmpty) const
MCNAPI_C ::std::unordered_map<::FullContainerName, ::std::shared_ptr<::Container > > _getPredictiveContainers ()
MCNAPI_C::ContainerScreenContext _getScreenContext () const
MCNAPI_C::SlotData _getSlotData (::ContainerValidationSlotData const &containerValidationSlotData) const
MCNAPI_C bool _handleAutoPlace (::ItemTransferRequest const &request)
MCNAPI_C void _handleSplitMultiple (::SelectedSlotInfo const &selected, ::ItemInstance const &itemTemplate, ::SlotData const &dstSlot)
MCNAPI_C bool _isContainerSimulationEnabled () const
MCNAPI_C void _onItemTransferring (::ItemStack const &stack, ::SlotData const &srcSlot, ::ContainerModel *srcModel, ::SlotData const &dstSlot, ::ContainerModel *dstModel)
MCNAPI_C void _onTransfer (::ContainerScreenActionResult const &result)
MCNAPI_C void _playCraftingSound (::std::weak_ptr<::ContainerManagerModel > const &containerManagerModel, ::SharedTypes::Legacy::LevelSoundEvent soundEvent)
MCNAPI_C void _registerSetThisDirtyCallback (::std::shared_ptr<::ContainerModel > containerModel)
MCNAPI_C::ContainerCategory _resolveToRealSourceSlot (::ContainerModel *srcModel, ::SlotData const &srcSlot, ::SlotData &realSrcSlot) const
MCNAPI_C void _returnToPlayerOrDrop (::SlotData const &srcSlot, ::ItemTransferAmount amount)
MCNAPI_C void _shiftLeftStorageItemContents (::std::string const &collectionName, int selectedItemIdx, ::std::vector<::ItemStack > const &items)
MCNAPI_C bool _transfer (::ItemTransferType transferType, ::SlotData const &dstSlot, ::SlotData const &srcSlot, ::ItemTransferAmount transferAmount, bool allowSwap, bool allowVisualOnlySameItemSwap)
MCNAPI_C bool _transferAll (::ItemTransferType transferType, ::SlotData const &dstSlot, ::SlotData const &srcSlot)
MCNAPI_C bool _transferSpecial (::SlotData const &srcSlot, ::ItemTransferAmount transferAmount, ::ItemSpecialLocation location)
MCNAPI_C::ItemStackRequestScope _tryBeginItemStackRequest (::ContainerManagerModel const *managerModel)
MCNAPI_C bool _updatePreviewItem (::ItemInstance &previewItem, ::ItemInstance const &newItem, ::std::string const &collectionName)
MCNAPI_C::std::string getBlockName (::BlockPos const &blockPos) const
MCNAPI_C ::std::shared_ptr<::ContainerControllergetContainerController (::std::string const &containerName) const
MCNAPI_C ::std::weak_ptr<::ContainerModelgetContainerModel (::std::string const &containerName) const
MCNAPI_C int getContainerSize (::std::string const &collectionName) const
MCNAPI_C void getCurrentContainerStateList (::std::vector<::ItemStateData > &inventoryState)
MCNAPI_C ::std::shared_ptr<::ContainerModelgetDynamicContainerModel (::FullContainerName const &name)
MCNAPI_C::std::string getEntityName (::ActorUniqueID const &entityUniqueID) const
MCNAPI_C::std::string getExpandoGroupName (::std::string const &collectionName, int collectionIndex) const
MCNAPI_C::ContainerExpandStatus getExpandoStatus (::std::string const &containerName, int collectionIndex) const
MCNAPI_C::ItemStack const & getItemStack (::std::string const &collectionName, int collectionIndex) const
MCNAPI_C bool handleMoveItemFromSlotIntoStorageItem (::SlotData const &srcSlot, ::ItemStack const &dstStorageItem, ::std::optional< uchar > requestedAmount)
MCNAPI_C bool handleMoveSelectedItemFromStorageItem (::ItemStack const &srcStorageItem, int selectedItemIdx, ::SlotData const &dstSlot)
MCNAPI_C bool handleMoveSelectedItemFromStorageItemToStorageItem (::ItemStack const &srcStorageItem, int selectedItemIdx, ::ItemStack const &dstStorageItem)
MCNAPI_C bool handleMoveTopItemFromStorageItem (::ItemStack const &srcStorageItem, ::SlotData const &dstSlot)
MCNAPI_C bool hasContainerController (::std::string const &containerName) const
MCNAPI_C bool isExpandoItem (::std::string const &collectionName, int collectionIndex)
MCNAPI_C bool isItemFiltered (::std::vector<::std::string > containerNames, ::ItemStackBase const &item) const
MCNAPI_C bool isValid (float pickRange)
MCNAPI_C bool playerHasRoomForItem (::ItemInstance const &item) const
MCNAPI_C void resetSplitStack ()
MCNAPI_C void sortStorageContainer (::std::string const &storageName)
MCNAPI_C void * $ctor (::std::weak_ptr<::ContainerManagerModel > containerManagerModel)

Static Public Member Functions

static MCAPI void ** $vftable ()
static MCNAPI_C ::std::string_view const & TRANSFER_NO_DESTINATION ()
static MCNAPI_C ::std::string_view const & TRANSFER_NO_ORIGIN ()

Public Attributes

::ll::TypedStorage< 8, 16, ::std::weak_ptr<::CraftingContainerManagerModel > > mCraftingContainerManagerModel
::ll::TypedStorage< 4, 4, int > mGridSize
::ll::TypedStorage< 8, 8, ::Recipes * > mLevelRecipes
::ll::TypedStorage< 8, 24, ::std::vector<::std::reference_wrapper<::Recipe const > > > mRecipes
::ll::TypedStorage< 8, 8, ::Recipe const * > mCraftingRecipe
::ll::TypedStorage< 8, 8, ::Recipe const * > mSelectedRecipe
::ll::TypedStorage< 1, 1, bool > mDisplayingInvalidRecipe
::ll::TypedStorage< 1, 1, bool > mClearInputGridOnChange
::ll::TypedStorage< 8, 40, ::SlotData const > mCreatedItemOutputSlot
::ll::TypedStorage< 8, 24, ::std::vector<::ItemStateData > > mSavedInventoryState
::ll::TypedStorage< 8, 48, ::CraftingSessionInfomCraftingInformation
::ll::TypedStorage< 8, 24, ::std::vector<::ItemStack > > mRemainingItems
::ll::TypedStorage< 8, 128, ::ItemInstancemResultPreviewItem
::ll::TypedStorage< 8, 24, ::std::vector<::ItemInstance > > mAllResults
::ll::TypedStorage< 8, 16, ::std::shared_ptr< bool > > mListenerLifeIndicator
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::CraftingContainerManagerController::BlockChangeListener > > mBlockChangeListener
::ll::TypedStorage< 1, 1, bool > mCloseCraftingContainer
::ll::TypedStorage< 1, 1, bool > mIsCrafting
::ll::TypedStorage< 8, 16, ::std::weak_ptr<::ContainerManagerModel > > mContainerManagerModel
::ll::TypedStorage< 8, 64, ::std::unordered_map<::std::string, ::std::shared_ptr<::ContainerController > > > mContainers
::ll::TypedStorage< 8, 24, ::std::vector<::ContainerSplitControl > > mContainerSplitItemStackItems
::ll::TypedStorage< 8, 24, ::std::vector<::ContainerSimulationSplitStack > > mContainerSimulationSplitItemStacks
::ll::TypedStorage< 4, 4, int > mSplitItemRemainder
::ll::TypedStorage< 1, 1, bool > mContainerDirty
::ll::TypedStorage< 1, 1, bool > mContainersClosed
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::ContainerScreenSimulation > > mSimulation
::ll::TypedStorage< 8, 16, ::Bedrock::PubSub::SubscriptionmDynamicContainerNotifier

Member Function Documentation

◆ isOutputSlot()

virtual bool CraftingContainerManagerController::isOutputSlot ( ::std::string const & collectionName) const
virtual

Reimplemented from ContainerManagerController.

◆ handleTakeAmount()

virtual void CraftingContainerManagerController::handleTakeAmount ( ::SlotData const & dstSlot,
int amount,
::SlotData const & srcSlot )
virtual

Reimplemented from ContainerManagerController.

◆ handleTakeAll()

virtual void CraftingContainerManagerController::handleTakeAll ( ::SlotData const & dstSlot,
::SlotData const & srcSlot )
virtual

Reimplemented from ContainerManagerController.

◆ handlePlaceAll()

virtual void CraftingContainerManagerController::handlePlaceAll ( ::SelectedSlotInfo const & selected,
::SlotData const & dstSlot )
virtual

Reimplemented from ContainerManagerController.

◆ handleTakeHalf()

virtual void CraftingContainerManagerController::handleTakeHalf ( ::SlotData const & dstSlot,
::SlotData const & srcSlot )
virtual

Reimplemented from ContainerManagerController.

◆ handlePlaceOne()

virtual void CraftingContainerManagerController::handlePlaceOne ( ::SlotData const & srcSlot,
::SlotData const & dstSlot )
virtual

Reimplemented from ContainerManagerController.

◆ handleAutoPlace()

virtual int CraftingContainerManagerController::handleAutoPlace ( ::SlotData const & srcSlot,
int amount,
::std::vector<::AutoPlaceItem > const & autoPlaceOrder,
::std::vector<::AutoPlaceResult > & destinations )
virtual

Reimplemented from ContainerManagerController.

◆ handleAutoPlaceStack()

virtual int CraftingContainerManagerController::handleAutoPlaceStack ( ::SlotData const & srcSlot,
::ItemTakeType type,
::std::vector<::AutoPlaceItem > const & autoPlaceOrder,
::std::vector<::AutoPlaceResult > & destinations )
virtual

Reimplemented from ContainerManagerController.

◆ handleSplitSingle()

virtual void CraftingContainerManagerController::handleSplitSingle ( ::SlotData const & srcSlot,
::SlotData const & dstSlot )
virtual

Reimplemented from ContainerManagerController.

◆ handleSplitMultiple()

virtual void CraftingContainerManagerController::handleSplitMultiple ( ::SelectedSlotInfo const & selected,
::ItemInstance const & itemTemplate,
::SlotData const & dstSlot )
virtual

Reimplemented from ContainerManagerController.

◆ handleAddToStack()

virtual void CraftingContainerManagerController::handleAddToStack ( ::SlotData const & dstSlot,
::SlotData const & srcSlot,
::ItemTakeType type )
virtual

Reimplemented from ContainerManagerController.

◆ handleDrop()

virtual bool CraftingContainerManagerController::handleDrop ( ::SlotData const & srcSlot,
::ItemTransferAmount const transferAmount )
virtual

Reimplemented from ContainerManagerController.

◆ closeContainers()

virtual void CraftingContainerManagerController::closeContainers ( )
virtual

Reimplemented from ContainerManagerController.

◆ $dtor()

MCAPI void CraftingContainerManagerController::$dtor ( )
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

◆ $vftable()

MCAPI void ** CraftingContainerManagerController::$vftable ( )
static
Attention
This function is not yet publicly available. To request access: reference this function in your code and attempt to link. The linker will report the exact symbol name. Submit a access request at https://github.com/LiteLDev/mcapi-requests/issues/new including the full symbol name.

The documentation for this class was generated from the following file: