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 // prevent constructor by default
50 StrongholdFeature();
51
52public:
53 // virtual functions
54 // NOLINTBEGIN
55 virtual bool isFeatureChunk(
56 ::BiomeSource const& biomeSource,
57 ::Random& random,
58 ::ChunkPos const& pos,
59 uint levelSeed,
60 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
61 ::Dimension const& dimension
62 ) /*override*/;
63
64 virtual bool getNearestGeneratedFeature(
65 ::Dimension& dimension,
66 ::BiomeSource const& biomeSource,
67 ::BlockPos const& origin,
68 ::BlockPos& pos,
69 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
70 bool mustBeInNewChunks,
71 ::std::optional<::HashedString> const& biomeTag
72 ) /*override*/;
73
74 virtual ::std::unique_ptr<::StructureStart> createStructureStart(
75 ::Dimension& generator,
76 ::BiomeSource const&,
77 ::Random& random,
78 ::ChunkPos const& cp,
80 ) /*override*/;
81 // NOLINTEND
82
83public:
84 // member functions
85 // NOLINTBEGIN
86 MCAPI StrongholdFeature(::VillageFeature* villages, uint seed);
87
88 MCAPI void generatePositions(
89 ::Random& random,
90 ::BiomeSource const& biomeSource,
91 uint levelSeed,
92 ::IPreliminarySurfaceProvider const& preliminarySurfaceLevel,
93 ::Dimension const& dimension
94 );
95 // NOLINTEND
96
97public:
98 // constructor thunks
99 // NOLINTBEGIN
100 MCAPI void* $ctor(::VillageFeature* villages, uint seed);
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:21
Definition ChunkPos.h:12
Definition Dimension.h:86
Definition HashedString.h:5
Definition IPreliminarySurfaceProvider.h:8
Definition Random.h:10
Definition StructureStart.h:15
Definition VillageFeature.h:22
Definition StrongholdFeature.h:30