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

Public Types

enum class  SlotState : uchar { Free = 0 , Occupied = 1 , Invalid = 2 }
 
enum class  PoweredType : int {
  Unconnected = 0 , Right = 1 , Center = 2 , Left = 3 ,
  Count = 4
}
 
enum class  NeighborDirection : uchar { Right = 0 , Left = 1 }
 
enum class  SwapItemResult : int { NoItemsTransferred = 0 , SingleItemTransfer = 1 , TwoItemsSwapped = 2 }
 

Public Member Functions

virtual void movedByPiston (::BlockSource &region, ::BlockPos const &pos) const
 
virtual void neighborChanged (::BlockSource &region, ::BlockPos const &pos, ::BlockPos const &neighborPos) const
 
virtual void setupRedstoneComponent (::BlockSource &region, ::BlockPos const &pos) const
 
virtual void onRedstoneUpdate (::BlockSource &region, ::BlockPos const &pos, int strength, bool isFirstTime) const
 
virtual bool hasComparatorSignal () const
 
virtual int getComparatorSignal (::BlockSource &region, ::BlockPos const &pos, ::Block const &block, uchar dir) const
 
virtual::AABB getCollisionShape (::Block const &block, ::IConstBlockSource const &, ::BlockPos const &pos, ::optional_ref<::GetCollisionShapeInterface const >) const
 
virtual::AABB const & getOutline (::Block const &block, ::IConstBlockSource const &, ::BlockPos const &pos, ::AABB &bufferValue) const
 
virtual::AABB const & getVisualShapeInWorld (::Block const &block, ::IConstBlockSource const &, ::BlockPos const &pos, ::AABB &bufferAABB) const
 
virtual bool isInteractiveBlock () const
 
virtual void onRemove (::BlockSource &region, ::BlockPos const &pos) const
 
virtual bool canProvideSupport (::Block const &, uchar, ::BlockSupportType) const
 
virtual bool liquidCanFlowIntoFromDirection (uchar flowIntoFacing, ::std::function<::Block const &(::BlockPos const &)> const &getBlock, ::BlockPos const &pos) const
 
virtual void _addHardCodedBlockComponents (::Experiments const &)
 
MCAPI bool _blockHasPoweredShelfType (::BlockSource const &region, ::BlockPos const &pos, ::ShelfBlock::PoweredType type) const
 
MCAPI ::std::tuple<::ShelfBlockActor *, ::ShelfBlockActor *, ::ShelfBlockActor * > _getPoweredShelfBlockActors (::BlockPos const &pos, ::BlockSource &region) const
 
MCAPI ::std::tuple<::ShelfBlockActor *, ::ShelfBlockActor *, ::ShelfBlockActor * > _getPoweredShelfBlockActorsForDoubleShelf (::BlockSource &region, ::BlockPos const &shelfLeft, ::BlockPos const &shelfRight) const
 
MCAPI ::std::tuple<::ShelfBlockActor *, ::ShelfBlockActor *, ::ShelfBlockActor * > _getPoweredShelfBlockActorsForTripleShelf (::BlockSource &region, ::BlockPos const &shelfLeft, ::BlockPos const &shelfCenter, ::BlockPos const &shelfRight) const
 
MCAPI bool _isMatchingPoweredShelfInMatchingDirection (::BlockSource const &region, ::BlockPos const &pos, ::BlockPos const &neighbor) const
 
MCAPI void _powerOnAndTryConnectNeighbors (::BlockSource &region, ::BlockPos const &pos) const
 
MCAPI void _setShelfData (::BlockSource &region, ::BlockPos const &pos, bool powered, ::ShelfBlock::PoweredType type) const
 
MCAPI::ShelfBlock::SwapItemResult _swapItem (::ShelfBlockActor &shelfActor, int hitSlot, ::Player &player, ::BlockSource const &region) const
 
MCAPI::ShelfBlock::SwapItemResult _swapItem (::ShelfBlockActor &shelfActor, int shelfSlot, ::Player &player, int inventorySlot, ::BlockSource const &region) const
 
MCAPI bool _swapItemsWithPoweredShelf (::Player &player, ::BlockPos const &pos, ::BlockSource &region) const
 
MCAPI bool _swapItemsWithUnpoweredShelf (::Player &player, ::BlockPos const &pos, ::BlockSource &region, ::ShelfBlockActor &blockActor, ::Vec3 const &blockHit, uchar hitFace) const
 
MCAPI void _unpowerAndDisconnectFromNeighbors (::BlockSource &region, ::BlockPos const &pos) const
 
MCAPI void _updatePoweredShelf (::BlockSource &region, ::BlockPos const &pos, bool isPowered) const
 
MCAPI void _validatePoweredShelfCurrentStateFromNeighbors (::BlockSource &region, ::BlockPos const &pos) const
 
MCFOLD void onPlace (::BlockEvents::BlockPlaceEvent &eventData) const
 
MCAPI void tick (::BlockEvents::BlockQueuedTickEvent &eventData) const
 
MCAPI void use (::BlockEvents::BlockPlayerInteractEvent &eventData) const
 
MCFOLD void $movedByPiston (::BlockSource &region, ::BlockPos const &pos) const
 
MCAPI void $neighborChanged (::BlockSource &region, ::BlockPos const &pos, ::BlockPos const &neighborPos) const
 
MCFOLD void $setupRedstoneComponent (::BlockSource &region, ::BlockPos const &pos) const
 
MCAPI void $onRedstoneUpdate (::BlockSource &region, ::BlockPos const &pos, int strength, bool isFirstTime) const
 
MCFOLD bool $hasComparatorSignal () const
 
MCAPI int $getComparatorSignal (::BlockSource &region, ::BlockPos const &pos, ::Block const &block, uchar dir) const
 
MCAPI::AABB $getCollisionShape (::Block const &block, ::IConstBlockSource const &, ::BlockPos const &pos, ::optional_ref<::GetCollisionShapeInterface const >) const
 
MCFOLD::AABB const & $getOutline (::Block const &block, ::IConstBlockSource const &, ::BlockPos const &pos, ::AABB &bufferValue) const
 
MCFOLD::AABB const & $getVisualShapeInWorld (::Block const &block, ::IConstBlockSource const &, ::BlockPos const &pos, ::AABB &bufferAABB) const
 
MCFOLD bool $isInteractiveBlock () const
 
MCAPI void $onRemove (::BlockSource &region, ::BlockPos const &pos) const
 
MCAPI bool $liquidCanFlowIntoFromDirection (uchar flowIntoFacing, ::std::function<::Block const &(::BlockPos const &)> const &getBlock, ::BlockPos const &pos) const
 
MCAPI void $_addHardCodedBlockComponents (::Experiments const &)
 

Static Public Member Functions

static MCAPI ::AABB const & _getShape (::BlockPos const &pos, ::Block const &block, ::AABB &bufferValue)
 
static MCAPI void ** $vftable ()
 

Member Function Documentation

◆ $vftable()

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