LeviLamina
Loading...
Searching...
No Matches
PlaceCommand.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/server/commands/CommandFilePath.h"
7#include "mc/server/commands/CommandPosition.h"
8#include "mc/server/commands/ServerCommand.h"
9#include "mc/world/level/levelgen/v2/LiquidSettings.h"
10
11// auto generated forward declare list
12// clang-format off
13class BlockPos;
14class BoundingBox;
15class CommandOrigin;
16class CommandOutput;
17class CommandRegistry;
18class Dimension;
19class Experiments;
20class HashedString;
21class IFeature;
23// clang-format on
24
26public:
27 // PlaceCommand inner types define
28 enum class PlaceAction : int {
29 Structure = 0,
30 Jigsaw = 1,
31 Feature = 2,
32 FeatureRule = 3,
33 };
34
35 using BiomeDecorationFeatureMap = ::std::unordered_map<::HashedString, ::BiomeDecorationFeature>;
36
37 using PlaceResult = ::nonstd::expected<::BoundingBox, ::std::string_view>;
38
39public:
40 // member variables
41 // NOLINTBEGIN
42 ::ll::TypedStorage<4, 4, ::PlaceCommand::PlaceAction> mPlaceAction;
43 ::ll::TypedStorage<8, 32, ::CommandFilePath> mPool;
44 ::ll::TypedStorage<8, 32, ::std::string> mTarget;
45 ::ll::TypedStorage<4, 4, int> mMaxDepth;
46 ::ll::TypedStorage<4, 16, ::CommandPosition> mPosition;
47 ::ll::TypedStorage<8, 32, ::std::string> mStructureOrFeatureName;
48 ::ll::TypedStorage<8, 8, ::IFeature const*> mFeature;
49 ::ll::TypedStorage<1, 1, ::br::worldgen::LiquidSettings> mLiquidSettings;
50 ::ll::TypedStorage<1, 1, bool> mPosIsSet;
51 ::ll::TypedStorage<1, 1, bool> mIgnoreStartHeight;
52 ::ll::TypedStorage<1, 1, bool> mKeepJigsaws;
53 ::ll::TypedStorage<1, 1, bool> mIncludeEntities;
54 // NOLINTEND
55
56public:
57 // virtual functions
58 // NOLINTBEGIN
59 virtual void execute(::CommandOrigin const& origin, ::CommandOutput& output) const /*override*/;
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCAPI void _placeFeature(
66 ::IFeature const* feature,
67 ::CommandPosition const& pos,
68 ::CommandOrigin const& origin,
69 ::CommandOutput& output
70 ) const;
71
72 MCAPI void _placeFeatureRule(
73 ::std::string const& featureRuleName,
74 ::CommandPosition const& pos,
75 ::CommandOrigin const& origin,
76 ::CommandOutput& output
77 ) const;
78
79 MCAPI void _placeJigsaw(
80 ::std::string const& pool,
81 ::std::string const& target,
82 schar maxDepth,
83 ::CommandPosition const& pos,
84 bool keepJigsaws,
85 bool includeEntities,
86 ::br::worldgen::LiquidSettings liquidSettings,
87 ::CommandOrigin const& origin,
88 ::CommandOutput& output
89 ) const;
90
91 MCAPI void _placeStructure(
92 ::std::string const& id,
93 ::CommandPosition const& pos,
94 bool ignoreStartHeight,
95 bool keepJigsaws,
96 bool includeEntities,
97 ::br::worldgen::LiquidSettings liquidSettings,
98 ::CommandOrigin const& origin,
99 ::CommandOutput& output
100 ) const;
101 // NOLINTEND
102
103public:
104 // static functions
105 // NOLINTBEGIN
106 MCAPI static ::nonstd::expected<::BoundingBox, ::std::string_view> placeJigsaw(
107 ::std::string const& pool,
108 ::std::string const& target,
109 schar maxDepth,
110 ::BlockPos const& position,
111 bool keepJigsaws,
112 bool includeEntities,
113 ::Dimension& dimension,
114 ::br::worldgen::LiquidSettings liquidSettings
115 );
116
117 MCAPI static ::nonstd::expected<::BoundingBox, ::std::string_view> placeStructure(
118 ::std::string const& id,
119 ::BlockPos const& pos,
120 ::Dimension& dimension,
121 bool ignoreStartHeight,
122 bool keepJigsaws,
123 bool includeEntities,
124 ::br::worldgen::LiquidSettings liquidSettings
125 );
126
127 MCAPI static void setup(
128 ::CommandRegistry& registry,
129 ::std::unordered_map<::HashedString, ::BiomeDecorationFeature> const& biomeDecorationFeatures,
130 ::Experiments const&
131 );
132 // NOLINTEND
133
134public:
135 // virtual function thunks
136 // NOLINTBEGIN
137 MCAPI void $execute(::CommandOrigin const& origin, ::CommandOutput& output) const;
138
139
140 // NOLINTEND
141
142public:
143 // vftables
144 // NOLINTBEGIN
145 MCNAPI static void** $vftable();
146 // NOLINTEND
147};
Definition BlockPos.h:21
Definition BoundingBox.h:13
Definition CommandOrigin.h:32
Definition CommandOutput.h:20
Definition CommandPosition.h:15
Definition CommandRegistry.h:51
Definition Dimension.h:89
Definition Experiments.h:14
Definition Feature.h:19
Definition HashedString.h:5
Definition IFeature.h:19
Definition PlaceCommand.h:25
static MCAPI void ** $vftable()
Definition ServerCommand.h:22
Definition BiomeDecorationFeature.h:15