LeviLamina
Loading...
Searching...
No Matches
OceanMonumentPiece.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 LevelChunk;
13class Random;
14class RoomDefinition;
15// clang-format on
16
17class OceanMonumentPiece : public ::StructurePiece {
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<1, 1, bool> mDoFill;
22 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::RoomDefinition>> mRoomDefinition;
23 // NOLINTEND
24
25public:
26 // prevent constructor by default
27 OceanMonumentPiece();
28
29public:
30 // virtual functions
31 // NOLINTBEGIN
32 virtual bool postProcess(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB) = 0;
33
34 virtual void postProcessMobsAt(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB) /*override*/;
35
36 virtual int getWorldZ(int x, int z) /*override*/;
37
38 virtual int getWorldX(int x, int z) /*override*/;
39
40 virtual void addHardcodedSpawnAreas(::LevelChunk& chunk) const /*override*/;
41 // NOLINTEND
42
43public:
44 // member functions
45 // NOLINTBEGIN
46 MCAPI OceanMonumentPiece(
47 int genDepth,
48 int& orientation,
49 ::std::shared_ptr<::RoomDefinition> roomDefinition,
50 int roomWidth,
51 int roomHeight,
52 int roomDepth
53 );
54
55 MCAPI void
56 generateDefaultFloor(::BlockSource& region, ::BoundingBox const& chunkBB, int xOff, int zOff, bool downOpening);
57
58 MCAPI void spawnElder(::BlockSource& region, ::BoundingBox const& x, int y, int z, int);
59 // NOLINTEND
60
61public:
62 // static variables
63 // NOLINTBEGIN
64 MCAPI static int& mGridroomLeftWingConnectIndex();
65
66 MCAPI static int& mGridroomRightWingConnectIndex();
67
68 MCAPI static int& mGridroomSourceIndex();
69
70 MCAPI static int& mGridroomTopConnectIndex();
71
72 MCAPI static int const& mLeftWingIndex();
73
74 MCAPI static int const& mPenthouseIndex();
75
76 MCAPI static int const& mRightWingIndex();
77 // NOLINTEND
78
79public:
80 // constructor thunks
81 // NOLINTBEGIN
82 MCAPI void* $ctor(
83 int genDepth,
84 int& orientation,
85 ::std::shared_ptr<::RoomDefinition> roomDefinition,
86 int roomWidth,
87 int roomHeight,
88 int roomDepth
89 );
90 // NOLINTEND
91
92public:
93 // virtual function thunks
94 // NOLINTBEGIN
95 MCFOLD void $postProcessMobsAt(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB);
96
97 MCAPI int $getWorldZ(int x, int z);
98
99 MCAPI int $getWorldX(int x, int z);
100
101 MCAPI void $addHardcodedSpawnAreas(::LevelChunk& chunk) const;
102
103
104 // NOLINTEND
105
106public:
107 // vftables
108 // NOLINTBEGIN
109 MCNAPI static void** $vftable();
110 // NOLINTEND
111};
Definition BlockSource.h:73
Definition BoundingBox.h:13
Definition LevelChunk.h:87
static MCAPI void ** $vftable()
Definition Random.h:10
Definition RoomDefinition.h:5
Definition StructurePiece.h:21