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

Classes

struct  VillageInfo
struct  DwellerTestVillageInfo

Public Types

enum class  BedAvailabilityState : int { Unknown = 0 , SomeAvailable = 1 , NoneAvailable = 2 }
using POIBlueprintMap = ::std::unordered_map<::BlockType const*, ::std::unique_ptr<::POIBlueprint>>
using POIMap = ::std::unordered_map<::BlockPos, ::std::shared_ptr<::POIInstance>>
using VillageMap = ::std::unordered_map<::mce::UUID, ::std::shared_ptr<::Village>>

Public Member Functions

VillageManager & operator= (VillageManager const &)
 VillageManager (VillageManager const &)
virtual ::std::weak_ptr<::Village > fetchClosestVillage (::BlockPos const &position, int maxDistFromVillageBounds, uint searchRadius) const
virtual ::std::weak_ptr<::Village > getVillageByID (::mce::UUID const &villageID) const
MCAPI VillageManager (::Dimension &dimension)
MCAPI void _assignPOIOnly (::std::shared_ptr<::POIInstance > &&pi)
MCAPI void _loadPOIBlueprints ()
MCAPI void _processNextUnclusteredPOIQuery ()
MCAPI void _removeEligibleVillages ()
MCAPI void _saveAllVillages (::LevelStorage &levelStorage)
MCAPI void _tryAssignPOIOrCreateVillage (::std::shared_ptr<::POIInstance > &&pi)
MCAPI ::std::weak_ptr<::Village > fetchClosestVillageMostSuitableForDweller (::BlockPos const &position, int maxDistFromVillageBounds, uint searchRadius) const
MCAPI ::std::weak_ptr<::Village > getClosestVillageWithRaid (::BlockPos const &pos)
MCAPI void initializeWithLevelStorageManagerConnector (::ILevelStorageManagerConnector &levelStorageManagerConnector)
MCAPI void submitFindPOIQuery (::ActorUniqueID const &actorID)
MCAPI void tickVillages (::Tick const &tick, ::Vec3 const &position, ::BlockSource &region)
MCAPI void * $ctor (::Dimension &dimension)
MCAPI ::std::weak_ptr<::Village > $fetchClosestVillage (::BlockPos const &position, int maxDistFromVillageBounds, uint searchRadius) const
MCAPI ::std::weak_ptr<::Village > $getVillageByID (::mce::UUID const &villageID) const
MCFOLD void $dtor ()

Static Public Member Functions

static MCAPI void ** $vftable ()

Public Attributes

::ll::TypedStorage< 8, 8, ::Dimension & > mDimension
::ll::TypedStorage< 8, 40, ::std::deque<::ActorUniqueID > > mFindPOIQueries
::ll::TypedStorage< 8, 24, ::std::vector<::std::shared_ptr<::POIInstance > > > mUnclusteredPOIs
::ll::TypedStorage< 8, 64, ::std::unordered_map<::mce::UUID, ::std::shared_ptr<::Village > > > mVillages
::ll::TypedStorage< 8, 192, ::std::array<::std::unordered_map<::BlockPos, ::std::shared_ptr<::POIInstance > >, 3 > > mClusteredPOIs
::ll::TypedStorage< 8, 64, ::std::unordered_map<::BlockType const *, ::std::unique_ptr<::POIBlueprint > > > mPOIBlueprints
::ll::TypedStorage< 8, 8, ::Tick > mTickCount
::ll::TypedStorage< 8, 32, ::WanderingTraderScheduler > mWanderingTraderScheduler
::ll::TypedStorage< 1, 1, bool > mFinishedQueryScan
::ll::TypedStorage< 4, 4, int > mCurrentXScan
::ll::TypedStorage< 4, 4, int > mCurrentYScan
::ll::TypedStorage< 4, 4, int > mCurrentZScan
::ll::TypedStorage< 8, 16, ::Bedrock::PubSub::Subscription > mOnSaveSubscription
::ll::TypedStorage< 8, 16, ::Bedrock::PubSub::Subscription > mOnLevelStorageManagerStartLeaveGameSubscription
::std::shared_ptr<::Bedrock::EnableNonOwnerReferences::ControlBlock > mControlBlock

Member Function Documentation

◆ fetchClosestVillage()

virtual ::std::weak_ptr<::Village > VillageManager::fetchClosestVillage ( ::BlockPos const & position,
int maxDistFromVillageBounds,
uint searchRadius ) const
virtual

Implements IVillageManager.

◆ getVillageByID()

virtual ::std::weak_ptr<::Village > VillageManager::getVillageByID ( ::mce::UUID const & villageID) const
virtual

Implements IVillageManager.

◆ $vftable()

MCAPI void ** Bedrock::EnableNonOwnerReferences::$vftable ( )
staticinherited
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: