LeviLamina
Loading...
Searching...
No Matches
JigsawStructureBuilder.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/levelgen/v2/DimensionPadding.h"
7#include "mc/world/level/levelgen/v2/JigsawExpansion.h"
8#include "mc/world/level/levelgen/v2/LiquidSettings.h"
9#include "mc/world/level/levelgen/v2/MaxDistanceFromCenter.h"
10#include "mc/world/level/levelgen/v2/StructureBuilder.h"
11#include "mc/world/level/levelgen/v2/StructureHeightProvider.h"
12#include "mc/world/level/levelgen/v2/heightmap_projection/Type.h"
13
14// auto generated forward declare list
15// clang-format off
16class HashedString;
18namespace br::worldgen { struct JigsawStructure; }
19// clang-format on
20
21namespace br::worldgen {
22
23class JigsawStructureBuilder : public ::br::worldgen::StructureBuilder<::br::worldgen::JigsawStructureBuilder> {
24public:
25 // member variables
26 // NOLINTBEGIN
27 ::ll::TypedStorage<1, 1, schar> mMaxDepth;
28 ::ll::TypedStorage<4, 8, ::br::worldgen::MaxDistanceFromCenter> mMaxDistanceFromCenter;
29 ::ll::TypedStorage<4, 8, ::br::worldgen::DimensionPadding> mDimensionPadding;
30 ::ll::TypedStorage<8, 32, ::std::string> mStart;
31 ::ll::TypedStorage<8, 32, ::std::string> mStartJigsawName;
32 ::ll::TypedStorage<8, 56, ::br::worldgen::StructureHeightProvider> mStartHeight;
33 ::ll::TypedStorage<1, 1, ::br::worldgen::HeightmapProjection::Type> mProjectStartToHeightmap;
34 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::PoolAliasBinding>>> mPoolAliases;
35 ::ll::TypedStorage<1, 1, ::br::worldgen::JigsawExpansion> mExpansion;
36 ::ll::TypedStorage<1, 1, ::br::worldgen::LiquidSettings> mLiquidSettings;
37 // NOLINTEND
38
39public:
40 // prevent constructor by default
41 JigsawStructureBuilder();
42
43public:
44 // member functions
45 // NOLINTBEGIN
46 MCAPI JigsawStructureBuilder(::std::string_view key, ::HashedString type);
47
48 MCAPI ::br::worldgen::JigsawStructure build();
49
50 MCAPI ::br::worldgen::JigsawStructureBuilder& dimensionPadding(uint amount);
51
52 MCAPI ::br::worldgen::JigsawStructureBuilder& liquidSettings(::br::worldgen::LiquidSettings mode);
53
54 MCAPI ::br::worldgen::JigsawStructureBuilder& maxDepth(schar depth);
55
56 MCAPI ::br::worldgen::JigsawStructureBuilder& maxDistanceFromCenter(int horizontal, int vertical);
57
58 MCAPI ::br::worldgen::JigsawStructureBuilder&
59 poolAliases(::std::vector<::std::shared_ptr<::PoolAliasBinding>>&& aliases);
60
61 MCAPI ::br::worldgen::JigsawStructureBuilder& startHeight(::br::worldgen::StructureHeightProvider&& provider);
62
63 MCAPI ::br::worldgen::JigsawStructureBuilder& startPool(::std::string_view key);
64 // NOLINTEND
65
66public:
67 // static functions
68 // NOLINTBEGIN
69 MCAPI static ::br::worldgen::JigsawStructureBuilder create(::std::string_view key, ::HashedString type);
70 // NOLINTEND
71
72public:
73 // constructor thunks
74 // NOLINTBEGIN
75 MCAPI void* $ctor(::std::string_view key, ::HashedString type);
76 // NOLINTEND
77
78public:
79 // vftables
80 // NOLINTBEGIN
81 MCNAPI static void** $vftable();
82 // NOLINTEND
83};
84
85} // namespace br::worldgen
Definition HashedString.h:5
Definition PoolAliasBinding.h:16
static MCAPI void ** $vftable()
Definition StructureBuilder.h:8
Definition StructureHeightProvider.h:18
Definition JigsawStructure.h:22