LeviLamina
Loading...
Searching...
No Matches
NetherCaveFeature.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Vec3.h"
7#include "mc/world/level/levelgen/feature/CaveFeature.h"
8#include "mc/world/level/levelgen/feature/IFeature.h"
9
10// auto generated forward declare list
11// clang-format off
12class BlockPos;
13class ChunkPos;
15class Random;
16class RenderParams;
17namespace CaveFeatureUtils { struct CarverConfiguration; }
18namespace CaveFeatureUtils { struct CarvingParameters; }
19// clang-format on
20
21class NetherCaveFeature : public ::CaveFeature {
22public:
23 // member variables
24 // NOLINTBEGIN
25 ::ll::TypedStorage<4, 12, ::Vec3 const> EMPTY_VEC;
26 ::ll::TypedStorage<4, 4, int const> HELL_CAVE_COUNT_BASE_FACTOR;
27 // NOLINTEND
28
29public:
30 // virtual functions
31 // NOLINTBEGIN
32 virtual ::std::optional<::BlockPos> place(::IFeature::PlacementContext const& context) const /*override*/;
33
34 virtual void addRoom(
35 ::IBlockWorldGenAPI& target,
36 ::CaveFeatureUtils::CarverConfiguration const& configuration,
37 ::Random& random,
38 ::ChunkPos const& chunkPos,
39 ::Vec3 const& startPos,
40 ::RenderParams& renderParams,
41 ::CaveFeatureUtils::CarvingParameters const& carvingParameters,
42 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
43 ) const /*override*/;
44
45 virtual void addTunnel(
46 ::IBlockWorldGenAPI& target,
47 ::CaveFeatureUtils::CarverConfiguration const& configuration,
48 ::Random& random,
49 ::ChunkPos const& chunkPos,
50 ::Vec3 const& startPos,
51 float thickness,
52 float horizontalRotation,
53 float verticalRotation,
54 int step,
55 int dist,
56 float yScale,
57 ::RenderParams& renderParams,
58 ::CaveFeatureUtils::CarvingParameters const& carvingParameters,
59 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
60 ) const /*override*/;
61
62 virtual void addFeature(
63 ::IBlockWorldGenAPI& target,
64 ::ChunkPos const& pos,
65 ::Random& random,
66 ::ChunkPos const& startChunk,
67 ::RenderParams& renderParams,
68 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
69 ) const /*override*/;
70
71 virtual ~NetherCaveFeature() /*override*/ = default;
72 // NOLINTEND
73
74public:
75 // virtual function thunks
76 // NOLINTBEGIN
77 MCAPI ::std::optional<::BlockPos> $place(::IFeature::PlacementContext const& context) const;
78
79 MCAPI void $addRoom(
80 ::IBlockWorldGenAPI& target,
81 ::CaveFeatureUtils::CarverConfiguration const& configuration,
82 ::Random& random,
83 ::ChunkPos const& chunkPos,
84 ::Vec3 const& startPos,
85 ::RenderParams& renderParams,
86 ::CaveFeatureUtils::CarvingParameters const& carvingParameters,
87 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
88 ) const;
89
90 MCAPI void $addTunnel(
91 ::IBlockWorldGenAPI& target,
92 ::CaveFeatureUtils::CarverConfiguration const& configuration,
93 ::Random& random,
94 ::ChunkPos const& chunkPos,
95 ::Vec3 const& startPos,
96 float thickness,
97 float horizontalRotation,
98 float verticalRotation,
99 int step,
100 int dist,
101 float yScale,
102 ::RenderParams& renderParams,
103 ::CaveFeatureUtils::CarvingParameters const& carvingParameters,
104 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
105 ) const;
106
107 MCAPI void $addFeature(
108 ::IBlockWorldGenAPI& target,
109 ::ChunkPos const& pos,
110 ::Random& random,
111 ::ChunkPos const& startChunk,
112 ::RenderParams& renderParams,
113 ::std::vector<::CaveFeature::CachedMetaData::CarveEllipsoidParams>& carveParamsOperations
114 ) const;
115
116
117 // NOLINTEND
118
119public:
120 // vftables
121 // NOLINTBEGIN
122 MCNAPI static void** $vftable();
123 // NOLINTEND
124};
Definition BlockPos.h:19
Definition ChunkPos.h:11
Definition IBlockWorldGenAPI.h:25
Definition NetherCaveFeature.h:21
static MCAPI void ** $vftable()
Definition Random.h:10
Definition RenderParams.h:30
Definition Vec3.h:10
Definition CarverConfiguration.h:14
Definition CarvingParameters.h:10
Definition IFeature.h:26
Definition context.h:5