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 // virtual function thunks
105 // NOLINTBEGIN
106 MCAPI bool $isFeatureChunk(
107 ::BiomeSource const& biomeSource,
108 ::Random& random,
109 ::ChunkPos const& pos,
110 uint levelSeed,
111 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
112 ::Dimension const& dimension
113 );
114
115 MCAPI bool $getNearestGeneratedFeature(
116 ::Dimension& dimension,
117 ::BiomeSource const& biomeSource,
118 ::BlockPos const& origin,
119 ::BlockPos& pos,
120 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
121 bool mustBeInNewChunks,
122 ::std::optional<::HashedString> const& biomeTag
123 );
124
125 MCAPI ::std::unique_ptr<::StructureStart> $createStructureStart(
126 ::Dimension& generator,
127 ::BiomeSource const&,
128 ::Random& random,
129 ::ChunkPos const& cp,
131 );
132
133
134 // NOLINTEND
135
136public:
137 // vftables
138 // NOLINTBEGIN
139 MCAPI static void** $vftable();
140 // NOLINTEND
141};
Definition BiomeSource.h:23
Definition BlockPos.h:19
Definition ChunkPos.h:11
Definition Dimension.h:86
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:28
Definition StrongholdFeature.h:30