LeviLamina
Loading...
Searching...
No Matches
LevelChunkMetaDataManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/AutomaticID.h"
7#include "mc/deps/core/utility/pub_sub/Subscription.h"
8#include "mc/world/level/GeneratorType.h"
9
10// auto generated forward declare list
11// clang-format off
12class BaseGameVersion;
13class Dimension;
17class LevelChunk;
20class LevelSeed64;
21// clang-format on
22
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::LevelChunkMetaDataDictionary>> mLevelChunkMetaDataDictionary;
28 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnNewDimensionCreatedSubscription;
29 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnChunkLoadedSubscription;
30 // NOLINTEND
31
32public:
33 // member functions
34 // NOLINTBEGIN
36
37 MCNAPI void _onNewDimensionCreated(::Dimension& dimension);
38
39 MCNAPI void registerForLevelChunkEvents(::ILevelChunkEventManagerConnector& levelChunkEventManagerConnector);
40
41 MCNAPI void registerOnNewDimensionCreated(::IDimensionManagerConnector& dimensionManagerConnector);
42
44 ::LevelChunk& lc,
45 ::BaseGameVersion const& currentBaseGameVersion,
46 ::DimensionHeightRange const& dimensionHeightRange
47 );
48
50 // NOLINTEND
51
52public:
53 // static functions
54 // NOLINTBEGIN
56 ::LevelChunk& lc,
57 ::LevelSeed64 generationSeed,
58 ::GeneratorType generatorType,
59 ::std::string const& dimensionName,
60 ::DimensionType dimensionId,
61 ::DimensionHeightRange const& dimensionHeightRange,
62 ::BaseGameVersion const& currentBaseGameVersion,
63 ::LevelChunkMetaData& metaData
64 );
65
66 MCNAPI static void
68
69 MCNAPI static ::std::shared_ptr<::LevelChunkMetaData> initializeLevelChunkMetaData(
70 ::DimensionType dimensionId,
71 ::std::string const& dimensionName,
72 ::DimensionHeightRange const& dimensionHeightRange,
73 bool use3DBiomeMaps,
74 ::LevelSeed64 levelSeed,
75 ::GeneratorType generatorType,
76 ::BaseGameVersion const& baseGameVersion
77 );
78 // NOLINTEND
79
80public:
81 // destructor thunk
82 // NOLINTBEGIN
83 MCNAPI void $dtor();
84 // NOLINTEND
85};
Definition AutomaticID.h:6
Definition BaseGameVersion.h:8
Definition DimensionHeightRange.h:5
Definition Dimension.h:83
Definition IDimensionManagerConnector.h:13
Definition ILevelChunkEventManagerConnector.h:14
Definition LevelChunkMetaDataDictionary.h:11
Definition LevelChunkMetaDataManager.h:23
static MCAPI void inferInitialMetaDataAfterDeserialization(::LevelChunk &lc, ::LevelSeed64 generationSeed, ::GeneratorType generatorType, ::std::string const &dimensionName, ::DimensionType dimensionId, ::DimensionHeightRange const &dimensionHeightRange, ::BaseGameVersion const &currentBaseGameVersion, ::LevelChunkMetaData &metaData)
static MCAPI void inferTargetMetaData(::BaseGameVersion const &version, ::DimensionType dimensionID, ::LevelChunkMetaData &metaData)
MCAPI void updateLevelChunkMetaDataForSaving(::LevelChunk &lc, ::BaseGameVersion const &currentBaseGameVersion, ::DimensionHeightRange const &dimensionHeightRange)
MCAPI void _consolidateLevelChunkMetaData(::LevelChunk &levelChunk)
MCAPI void registerOnNewDimensionCreated(::IDimensionManagerConnector &dimensionManagerConnector)
static MCAPI ::std::shared_ptr<::LevelChunkMetaData > initializeLevelChunkMetaData(::DimensionType dimensionId, ::std::string const &dimensionName, ::DimensionHeightRange const &dimensionHeightRange, bool use3DBiomeMaps, ::LevelSeed64 levelSeed, ::GeneratorType generatorType, ::BaseGameVersion const &baseGameVersion)
MCAPI void _onNewDimensionCreated(::Dimension &dimension)
MCAPI void registerForLevelChunkEvents(::ILevelChunkEventManagerConnector &levelChunkEventManagerConnector)
Definition LevelChunkMetaData.h:8
Definition LevelChunk.h:74
Definition LevelSeed64.h:5