Skip to content
LeviMC
English
AutoLightDark
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
29class OverworldGenerator2d : public ::OverworldGenerator {
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
51 OverworldGenerator2d();
52
53public:
54 // virtual functions
55 // NOLINTBEGIN
56 virtual ::BiomeSource const& getBiomeSource() const /*override*/;
57
58 virtual ::BlockPos findSpawnPosition() const /*override*/;
59
60 virtual int getLevelGenHeight() const /*override*/;
61
62 virtual ::Util::MultidimensionalArray<float, 5, 5, 41>
63 generateDensityCellsForChunk(::ChunkPos const& chunkPos) const /*override*/;
64
65 virtual ::PerlinSimplexNoise const& getSurfaceNoise() /*override*/;
66
67 virtual ::std::unique_ptr<::PerlinSimplexNoise> const& getMaterialAdjNoise() const /*override*/;
68
69 virtual void
70 decorateWorldGenPostProcess(::Biome const& biome, ::LevelChunk& lc, ::BlockSource& source, ::Random& random) const
71 /*override*/;
72
73 virtual void _prepareHeights(
74 ::BlockVolume& box,
75 ::ChunkPos const& chunkPos,
76 ::ChunkLocalNoiseCache const& chunkLocalNoiseCache,
77 ::Aquifer* aquiferPtr,
78 ::std::function<void(::BlockPos const&, ::Block const&, int)>&& tickUpdateFn,
79 bool factorInBeardsAndShavers,
80 ::std::vector<short>* ZXheights
81 ) /*override*/;
82
83 virtual ::std::optional<::XoroshiroPositionalRandomFactory> getXoroshiroPositionalRandomFactory() const
84 /*override*/;
85 // NOLINTEND
86
87public:
88 // member functions
89 // NOLINTBEGIN
90 MCNAPI OverworldGenerator2d(::Dimension& dimension, uint seed, bool isLegacyWorld, ::Biome const* biomeOverride);
91
92 MCNAPI ::Util::MultidimensionalArray<float, 5, 5, 41>
94 // NOLINTEND
95
96public:
97 // constructor thunks
98 // NOLINTBEGIN
99 MCNAPI void* $ctor(::Dimension& dimension, uint seed, bool isLegacyWorld, ::Biome const* biomeOverride);
100 // NOLINTEND
101
102public:
103 // virtual function thunks
104 // NOLINTBEGIN
105 MCNAPI ::BiomeSource const& $getBiomeSource() const;
106
107 MCNAPI ::BlockPos $findSpawnPosition() const;
108
109 MCNAPI int $getLevelGenHeight() const;
110
111 MCNAPI ::Util::MultidimensionalArray<float, 5, 5, 41>
113
114 MCNAPI ::PerlinSimplexNoise const& $getSurfaceNoise();
115
116 MCNAPI ::std::unique_ptr<::PerlinSimplexNoise> const& $getMaterialAdjNoise() const;
117
118 MCNAPI void
119 $decorateWorldGenPostProcess(::Biome const& biome, ::LevelChunk& lc, ::BlockSource& source, ::Random& random) const;
120
121 MCNAPI void $_prepareHeights(
122 ::BlockVolume& box,
123 ::ChunkPos const& chunkPos,
124 ::ChunkLocalNoiseCache const& chunkLocalNoiseCache,
125 ::Aquifer* aquiferPtr,
126 ::std::function<void(::BlockPos const&, ::Block const&, int)>&& tickUpdateFn,
127 bool factorInBeardsAndShavers,
128 ::std::vector<short>* ZXheights
129 );
130
131 MCNAPI ::std::optional<::XoroshiroPositionalRandomFactory> $getXoroshiroPositionalRandomFactory() const;
132
133
134 // NOLINTEND
135};
Definition Aquifer.h:16
Definition BiomeSource.h:23
Definition Biome.h:23
Definition BlockPos.h:14
Definition BlockSource.h:72
Definition BlockVolume.h:14
Definition Block.h:42
Definition ChunkLocalNoiseCache.h:8
Definition ChunkPos.h:13
Definition Dimension.h:86
Definition LevelChunk.h:76
MCAPI ::Util::MultidimensionalArray< float, 5, 5, 41 > $generateDensityCellsForChunk(::ChunkPos const &chunkPos) const
MCAPI::PerlinSimplexNoise const & $getSurfaceNoise()
MCAPI void $_prepareHeights(::BlockVolume &box, ::ChunkPos const &chunkPos, ::ChunkLocalNoiseCache const &chunkLocalNoiseCache, ::Aquifer *aquiferPtr, ::std::function< void(::BlockPos const &, ::Block const &, int)> &&tickUpdateFn, bool factorInBeardsAndShavers, ::std::vector< short > *ZXheights)
MCAPI ::std::unique_ptr<::PerlinSimplexNoise > const & $getMaterialAdjNoise() const
MCAPI ::Util::MultidimensionalArray< float, 5, 5, 41 > _generateDensityCellsForChunk(::ChunkPos const &chunkPos) const
MCAPI int $getLevelGenHeight() const
MCAPI::BiomeSource const & $getBiomeSource() const
MCAPI void * $ctor(::Dimension &dimension, uint seed, bool isLegacyWorld, ::Biome const *biomeOverride)
MCAPI ::std::optional<::XoroshiroPositionalRandomFactory > $getXoroshiroPositionalRandomFactory() const
MCAPI OverworldGenerator2d(::Dimension &dimension, uint seed, bool isLegacyWorld, ::Biome const *biomeOverride)
MCAPI void $decorateWorldGenPostProcess(::Biome const &biome, ::LevelChunk &lc, ::BlockSource &source, ::Random &random) const
MCAPI::BlockPos $findSpawnPosition() const
Definition OverworldGenerator.h:33
Definition PerlinNoise.h:12
Definition PerlinSimplexNoise.h:10
Definition Random.h:10
Definition MultidimensionalArray.h:12
Definition XoroshiroPositionalRandomFactory.h:15