Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
BiomeSource.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/biome/source/BiomeSourceType.h"
7#include "mc/world/level/block/chunk_volume/VolumeOf.h"
8#include "mc/world/level/newbiome/OperationGraphResult.h"
9
10// auto generated forward declare list
11// clang-format off
12class Biome;
13class BiomeArea;
14class BlockPos;
15class BoundingBox;
17class LevelChunk;
18struct BiomeHashType;
19struct BiomeIdType;
20struct GetBiomeOptions;
21// clang-format on
22
24public:
25 // virtual functions
26 // NOLINTBEGIN
27 virtual ~BiomeSource() = default;
28
29 virtual ::ChunkVolume::VolumeOf<::Biome> getBiomeVolumeToFill(
30 short chunkHeight,
31 ::BlockPos chunkMin,
32 uint levelSeed,
33 ::ChunkLocalNoiseCache const* chunkLocalNoiseCache
34 ) const;
35
36 virtual ::std::optional<::OperationGraphResult<::Biome const*> const>
37 getBiomeAreaToFill(::LevelChunk const& levelChunk) const;
38
39 virtual void fillBiomes(::LevelChunk& levelChunk, ::ChunkLocalNoiseCache const* chunkLocalNoiseCache) const = 0;
40
41 virtual ::BiomeArea getBiomeArea(::BoundingBox const& area, uint scale) const = 0;
42
43#ifdef LL_PLAT_S
44 virtual ::BiomeArea
45 getBiomeArea(::BoundingBox const& area, uint scale, ::GetBiomeOptions const& getBiomeOptions) const = 0;
46#else // LL_PLAT_C
47 virtual ::BiomeArea
48 getBiomeArea(::BoundingBox const& area, uint scale, ::GetBiomeOptions const& getBiomeOptionsIn) const = 0;
49#endif
50
51 virtual bool containsOnly(int xo, int yo, int zo, int r, ::gsl::span<::BiomeIdType const> allowed) const = 0;
52
53 virtual bool collectBiomesInColumn(int x, int z, int minY, int maxY, ::std::vector<::BiomeIdType>& out) const;
54
55 virtual bool hasBiomeById(::BiomeIdType id) const = 0;
56
57 virtual bool hasBiomeByNameHash(::BiomeHashType hash) const = 0;
58
59 virtual ::BiomeSourceType const getType() const = 0;
60
61 virtual ::Biome const* _getBiome(::GetBiomeOptions const& getBiomeOptions) const = 0;
62 // NOLINTEND
63
64public:
65 // virtual function thunks
66 // NOLINTBEGIN
67#ifdef LL_PLAT_S
68 MCAPI ::ChunkVolume::VolumeOf<::Biome> $getBiomeVolumeToFill(
69 short chunkHeight,
70 ::BlockPos chunkMin,
71 uint levelSeed,
72 ::ChunkLocalNoiseCache const* chunkLocalNoiseCache
73 ) const;
74#else // LL_PLAT_C
75 MCFOLD ::ChunkVolume::VolumeOf<::Biome> $getBiomeVolumeToFill(
76 short chunkHeight,
77 ::BlockPos chunkMin,
78 uint levelSeed,
79 ::ChunkLocalNoiseCache const* chunkLocalNoiseCache
80 ) const;
81#endif
82
83 MCFOLD ::std::optional<::OperationGraphResult<::Biome const*> const>
84 $getBiomeAreaToFill(::LevelChunk const& levelChunk) const;
85
86 MCFOLD bool $collectBiomesInColumn(int x, int z, int minY, int maxY, ::std::vector<::BiomeIdType>& out) const;
87
88
89 // NOLINTEND
90};
Definition BiomeArea.h:10
Definition BiomeSource.h:23
Definition Biome.h:23
Definition BlockPos.h:14
Definition BoundingBox.h:13
Definition ChunkLocalNoiseCache.h:8
Definition LevelChunk.h:76
Definition BiomeHashType.h:8
Definition BiomeIdType.h:8
Definition GetBiomeOptions.h:8