LeviLamina
Loading...
Searching...
No Matches
StructureFeatureRegistry.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/levelgen/v2/ChunkGeneratorStructureState.h"
7#include "mc/world/level/levelgen/v2/StructureCache.h"
8
9// auto generated forward declare list
10// clang-format off
11class BiomeSource;
12class BlockPos;
13class Dimension;
14class HashedString;
17// clang-format on
18
19class StructureFeatureRegistry {
20public:
21 // StructureFeatureRegistry inner types define
22 using StructureFeatureContainer = ::std::vector<::std::unique_ptr<::StructureFeature>>;
23
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<8, 48, ::br::worldgen::ChunkGeneratorStructureState> mGeneratorState;
28 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::StructureFeature>>> mStructureFeatures;
29 ::ll::TypedStorage<8, 136, ::br::worldgen::StructureCache> mStructureCache;
30 // NOLINTEND
31
32public:
33 // member functions
34 // NOLINTBEGIN
35 MCAPI StructureFeatureRegistry();
36
37 MCAPI bool findNearestStructureFeature(
38 ::Dimension& dimension,
39 ::IPreliminarySurfaceProvider& surfaceProvider,
40 ::HashedString feature,
41 ::BlockPos const& origin,
42 ::BlockPos& pos,
43 ::BiomeSource const& biomeSource,
44 bool mustBeInNewChunks,
45 ::std::optional<::HashedString> biomeTag
46 );
47
48 MCAPI ::HashedString findStructureFeatureTypeAt(::BlockPos const& pos);
49
50 MCAPI ::StructureFeature* getStructureFeatureOfType(::HashedString type) const;
51
52 MCAPI bool isStructureFeatureTypeAt(::BlockPos const& pos, ::HashedString type) const;
53
54 MCFOLD ::br::worldgen::StructureCache& structureCache();
55
56 MCAPI void tick();
57
58 MCAPI void waitForBlueprints() const;
59
60 MCAPI ~StructureFeatureRegistry();
61 // NOLINTEND
62
63public:
64 // constructor thunks
65 // NOLINTBEGIN
66 MCAPI void* $ctor();
67 // NOLINTEND
68
69public:
70 // destructor thunk
71 // NOLINTBEGIN
72 MCAPI void $dtor();
73 // NOLINTEND
74};
Definition BiomeSource.h:24
Definition BlockPos.h:21
Definition Dimension.h:89
Definition HashedString.h:5
Definition IPreliminarySurfaceProvider.h:8
Definition StructureFeature.h:26