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

Classes

struct  PredictiveContainer
struct  OpenSessionContainerData
struct  ClientScreenData
struct  OwningPredictiveContainer

Public Types

using BaseContainerSetter = ::std::function<void(::ItemStack const&)>
using LegacyRequestScope = ::gsl::final_action<::std::function<void()>>

Public Member Functions

virtual::SparseContainer * initOpenContainer (::BlockSource &region, ::FullContainerName const &openContainerId, ::ContainerWeakRef const &containerWeakRef)
virtual::ItemStackRequestId getRequestId () const
virtual bool allowInventoryTransactionManager () const
virtual ::gsl::final_action<::std::function< void()> > _tryBeginClientLegacyTransactionRequest ()
virtual void _addLegacyTransactionRequestSetItemSlot (::ItemStackNetManagerScreen &screen, ::SharedTypes::Legacy::ContainerType containerType, int slot)
virtual void _initScreen (::ItemStackNetManagerScreen &screen)
MCNAPI_C void _beginRequest (::ItemStackRequestScreen screen)
MCNAPI_C void _clearPredictiveContainerRequest (::ItemStackRequestId const &requestId, ::ItemStackNetManagerClient::PredictiveContainer &predictiveContainer, bool shouldBeEmpty)
MCNAPI_C void _endRequest ()
MCNAPI_C ::std::unique_ptr<::ItemStackRequestData_endTakeRequest ()
MCNAPI_C ::std::unordered_map<::ContainerEnumName, ::std::unordered_set< uchar > > _getLegacyTransactionSetItemSlots () const
MCNAPI_C::ItemStackNetManagerClient::PredictiveContainer * _getPredictiveContainer (::Container *sparseContainer)
MCNAPI_C void _initPlayerContainers ()
MCNAPI_C void _processResponseSlot (::ItemStackRequestId const &requestId, ::ItemStackNetManagerClient::PredictiveContainer &predictiveContainer, ::ItemStackResponseSlotInfo const &responseInfo)
MCNAPI_C::ItemStackNetManagerClient::ClientScreenData * _tryGetCurrentClientScreen ()
MCNAPI_C void addContainerToRequest (::ItemStackRequestId requestId, ::Container *container)
MCNAPI_C void addRequestAction (::std::unique_ptr<::ItemStackRequestAction > requestAction)
MCNAPI_C void cacheHistoricPrediction (::Container *container, ::ItemStackRequestId const &requestId, int slot, ::ItemStack &&item)
MCNAPI_C void cacheZeroedOutItem (::Container *container, ::ItemStackRequestId const &requestId, int slot, ::ItemStack &&item)
MCNAPI_C void clearZeroedOutItem (::Container *container, ::ItemStackRequestId const &requestId, int slot)
MCNAPI_C ::std::unordered_map<::FullContainerName, ::std::shared_ptr<::Container > > getPredictiveContainers ()
MCNAPI_C void handleItemStackResponse (::std::vector<::ItemStackResponseInfo > const &responses)
MCNAPI_C void trySendBatch ()
virtual bool isEnabled () const
virtual bool retainSetItemStackNetIdVariant () const
virtual void onContainerScreenOpen (::ContainerScreenContext const &screenContext)
virtual void onContainerScreenClose ()
MCAPI bool _isRequestActionAllowed (::ItemStackRequestAction const &requestAction)
MCAPI void _pushScreen (::ContainerScreenContext screenContext)
MCAPI::ContainerScreenContext const & getScreenContext () const
MCAPI void * $ctor (::Player &player, bool isClientSide, bool isEnabled)
MCAPI void $dtor ()
MCFOLD bool $isEnabled () const
MCFOLD bool $retainSetItemStackNetIdVariant () const
MCAPI ::gsl::final_action<::std::function< void()> > $_tryBeginClientLegacyTransactionRequest ()
MCFOLD void $onContainerScreenOpen (::ContainerScreenContext const &screenContext)
MCAPI void $onContainerScreenClose ()
MCFOLD::SparseContainer * $initOpenContainer (::BlockSource &, ::FullContainerName const &, ::ContainerWeakRef const &)
MCFOLD void $_addLegacyTransactionRequestSetItemSlot (::ItemStackNetManagerScreen &, ::SharedTypes::Legacy::ContainerType containerType, int slot)
MCFOLD void $_initScreen (::ItemStackNetManagerScreen &)

Static Public Member Functions

static MCAPI void ** $vftable ()
static MCAPI ::gsl::final_action<::std::function< void()> > _tryBeginClientLegacyTransactionRequest (::Player *player)
static MCAPI bool setPlayerContainer (::Player &player, ::SharedTypes::Legacy::ContainerType containerType, int slot, ::ItemStack const &item, ::ItemStack &slotItem, ::std::function< void(::ItemStack const &)> const &callback)

Public Attributes

::ll::TypedStorage< 1, 1, bool > mIsHandlingResponse
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::ItemStackRequestData > > mRequest
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::ItemStackRequestBatch > > mRequestBatch
::ll::TypedStorage< 8, 24, ::WeakRef<::EntityContext > > mRequestScreen
::ll::TypedStorage< 1, 1, bool const > mIsEnabled
::ll::TypedStorage< 1, 1, bool const > mIsClientSide
::ll::TypedStorage< 8, 8, ::Player & > mPlayer
::ll::TypedStorage< 8, 16, ::WeakRef<::EntityRegistry > > mLevelWeakRegistry
::ll::TypedStorage< 8, 16, ::OwnerPtr<::EntityRegistry > > mEntityRegistry
::ll::TypedStorage< 8, 8, ::std::unique_ptr<::ItemStackNetManagerScreenStack > > mScreenStack
::ll::TypedStorage< 1, 1, bool > mCurrentRequestHasCraftAction
::ll::TypedStorage< 4, 16, ::ItemStackLegacyRequestId > mLegacyTransactionRequestId

Member Function Documentation

◆ getRequestId()

virtual::ItemStackRequestId ItemStackNetManagerClient::getRequestId ( ) const
virtual

◆ allowInventoryTransactionManager()

virtual bool ItemStackNetManagerClient::allowInventoryTransactionManager ( ) const
virtual

◆ _addLegacyTransactionRequestSetItemSlot()

virtual void ItemStackNetManagerClient::_addLegacyTransactionRequestSetItemSlot ( ::ItemStackNetManagerScreen & screen,
::SharedTypes::Legacy::ContainerType containerType,
int slot )
virtual

Reimplemented from ItemStackNetManagerBase.

◆ _initScreen()

virtual void ItemStackNetManagerClient::_initScreen ( ::ItemStackNetManagerScreen & screen)
virtual

Reimplemented from ItemStackNetManagerBase.

◆ $vftable()

MCAPI void ** ItemStackNetManagerClient::$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: