LeviLamina
Loading...
Searching...
No Matches
StructureFeature Class Referenceabstract
+ Inheritance diagram for StructureFeature:

Public Types

using StructureMap = ::std::unordered_map<::ChunkPos, ::std::unique_ptr<::StructureStart>>
 

Public Member Functions

virtual bool shouldAddHardcodedSpawnAreas () const
 
virtual bool shouldPostProcessMobs () const
 
virtual bool getNearestGeneratedFeature (::Dimension &dimension, ::BiomeSource const &biomeSource, ::BlockPos const &origin, ::BlockPos &pos, ::IPreliminarySurfaceProvider const &preliminarySurfaceLevel, bool mustBeInNewChunks, ::std::optional<::HashedString > const &biomeTag)
 
virtual bool isFeatureChunk (::BiomeSource const &, ::Random &, ::ChunkPos const &, uint, ::IPreliminarySurfaceProvider const &, ::Dimension const &)=0
 
virtual ::std::unique_ptr<::StructureStartcreateStructureStart (::Dimension &, ::BiomeSource const &, ::Random &, ::ChunkPos const &, ::IPreliminarySurfaceProvider const &)=0
 
virtual::StructureStart * getStructureAt (int cellX, int cellY, int cellZ)
 
MCAPI StructureFeature (uint seed, ::HashedString structureFeatureType)
 
MCAPI void addFeature (::Dimension &dimension, ::Random &random, ::ChunkPos const &cp, ::BiomeSource const &biomeSource, ::IPreliminarySurfaceProvider const &preliminarySurfaceLevel)
 
MCAPI void createBlueprints (::Dimension &dimension, ::ChunkPos const &cp, ::BiomeSource const &biomeSource, ::IPreliminarySurfaceProvider const &preliminarySurfaceLevel)
 
MCAPI ::std::vector<::ChunkPosfindFarAwayStructures (::buffer_span<::ChunkPos > activeChunks, uint safetyBorder)
 
MCAPI void foreachIntersectingStructureStart (::BoundingBox const &bb, ::std::function< void(::StructureStart &)> fn)
 
MCAPI void garbageCollectBlueprints (::buffer_span<::ChunkPos > activeChunks, uint safetyBorder)
 
MCAPI bool isInsideBoundingFeature (int cellX, int cellY, int cellZ)
 
MCAPI void postProcessMobsAt (::BlockSource &region, int chunkWestBlock, int chunkNorthBlock, ::Random &random)
 
MCAPI void * $ctor (uint seed, ::HashedString structureFeatureType)
 
MCAPI void $dtor ()
 
MCFOLD bool $shouldAddHardcodedSpawnAreas () const
 
MCFOLD bool $shouldPostProcessMobs () const
 
MCAPI bool $getNearestGeneratedFeature (::Dimension &dimension, ::BiomeSource const &biomeSource, ::BlockPos const &origin, ::BlockPos &pos, ::IPreliminarySurfaceProvider const &preliminarySurfaceLevel, bool mustBeInNewChunks, ::std::optional<::HashedString > const &biomeTag)
 
MCAPI::StructureStart * $getStructureAt (int cellX, int cellY, int cellZ)
 

Static Public Member Functions

static MCAPI bool findNearestFeaturePositionBySpacing (::Dimension &dimension, ::IPreliminarySurfaceProvider const &preliminarySurfaceLevel, ::StructureFeature &feature, ::std::optional<::HashedString > const &biomeTag, ::BiomeSource const &biomeSource, ::BlockPos const &origin, ::BlockPos &result, int featureSpacing, int minFeatureSeparation, int randomSalt, bool tiltedSpacing, int mustBeInNewChunks, bool maxSearchRadius)
 
static MCAPI ::ChunkPos getChunkPosInSpace (::ChunkPos const &cp, ::Random &random, uint levelSeed, int spacing, int separation, int salt, bool tiltedSpacing)
 
static MCAPI void ** $vftable ()
 

Public Attributes

::ll::TypedStorage< 8, 48, ::HashedStringmStructureFeatureType
 
::ll::TypedStorage< 8, 64, ::std::unordered_map<::ChunkPos, ::std::unique_ptr<::StructureStart > > > mCachedStructures
 
::ll::TypedStorage< 8, 8, ::std::shared_mutex > mCacheMutex
 
::ll::TypedStorage< 8, 64, ::std::unordered_set<::ChunkPos > > mVisitedPositions
 
::ll::TypedStorage< 4, 4, uint > mRadius
 
::ll::TypedStorage< 4, 4, int > mXScale
 
::ll::TypedStorage< 4, 4, int > mZScale
 
::ll::TypedStorage< 8, 80, ::Bedrock::Threading::MutexmCreateBlueprintsAndVisitedPositionsMutex
 
::ll::TypedStorage< 8, 72, ::std::condition_variable > mBlueprintWaitVar
 
::ll::TypedStorage< 4, 4, ::std::atomic< int > > mActiveBlueprintCreateCount
 
::ll::TypedStorage< 1, 1, ::std::atomic< bool > > mBlueprintsFinished
 

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