LeviLamina
Loading...
Searching...
No Matches
PoolElementStructureSection.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/util/Rotation.h"
7#include "mc/world/level/BlockPos.h"
8#include "mc/world/level/levelgen/structure/structurepools/JigsawReplacement.h"
9#include "mc/world/level/levelgen/v2/LiquidSettings.h"
10#include "mc/world/level/levelgen/v2/StructureSection.h"
11#include "mc/world/level/levelgen/v2/terrain_adjustment/Type.h"
12
13// auto generated forward declare list
14// clang-format off
15class BlockSource;
16class BoundingBox;
17class IRandom;
18class Random;
20namespace SharedTypes::v1_21_50 { struct PoolElementStructureSection; }
21namespace br::worldgen { struct JigsawJunction; }
22namespace br::worldgen { struct Rigid; }
23// clang-format on
24
25namespace br::worldgen {
26
28public:
29 // member variables
30 // NOLINTBEGIN
31 ::ll::TypedStorage<8, 8, ::StructurePoolElement const*> mElement;
32 ::ll::TypedStorage<4, 4, int> mGroundOffset;
33 ::ll::TypedStorage<1, 1, ::Rotation> mRot;
34 ::ll::TypedStorage<4, 12, ::BlockPos> mPosition;
35 ::ll::TypedStorage<8, 24, ::std::vector<::br::worldgen::JigsawJunction>> mJunctions;
36 ::ll::TypedStorage<1, 1, ::br::worldgen::LiquidSettings> mLiquidSettings;
37 // NOLINTEND
38
39public:
40 // virtual functions
41 // NOLINTBEGIN
42 // vIndex: 1
43 virtual void
44 appendJunctions(::BoundingBox const& box, ::std::vector<::br::worldgen::JigsawJunction>& junctions) /*override*/;
45
46 // vIndex: 2
47 virtual void appendRigid(
48 ::br::worldgen::TerrainAdjustment::Type type,
49 ::std::vector<::br::worldgen::Rigid>& rigids
50 ) /*override*/;
51
52 // vIndex: 4
53 virtual bool postProcess(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB) const /*override*/;
54
55 // vIndex: 3
56 virtual bool postProcess(
57 ::BlockSource& region,
58 ::IRandom& random,
59 ::BlockPos structurePos,
60 ::BoundingBox const& chunkBB,
61 ::br::worldgen::JigsawReplacement replacement
62 ) const /*override*/;
63
64 // vIndex: 5
65 virtual void placeEntities(::BlockSource& region, ::BoundingBox const& overlapBB) const /*override*/;
66
67 // vIndex: 0
68 virtual ~PoolElementStructureSection() /*override*/ = default;
69 // NOLINTEND
70
71public:
72 // member functions
73 // NOLINTBEGIN
74 MCNAPI ::SharedTypes::v1_21_50::PoolElementStructureSection serialize() const;
75 // NOLINTEND
76
77public:
78 // virtual function thunks
79 // NOLINTBEGIN
80 MCNAPI void $appendJunctions(::BoundingBox const& box, ::std::vector<::br::worldgen::JigsawJunction>& junctions);
81
82 MCNAPI void
83 $appendRigid(::br::worldgen::TerrainAdjustment::Type type, ::std::vector<::br::worldgen::Rigid>& rigids);
84
85 MCNAPI bool $postProcess(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB) const;
86
87 MCNAPI bool $postProcess(
88 ::BlockSource& region,
89 ::IRandom& random,
90 ::BlockPos structurePos,
91 ::BoundingBox const& chunkBB,
92 ::br::worldgen::JigsawReplacement replacement
93 ) const;
94
95 MCNAPI void $placeEntities(::BlockSource& region, ::BoundingBox const& overlapBB) const;
96 // NOLINTEND
97
98public:
99 // vftables
100 // NOLINTBEGIN
101 MCNAPI static void** $vftable();
102 // NOLINTEND
103};
104
105} // namespace br::worldgen
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition BoundingBox.h:13
Definition IRandom.h:13
Definition Random.h:10
Definition StructurePoolElement.h:37
Definition PoolElementStructureSection.h:27
MCAPI bool $postProcess(::BlockSource &region, ::IRandom &random, ::BlockPos structurePos, ::BoundingBox const &chunkBB, ::br::worldgen::JigsawReplacement replacement) const
MCAPI void $placeEntities(::BlockSource &region, ::BoundingBox const &overlapBB) const
MCAPI void $appendJunctions(::BoundingBox const &box, ::std::vector<::br::worldgen::JigsawJunction > &junctions)
MCAPI::SharedTypes::v1_21_50::PoolElementStructureSection serialize() const
MCAPI void $appendRigid(::br::worldgen::TerrainAdjustment::Type type, ::std::vector<::br::worldgen::Rigid > &rigids)
MCAPI bool $postProcess(::BlockSource &region, ::Random &random, ::BoundingBox const &chunkBB) const
Definition StructureSection.h:22
Definition JigsawJunction.h:5