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/ServerCommand.h"
7
8// auto generated forward declare list
9// clang-format off
10class BlockPos;
11class BoundingBox;
12class CommandOrigin;
13class CommandOutput;
14class CommandPosition;
15class CommandRegistry;
16class Dimension;
17class Experiments;
18class HashedString;
19class IFeature;
21// clang-format on
22
24public:
25 // PlaceCommand inner types define
26 enum class PlaceAction : int {
27 Structure = 0,
28 Jigsaw = 1,
29 Feature = 2,
30 FeatureRule = 3,
31 };
32
33public:
34 // member variables
35 // NOLINTBEGIN
47 // NOLINTEND
48
49public:
50 // prevent constructor by default
51 PlaceCommand& operator=(PlaceCommand const&);
54
55public:
56 // virtual functions
57 // NOLINTBEGIN
58 // vIndex: 2
59 virtual void execute(::CommandOrigin const& origin, ::CommandOutput& output) const /*override*/;
60
61 // vIndex: 0
62 virtual ~PlaceCommand() /*override*/ = default;
63 // NOLINTEND
64
65public:
66 // member functions
67 // NOLINTBEGIN
68 MCAPI void _placeFeature(
69 ::IFeature const* feature,
70 ::CommandPosition const& pos,
71 ::CommandOrigin const& origin,
72 ::CommandOutput& output
73 ) const;
74
75 MCAPI void _placeFeatureRule(
76 ::std::string const& featureRuleName,
77 ::CommandPosition const& pos,
78 ::CommandOrigin const& origin,
79 ::CommandOutput& output
80 ) const;
81
82 MCAPI void _placeJigsaw(
83 ::std::string const& pool,
84 ::std::string const& target,
85 schar maxDepth,
86 ::CommandPosition const& pos,
87 bool keepJigsaws,
88 bool includeEntities,
89 ::CommandOrigin const& origin,
90 ::CommandOutput& output
91 ) const;
92
93 MCAPI void _placeStructure(
94 ::std::string const& id,
95 ::CommandPosition const& pos,
96 bool ignoreStartHeight,
97 bool keepJigsaws,
98 bool includeEntities,
99 ::CommandOrigin const& origin,
100 ::CommandOutput& output
101 ) const;
102 // NOLINTEND
103
104public:
105 // static functions
106 // NOLINTBEGIN
107 MCAPI static ::nonstd::expected<::BoundingBox, ::std::string_view> placeJigsaw(
108 ::std::string const& pool,
109 ::std::string const& target,
110 schar maxDepth,
111 ::BlockPos const& position,
112 bool keepJigsaws,
113 bool includeEntities,
114 ::Dimension& dimension
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 );
125
126 MCAPI static void setup(
127 ::CommandRegistry& registry,
128 ::std::unordered_map<::HashedString, ::BiomeDecorationFeature> const& biomeDecorationFeatures,
129 ::Experiments const& experiments
130 );
131 // NOLINTEND
132
133public:
134 // destructor thunk
135 // NOLINTBEGIN
136
137 // NOLINTEND
138
139public:
140 // virtual function thunks
141 // NOLINTBEGIN
142 MCAPI void $execute(::CommandOrigin const& origin, ::CommandOutput& output) const;
143 // NOLINTEND
144
145public:
146 // vftables
147 // NOLINTBEGIN
148 MCAPI static void** $vftable();
149 // NOLINTEND
150};
Definition BlockPos.h:18
Definition BoundingBox.h:18
Definition CommandOrigin.h:32
Definition CommandOutput.h:19
Definition CommandPosition.h:13
Definition CommandRegistry.h:44
Definition Dimension.h:83
Definition Experiments.h:14
Definition Feature.h:18
Definition HashedString.h:5
Definition IFeature.h:13
Definition PlaceCommand.h:23
Definition ServerCommand.h:22
Definition BiomeDecorationFeature.h:15
Definition Alias.h:14