LeviLamina
Loading...
Searching...
No Matches
StrongholdPiece.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/world/level/levelgen/structure/StructurePiece.h"
7
8// auto generated forward declare list
9// clang-format off
10class BlockSource;
11class BoundingBox;
12class Random;
13class SHStartPiece;
14// clang-format on
15
17public:
18 // StrongholdPiece inner types define
19 enum class SmallDoorType : int {
20 Opening = 0,
21 WoodDoor = 1,
22 Grates = 2,
23 IronDoor = 3,
24 };
25
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<4, 4, ::StrongholdPiece::SmallDoorType> entryDoor;
30 // NOLINTEND
31
32public:
33 // member functions
34 // NOLINTBEGIN
35 MCAPI ::std::unique_ptr<::StructurePiece> findAndCreatePieceFactory(
36 ::std::string const& pieceClass,
37 ::std::vector<::std::unique_ptr<::StructurePiece>>& pieces,
38 ::Random& random,
39 int footX,
40 int footY,
41 int footZ,
42 int direction,
43 int depth
44 );
45
46 MCAPI void generateSmallDoor(
47 ::BlockSource& region,
48 ::Random&,
49 ::BoundingBox const& chunkBB,
50 ::StrongholdPiece::SmallDoorType doorType,
51 int footX,
52 int footY,
53 int footZ
54 );
55
56 MCAPI ::StructurePiece* generateSmallDoorChildForward(
57 ::SHStartPiece& startPiece,
58 ::std::vector<::std::unique_ptr<::StructurePiece>>& pieces,
59 ::Random& random,
60 int xOff,
61 int yOff
62 );
63
64 MCAPI ::StructurePiece* generateSmallDoorChildRight(
65 ::SHStartPiece& startPiece,
66 ::std::vector<::std::unique_ptr<::StructurePiece>>& pieces,
67 ::Random& random,
68 int yOff,
69 int zOff
70 );
71 // NOLINTEND
72
73public:
74 // static functions
75 // NOLINTBEGIN
76 MCAPI static void forceAddPortalRoom(
77 ::StructurePiece& startPiece,
78 ::std::vector<::std::unique_ptr<::StructurePiece>>& pieces,
79 ::Random& random
80 );
81
82 MCAPI static ::StructurePiece* generateAndAddPiece(
83 ::SHStartPiece& startPiece,
84 ::std::vector<::std::unique_ptr<::StructurePiece>>& pieces,
85 ::Random& random,
86 int footX,
87 int footY,
88 int footZ,
89 int direction,
90 int depth
91 );
92 // NOLINTEND
93};
Definition BlockSource.h:71
Definition BoundingBox.h:13
Definition Random.h:10
Definition SHStartPiece.h:16
Definition StrongholdPiece.h:16
Definition StructurePiece.h:18