Skip to content
LeviMC
English
AutoLightDark
LeviLamina
Loading...
Searching...
No Matches
OceanRuinPieces.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/util/Rotation.h"
8#include "mc/world/level/BlockPos.h"
9#include "mc/world/level/biome/OceanTempCategory.h"
10#include "mc/world/level/levelgen/structure/StructurePieceType.h"
11#include "mc/world/level/levelgen/structure/TemplateStructurePiece.h"
12
13// auto generated forward declare list
14// clang-format off
15class BlockSource;
16class BoundingBox;
17class Random;
19class StructurePiece;
22// clang-format on
23
25public:
26 // OceanRuinPieces inner types declare
27 // clang-format off
28 class OceanRuinPiece;
29 // clang-format on
30
31 // OceanRuinPieces inner types define
32 class OceanRuinPiece : public ::TemplateStructurePiece {
33 public:
34 // member variables
35 // NOLINTBEGIN
36 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::StructureManager>> mStructureManager;
37 ::ll::TypedStorage<8, 32, ::std::string> mTemplateName;
38 ::ll::TypedStorage<4, 4, ::OceanTempCategory> mBiomeType;
39 ::ll::TypedStorage<4, 4, float> mIntegrity;
40 ::ll::TypedStorage<1, 1, bool> mIsLarge;
41 ::ll::TypedStorage<1, 1, ::Rotation> mRotation;
42 ::ll::TypedStorage<4, 12, ::BlockPos> mPosition;
43 ::ll::TypedStorage<
44 8,
45 8,
46 ::std::unique_ptr<::std::vector<
47 ::std::unique_ptr<::StructurePoolBlockRule, ::std::default_delete<::StructurePoolBlockRule>>>>>
48 mPlaceArchySuspiciousBlocks;
49 // NOLINTEND
50
51 public:
52 // prevent constructor by default
53 OceanRuinPiece();
54
55 public:
56 // virtual functions
57 // NOLINTBEGIN
58 virtual ::StructurePieceType getType() const /*override*/;
59
60 virtual bool postProcess(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB) /*override*/;
61
62 virtual void _handleDataMarker(
63 ::std::string const& markerId,
64 ::BlockPos const& position,
65 ::BlockSource& region,
66 ::Random& random,
67 ::BoundingBox const& chunkBB
68 ) /*override*/;
69 // NOLINTEND
70
71 public:
72 // member functions
73 // NOLINTBEGIN
75 ::Bedrock::NotNullNonOwnerPtr<::StructureManager> structureManager,
76 ::std::string templateName,
77 ::BlockPos const& origin,
78 ::Rotation rotation,
79 float integrity,
80 bool isLarge,
81 ::OceanTempCategory type
82 );
83 // NOLINTEND
84
85 public:
86 // constructor thunks
87 // NOLINTBEGIN
88 MCNAPI void* $ctor(
89 ::Bedrock::NotNullNonOwnerPtr<::StructureManager> structureManager,
90 ::std::string templateName,
91 ::BlockPos const& origin,
92 ::Rotation rotation,
93 float integrity,
94 bool isLarge,
95 ::OceanTempCategory type
96 );
97 // NOLINTEND
98
99 public:
100 // virtual function thunks
101 // NOLINTBEGIN
102 MCNAPI ::StructurePieceType $getType() const;
103
104 MCAPI bool $postProcess(::BlockSource& region, ::Random& random, ::BoundingBox const& chunkBB);
105
107 ::std::string const& markerId,
108 ::BlockPos const& position,
109 ::BlockSource& region,
110 ::Random& random,
111 ::BoundingBox const& chunkBB
112 );
113
114
115 // NOLINTEND
116 };
117
118public:
119 // static functions
120 // NOLINTBEGIN
121 MCNAPI static void _addPiece(
122 ::Bedrock::NotNullNonOwnerPtr<::StructureManager> structureManager,
123 ::BlockPos const& position,
124 ::Rotation const& rotation,
125 ::std::vector<::std::unique_ptr<::StructurePiece>>& pieces,
126 ::Random& random,
127 ::OceanRuinConfiguration const& configuration,
128 bool const isLarge,
129 float const baseIntegrity
130 );
131 // NOLINTEND
132
133public:
134 // static variables
135 // NOLINTBEGIN
136 MCNAPI static ::std::add_lvalue_reference_t<::std::string_view[4]> bigRuinsBrick();
137
138 MCNAPI static ::std::add_lvalue_reference_t<::std::string_view[4]> bigRuinsCracked();
139
140 MCNAPI static ::std::add_lvalue_reference_t<::std::string_view[4]> bigRuinsMossy();
141
142 MCNAPI static ::std::add_lvalue_reference_t<::std::string_view[9]> ruinsBrick();
143
144 MCNAPI static ::std::add_lvalue_reference_t<::std::string_view[9]> ruinsCracked();
145
146 MCNAPI static ::std::add_lvalue_reference_t<::std::string_view[9]> ruinsMossy();
147 // NOLINTEND
148};
Definition BlockPos.h:14
Definition BlockSource.h:72
Definition BoundingBox.h:13
Definition OceanRuinPieces.h:32
MCAPI void * $ctor(::Bedrock::NotNullNonOwnerPtr<::StructureManager > structureManager, ::std::string templateName, ::BlockPos const &origin, ::Rotation rotation, float integrity, bool isLarge, ::OceanTempCategory type)
MCAPI OceanRuinPiece(::Bedrock::NotNullNonOwnerPtr<::StructureManager > structureManager, ::std::string templateName, ::BlockPos const &origin, ::Rotation rotation, float integrity, bool isLarge, ::OceanTempCategory type)
MCAPI::StructurePieceType $getType() const
MCAPI void $_handleDataMarker(::std::string const &markerId, ::BlockPos const &position, ::BlockSource &region, ::Random &random, ::BoundingBox const &chunkBB)
Definition OceanRuinPieces.h:24
static MCAPI void _addPiece(::Bedrock::NotNullNonOwnerPtr<::StructureManager > structureManager, ::BlockPos const &position, ::Rotation const &rotation, ::std::vector<::std::unique_ptr<::StructurePiece > > &pieces, ::Random &random, ::OceanRuinConfiguration const &configuration, bool const isLarge, float const baseIntegrity)
static MCAPI ::std::add_lvalue_reference_t<::std::string_view[4]> bigRuinsBrick()
static MCAPI ::std::add_lvalue_reference_t<::std::string_view[9]> ruinsBrick()
static MCAPI ::std::add_lvalue_reference_t<::std::string_view[4]> bigRuinsMossy()
static MCAPI ::std::add_lvalue_reference_t<::std::string_view[9]> ruinsCracked()
static MCAPI ::std::add_lvalue_reference_t<::std::string_view[9]> ruinsMossy()
static MCAPI ::std::add_lvalue_reference_t<::std::string_view[4]> bigRuinsCracked()
Definition Random.h:10
Definition StructureManager.h:35
Definition StructurePiece.h:18
Definition StructurePoolBlockRule.h:12
Definition OceanRuinConfiguration.h:8