LeviLamina
Loading...
Searching...
No Matches
VoidGenerator.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/block/BlockVolume.h"
7#include "mc/world/level/levelgen/WorldGenerator.h"
8
9// auto generated forward declare list
10// clang-format off
11class Biome;
12class BiomeArea;
13class BiomeSource;
14class Block;
15class BlockPos;
16class BlockSource;
18class BoundingBox;
19class ChunkPos;
20class ChunkViewSource;
21class Dimension;
22class LevelChunk;
24class Random;
25// clang-format on
26
27class VoidGenerator : public ::WorldGenerator {
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 8, ::Biome const*> mBiome;
32 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::BiomeSource>> mBiomeSource;
33 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::PerlinSimplexNoise>> mNoise;
34 ::ll::TypedStorage<8, 24, ::std::vector<::Block const*>> mPrototypeBlocks;
35 ::ll::TypedStorage<8, 40, ::BlockVolume> mPrototype;
36 ::ll::TypedStorage<1, 1, bool> mIsLegacyWorld;
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
41 VoidGenerator();
42
43public:
44 // virtual functions
45 // NOLINTBEGIN
46 virtual ~VoidGenerator() /*override*/ = default;
47
48 virtual ::BiomeSource const& getBiomeSource() const /*override*/;
49
50 virtual ::BlockPos findSpawnPosition() const /*override*/;
51
52 virtual void loadChunk(::LevelChunk& lc, bool forceImmediateReplacementDataLoad) /*override*/;
53
54 virtual bool structurePostProcessChunk(::ChunkViewSource&) /*override*/;
55
56 virtual bool decorationPostProcessChunk(::ChunkViewSource&) /*override*/;
57
58 virtual void prepareHeights(
59 ::BlockVolume& box,
60 ::ChunkPos const& chunkPos,
61 ::std::vector<short>* ZXheights,
62 bool factorInBeardsAndShavers
63 ) /*override*/;
64
65 virtual ::BiomeArea getBiomeArea(::BoundingBox const& area, uint scale) const /*override*/;
66
67 virtual ::WorldGenerator::BlockVolumeDimensions getBlockVolumeDimensions() const /*override*/;
68
69 virtual void
70 decorateWorldGenPostProcess(::Biome const& biome, ::LevelChunk& lc, ::BlockSource& source, ::Random& random) const
71 /*override*/;
72
73 virtual void decorateWorldGenLoadChunk(
74 ::Biome const& biome,
75 ::LevelChunk& lc,
76 ::BlockVolumeTarget& target,
77 ::Random& random,
78 ::ChunkPos const& pos
79 ) const /*override*/;
80 // NOLINTEND
81
82public:
83 // member functions
84 // NOLINTBEGIN
85 MCAPI explicit VoidGenerator(::Dimension& dimension);
86 // NOLINTEND
87
88public:
89 // constructor thunks
90 // NOLINTBEGIN
91 MCAPI void* $ctor(::Dimension& dimension);
92 // NOLINTEND
93
94public:
95 // virtual function thunks
96 // NOLINTBEGIN
97 MCFOLD ::BiomeSource const& $getBiomeSource() const;
98
99 MCFOLD ::BlockPos $findSpawnPosition() const;
100
101 MCAPI void $loadChunk(::LevelChunk& lc, bool forceImmediateReplacementDataLoad);
102
103 MCFOLD bool $structurePostProcessChunk(::ChunkViewSource&);
104
105 MCFOLD bool $decorationPostProcessChunk(::ChunkViewSource&);
106
107 MCFOLD void $prepareHeights(
108 ::BlockVolume& box,
109 ::ChunkPos const& chunkPos,
110 ::std::vector<short>* ZXheights,
111 bool factorInBeardsAndShavers
112 );
113
114 MCAPI ::BiomeArea $getBiomeArea(::BoundingBox const& area, uint scale) const;
115
116 MCAPI ::WorldGenerator::BlockVolumeDimensions $getBlockVolumeDimensions() const;
117
118 MCFOLD void
119 $decorateWorldGenPostProcess(::Biome const& biome, ::LevelChunk& lc, ::BlockSource& source, ::Random& random) const;
120
121 MCFOLD void $decorateWorldGenLoadChunk(
122 ::Biome const& biome,
123 ::LevelChunk& lc,
124 ::BlockVolumeTarget& target,
125 ::Random& random,
126 ::ChunkPos const& pos
127 ) const;
128
129
130 // NOLINTEND
131
132public:
133 // vftables
134 // NOLINTBEGIN
135 MCNAPI static void** $vftableForChunkSource();
136
138 // NOLINTEND
139};
Definition BiomeArea.h:11
Definition BiomeSource.h:20
Definition Biome.h:23
Definition BlockPos.h:19
Definition BlockSource.h:68
Definition BlockVolumeTarget.h:29
Definition BlockVolume.h:13
Definition Block.h:43
Definition BoundingBox.h:13
Definition ChunkPos.h:11
Definition ChunkViewSource.h:22
Definition Dimension.h:85
Definition LevelChunk.h:79
Definition PerlinSimplexNoise.h:13
Definition Random.h:10
static MCAPI void ** $vftableForChunkSource()
static MCAPI void ** $vftableForIPreliminarySurfaceProvider()