LeviLamina
Loading...
Searching...
No Matches
StructureInstance.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/BlockPos.h"
7#include "mc/world/level/ChunkPos.h"
8#include "mc/world/level/levelgen/structure/BoundingBox.h"
9#include "mc/world/level/levelgen/v2/terrain_adjustment/Type.h"
10
11// auto generated forward declare list
12// clang-format off
13class BlockSource;
14class HashedString;
15class IRandom;
16namespace br::worldgen { class StructureSection; }
17namespace br::worldgen { struct Structure; }
18// clang-format on
19
20namespace br::worldgen {
21
23public:
24 // member variables
25 // NOLINTBEGIN
26 ::ll::TypedStorage<4, 12, ::BlockPos> mPos;
27 ::ll::TypedStorage<8, 8, ::ChunkPos> mChunkPos;
28 ::ll::TypedStorage<4, 24, ::BoundingBox> mBox;
29 ::ll::TypedStorage<8, 8, ::br::worldgen::Structure const*> mStructure;
30 ::ll::TypedStorage<8, 24, ::std::vector<::std::unique_ptr<::br::worldgen::StructureSection>>> mSections;
31 // NOLINTEND
32
33public:
34 // member functions
35 // NOLINTBEGIN
36 MCFOLD ::std::_Vector_const_iterator<
37 ::std::_Vector_val<::std::_Simple_types<::std::unique_ptr<::br::worldgen::StructureSection>>>>
38 begin() const;
39
40 MCFOLD ::BoundingBox const& boundingBox() const;
41
42 MCFOLD ::std::_Vector_const_iterator<
43 ::std::_Vector_val<::std::_Simple_types<::std::unique_ptr<::br::worldgen::StructureSection>>>>
44 end() const;
45
46 MCAPI bool intersects(::BoundingBox box) const;
47
48 MCAPI bool isReference(::ChunkPos pos) const;
49
50 MCFOLD bool isValid() const;
51
52 MCAPI void placeEntities(::BlockSource& region, ::BoundingBox const& chunkBB) const;
53
54 MCAPI bool postProcess(::BlockSource& region, ::IRandom& random, ::BoundingBox const& chunkBB) const;
55
56 MCFOLD ::br::worldgen::Structure const& structure() const;
57
58 MCAPI ::br::worldgen::TerrainAdjustment::Type terrainAdaptation() const;
59
60 MCAPI ::HashedString type() const;
61 // NOLINTEND
62};
63
64} // namespace br::worldgen
Definition BlockSource.h:73
Definition BoundingBox.h:13
Definition ChunkPos.h:11
Definition HashedString.h:5
Definition IRandom.h:10
Definition StructureInstance.h:22
Definition StructureSection.h:23
Definition Structure.h:24