LeviLamina
Loading...
Searching...
No Matches
OverworldGenerator2d.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/MultidimensionalArray.h"
7#include "mc/world/level/levelgen/v1/BeardKernel.h"
8#include "mc/world/level/levelgen/v1/OverworldGenerator.h"
9
10// auto generated forward declare list
11// clang-format off
12class Aquifer;
13class Biome;
14class BiomeSource;
15class Block;
16class BlockPos;
17class BlockSource;
18class BlockVolume;
20class ChunkPos;
21class Dimension;
22class LevelChunk;
23class PerlinNoise;
25class Random;
27// clang-format on
28
30public:
31 // OverworldGenerator2d inner types define
33
34public:
35 // member variables
36 // NOLINTBEGIN
37 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PerlinNoise>> minLimitPerlinNoise;
38 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PerlinNoise>> maxLimitPerlinNoise;
39 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PerlinNoise>> mainPerlinNoise;
40 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PerlinSimplexNoise>> surfaceNoise;
41 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PerlinNoise>> scaleNoise;
42 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PerlinNoise>> depthNoise;
43 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PerlinNoise>> forestNoise;
44 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PerlinSimplexNoise>> mMaterialAdjNoise;
45 ::ll::TypedStorage<1, 1, ::BeardKernel> mBeardKernel;
46 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::BiomeSource>> mBiomeSource;
47 // NOLINTEND
48
49public:
50 // prevent constructor by default
52
53public:
54 // virtual functions
55 // NOLINTBEGIN
56 // vIndex: 44
57 virtual ::BiomeSource const& getBiomeSource() const /*override*/;
58
59 // vIndex: 46
60 virtual ::BlockPos findSpawnPosition() const /*override*/;
61
62 // vIndex: 52
63 virtual int getLevelGenHeight() const /*override*/;
64
65 // vIndex: 51
66 virtual ::Util::MultidimensionalArray<float, 5, 5, 41>
67 generateDensityCellsForChunk(::ChunkPos const& chunkPos) const /*override*/;
68
69 // vIndex: 56
70 virtual ::PerlinSimplexNoise const& getSurfaceNoise() /*override*/;
71
72 // vIndex: 57
73 virtual ::std::unique_ptr<::PerlinSimplexNoise> const& getMaterialAdjNoise() const /*override*/;
74
75 // vIndex: 50
76 virtual void
77 decorateWorldGenPostProcess(::Biome const& biome, ::LevelChunk& lc, ::BlockSource& source, ::Random& random) const
78 /*override*/;
79
80 // vIndex: 58
81 virtual void _prepareHeights(
82 ::BlockVolume& box,
83 ::ChunkPos const& chunkPos,
84 ::ChunkLocalNoiseCache const& chunkLocalNoiseCache,
85 ::Aquifer* aquiferPtr,
86 ::std::function<void(::BlockPos const&, ::Block const&, int)>&& tickUpdateFn,
87 bool factorInBeardsAndShavers,
88 ::std::vector<short>* ZXheights
89 ) /*override*/;
90
91 // vIndex: 53
92 virtual ::std::optional<::XoroshiroPositionalRandomFactory> getXoroshiroPositionalRandomFactory() const
93 /*override*/;
94
95 // vIndex: 0
96 virtual ~OverworldGenerator2d() /*override*/;
97 // NOLINTEND
98
99public:
100 // member functions
101 // NOLINTBEGIN
102 MCAPI OverworldGenerator2d(::Dimension& dimension, uint seed, bool isLegacyWorld, ::Biome const* biomeOverride);
103
104 MCAPI ::Util::MultidimensionalArray<float, 5, 5, 41>
105 _generateDensityCellsForChunk(::ChunkPos const& chunkPos) const;
106 // NOLINTEND
107
108public:
109 // constructor thunks
110 // NOLINTBEGIN
111 MCAPI void* $ctor(::Dimension& dimension, uint seed, bool isLegacyWorld, ::Biome const* biomeOverride);
112 // NOLINTEND
113
114public:
115 // destructor thunk
116 // NOLINTBEGIN
117 MCAPI void $dtor();
118 // NOLINTEND
119
120public:
121 // virtual function thunks
122 // NOLINTBEGIN
123 MCFOLD ::BiomeSource const& $getBiomeSource() const;
124
125 MCAPI ::BlockPos $findSpawnPosition() const;
126
127 MCFOLD int $getLevelGenHeight() const;
128
129 MCAPI ::Util::MultidimensionalArray<float, 5, 5, 41>
130 $generateDensityCellsForChunk(::ChunkPos const& chunkPos) const;
131
132 MCAPI ::PerlinSimplexNoise const& $getSurfaceNoise();
133
134 MCAPI ::std::unique_ptr<::PerlinSimplexNoise> const& $getMaterialAdjNoise() const;
135
136 MCFOLD void
137 $decorateWorldGenPostProcess(::Biome const& biome, ::LevelChunk& lc, ::BlockSource& source, ::Random& random) const;
138
139 MCAPI void $_prepareHeights(
140 ::BlockVolume& box,
141 ::ChunkPos const& chunkPos,
142 ::ChunkLocalNoiseCache const& chunkLocalNoiseCache,
143 ::Aquifer* aquiferPtr,
144 ::std::function<void(::BlockPos const&, ::Block const&, int)>&& tickUpdateFn,
145 bool factorInBeardsAndShavers,
146 ::std::vector<short>* ZXheights
147 );
148
149 MCAPI ::std::optional<::XoroshiroPositionalRandomFactory> $getXoroshiroPositionalRandomFactory() const;
150 // NOLINTEND
151
152public:
153 // vftables
154 // NOLINTBEGIN
155 MCNAPI static void** $vftableForChunkSource();
156
158 // NOLINTEND
159};
Definition Aquifer.h:17
Definition BiomeSource.h:20
Definition Biome.h:23
Definition BlockPos.h:17
Definition BlockSource.h:66
Definition BlockVolume.h:13
Definition Block.h:38
Definition ChunkLocalNoiseCache.h:8
Definition ChunkPos.h:11
Definition Dimension.h:83
Definition LevelChunk.h:78
Definition OverworldGenerator2d.h:29
static MCAPI void ** $vftableForIPreliminarySurfaceProvider()
static MCAPI void ** $vftableForChunkSource()
Definition OverworldGenerator.h:36
Definition PerlinNoise.h:13
Definition PerlinSimplexNoise.h:13
Definition Random.h:10
Definition MultidimensionalArray.h:12
Definition XoroshiroPositionalRandomFactory.h:16