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