LeviLamina
Loading...
Searching...
No Matches
StrongholdFeature.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/platform/threading/Mutex.h"
7#include "mc/world/level/ChunkPos.h"
8#include "mc/world/level/levelgen/structure/StructureFeature.h"
9
10// auto generated forward declare list
11// clang-format off
12class BiomeSource;
13class BlockPos;
14class Dimension;
15class HashedString;
17class Random;
18class StructureStart;
19class VillageFeature;
20// clang-format on
21
22class StrongholdFeature : public ::StructureFeature {
23public:
24 // StrongholdFeature inner types declare
25 // clang-format off
26 struct StrongholdResult;
27 // clang-format on
28
29 // StrongholdFeature inner types define
31 public:
32 // member variables
33 // NOLINTBEGIN
34 ::ll::TypedStorage<1, 1, bool> success;
35 ::ll::TypedStorage<8, 8, ::ChunkPos> location;
36 // NOLINTEND
37 };
38
39public:
40 // member variables
41 // NOLINTBEGIN
42 ::ll::TypedStorage<1, 1, bool> mIsSpotSelected;
43 ::ll::TypedStorage<8, 24, ::std::vector<::ChunkPos>> mSelectedChunks;
44 ::ll::TypedStorage<8, 8, ::VillageFeature*> mVillages;
45 ::ll::TypedStorage<8, 80, ::Bedrock::Threading::Mutex> mPositionMutex;
46 // NOLINTEND
47
48public:
49 // virtual functions
50 // NOLINTBEGIN
51 virtual bool isFeatureChunk(
52 ::BiomeSource const& biomeSource,
53 ::Random& random,
54 ::ChunkPos const& pos,
55 uint levelSeed,
56 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
57 ::Dimension const& dimension
58 ) /*override*/;
59
60 virtual bool getNearestGeneratedFeature(
61 ::Dimension& dimension,
62 ::BiomeSource const& biomeSource,
63 ::BlockPos const& origin,
64 ::BlockPos& pos,
65 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
66 bool mustBeInNewChunks,
67 ::std::optional<::HashedString> const& biomeTag
68 ) /*override*/;
69
70 virtual ::std::unique_ptr<::StructureStart> createStructureStart(
71 ::Dimension& generator,
72 ::BiomeSource const&,
73 ::Random& random,
74 ::ChunkPos const& cp,
76 ) /*override*/;
77
78 virtual ~StrongholdFeature() /*override*/ = default;
79 // NOLINTEND
80
81public:
82 // member functions
83 // NOLINTBEGIN
84 MCAPI ::StrongholdFeature::StrongholdResult const _generateStronghold(uint levelSeed, ::ChunkPos const& cp);
85
86 MCAPI bool _getNearestStronghold(
87 ::Dimension const& dimension,
88 uint levelSeed,
89 ::BlockPos const& origin,
90 ::BlockPos& pos,
91 bool mustBeInNewChunks
92 );
93
94 MCAPI void generatePositions(
95 ::Random& random,
96 ::BiomeSource const& biomeSource,
97 uint levelSeed,
98 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
99 ::Dimension const& dimension
100 );
101 // NOLINTEND
102
103public:
104 // static variables
105 // NOLINTBEGIN
106 MCAPI static ::BlockPos const& START_OFFSET();
107 // NOLINTEND
108
109public:
110 // virtual function thunks
111 // NOLINTBEGIN
112 MCAPI bool $isFeatureChunk(
113 ::BiomeSource const& biomeSource,
114 ::Random& random,
115 ::ChunkPos const& pos,
116 uint levelSeed,
117 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
118 ::Dimension const& dimension
119 );
120
121 MCAPI bool $getNearestGeneratedFeature(
122 ::Dimension& dimension,
123 ::BiomeSource const& biomeSource,
124 ::BlockPos const& origin,
125 ::BlockPos& pos,
126 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
127 bool mustBeInNewChunks,
128 ::std::optional<::HashedString> const& biomeTag
129 );
130
131 MCAPI ::std::unique_ptr<::StructureStart> $createStructureStart(
132 ::Dimension& generator,
133 ::BiomeSource const&,
134 ::Random& random,
135 ::ChunkPos const& cp,
137 );
138
139
140 // NOLINTEND
141
142public:
143 // vftables
144 // NOLINTBEGIN
145 MCAPI static void** $vftable();
146 // NOLINTEND
147};
Definition BiomeSource.h:20
Definition BlockPos.h:19
Definition ChunkPos.h:11
Definition Dimension.h:85
Definition HashedString.h:5
Definition IPreliminarySurfaceProvider.h:8
Definition Random.h:10
Definition StrongholdFeature.h:22
static MCAPI void ** $vftable()
Definition StructureStart.h:15
Definition VillageFeature.h:21
Definition StrongholdFeature.h:30