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

Classes

struct  WeightedBlockDescriptor

Public Types

enum class  AttachCondition : uchar { MayAttachTo = 0 , MayNotAttachTo = 1 }
enum class  CheckDirection : uchar {
  Top = 0 , Bottom = 1 , North = 2 , East = 3 ,
  South = 4 , West = 5 , All = 6 , Sides = 7 ,
  Diagonal = 8 , Count = 9
}
using PlacementConditions

Public Member Functions

virtual ::std::optional<::BlockPosplace (::IFeature::PlacementContext const &context) const
MCAPI::Block const * _mayAttach (::BlockDescriptor const &blockDescriptor, ::IBlockWorldGenAPI &target, ::BlockPos const &pos) const
MCAPI bool _mayNotAttach (::IBlockWorldGenAPI &target, ::BlockPos const &pos) const
MCAPI void $dtor ()
MCAPI ::std::optional<::BlockPos$place (::IFeature::PlacementContext const &context) const
virtual bool isValidPlacement (::std::string const &pass)
virtual void upgradeFormat (::SemVersion const &)
MCAPI bool $isValidPlacement (::std::string const &pass)
MCFOLD void $upgradeFormat (::SemVersion const &)

Static Public Member Functions

static MCAPI void ** $vftable ()
static MCAPI bool isExposedTo (::IBlockWorldGenAPI const &target, ::BlockPos const &candidatePos, ::BlockDescriptor const &exposedTo)
static MCAPI ::std::string_view const & DEFAULT_NOT_SUPPORTED_PASS ()

Public Attributes

::ll::TypedStorage< 8, 24, ::std::vector<::SingleBlockFeature::WeightedBlockDescriptor > > mPossibleBlocks
::ll::TypedStorage< 8, 216, ::Bedrock::DenseEnumMap<::SingleBlockFeature::CheckDirection, ::std::vector<::BlockDescriptor >, 9 > > mMayAttachTo
::ll::TypedStorage< 8, 216, ::Bedrock::DenseEnumMap<::SingleBlockFeature::CheckDirection, ::std::vector<::BlockDescriptor >, 9 > > mMayNotAttachTo
::ll::TypedStorage< 8, 24, ::std::vector<::BlockDescriptor > > mMayReplace
::ll::TypedStorage< 4, 4, int > mMinAttachedSides
::ll::TypedStorage< 1, 1, bool > mEnforcePlacementRules
::ll::TypedStorage< 1, 1, bool > mEnforceSurvivabilityRules
::ll::TypedStorage< 1, 1, bool > mAutoRotate
::ll::TypedStorage< 1, 1, bool > mRandomRotation
::ll::TypedStorage< 1, 1, bool > mEnforceAttachmentRules
::ll::TypedStorage< 1, 1, bool > mInternal
::ll::TypedStorage< 1, 1, bool > mCanUseInternalFeature

Member Typedef Documentation

◆ PlacementConditions

using SingleBlockFeature::PlacementConditions

Member Function Documentation

◆ place()

virtual ::std::optional<::BlockPos > SingleBlockFeature::place ( ::IFeature::PlacementContext const & context) const
virtual

Implements IFeature.

◆ $vftable()

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