30class NewExecuteCommand :
public ::Command {
41 enum class ConditionSubcommand :
int {
49 enum class ScanMode :
int {
54 enum class ScoreRangeMode :
int {
59 enum class Subcommand :
int {
78 virtual ::std::string getCommandName()
const ;
84 MCAPI static ::std::string
85 getSubcommandName(::NewExecuteCommand::ExecuteChainedSubcommand::ConditionSubcommand subcommand);
87 MCAPI static ::std::string
88 getSubcommandName(::NewExecuteCommand::ExecuteChainedSubcommand::Subcommand subcommand);
96 MCAPI
static char const*& CHAINED_OPTION_0();
98 MCAPI
static char const*& CONDITION_SUBCOMMAND_OPTION_BLOCK();
100 MCAPI
static char const*& CONDITION_SUBCOMMAND_OPTION_BLOCKS();
102 MCAPI
static char const*& CONDITION_SUBCOMMAND_OPTION_ENTITY();
104 MCAPI
static char const*& CONDITION_SUBCOMMAND_OPTION_SCORE();
106 MCAPI
static char const*& SUBCOMMAND_ALIGN();
108 MCAPI
static char const*& SUBCOMMAND_ANCHORED();
110 MCAPI
static char const*& SUBCOMMAND_AS();
112 MCAPI
static char const*& SUBCOMMAND_AT();
114 MCAPI
static char const*& SUBCOMMAND_BLOCK();
116 MCAPI
static char const*& SUBCOMMAND_BLOCKS();
118 MCAPI
static char const*& SUBCOMMAND_ENTITY();
120 MCAPI
static char const*& SUBCOMMAND_FACING();
122 MCAPI
static char const*& SUBCOMMAND_IF();
124 MCAPI
static char const*& SUBCOMMAND_IN();
126 MCAPI
static char const*& SUBCOMMAND_OPTION_ALIGN();
128 MCAPI
static char const*& SUBCOMMAND_OPTION_ANCHORED();
130 MCAPI
static char const*& SUBCOMMAND_OPTION_AS();
132 MCAPI
static char const*& SUBCOMMAND_OPTION_AT();
134 MCAPI
static char const*& SUBCOMMAND_OPTION_ENTITY();
136 MCAPI
static char const*& SUBCOMMAND_OPTION_FACING();
138 MCAPI
static char const*& SUBCOMMAND_OPTION_IF_UNLESS();
140 MCAPI
static char const*& SUBCOMMAND_OPTION_IN();
142 MCAPI
static char const*& SUBCOMMAND_OPTION_POSITIONED();
144 MCAPI
static char const*& SUBCOMMAND_OPTION_ROTATED();
146 MCAPI
static char const*& SUBCOMMAND_OPTION_RUN();
148 MCAPI
static char const*& SUBCOMMAND_POSITIONED();
150 MCAPI
static char const*& SUBCOMMAND_ROTATED();
152 MCAPI
static char const*& SUBCOMMAND_RUN();
154 MCAPI
static char const*& SUBCOMMAND_SCORE();
156 MCAPI
static char const*& SUBCOMMAND_UNLESS();
162 MCAPI ::std::string $getCommandName()
const;
177 ::ll::TypedStorage<4, 4, ::NewExecuteCommand::ExecuteChainedSubcommand::Subcommand> mSubcommandOption;
178 ::ll::TypedStorage<4, 4, ::NewExecuteCommand::ExecuteChainedSubcommand::Subcommand> mSecondarySubcommandOption;
179 ::ll::TypedStorage<4, 4, ::NewExecuteCommand::ExecuteChainedSubcommand::ConditionSubcommand>
180 mConditionSubcommandOption;
181 ::ll::TypedStorage<8, 200, ::CommandSelector<::Actor>> mTargets;
182 ::ll::TypedStorage<8, 200, ::CommandSelector<::Actor>> mSources;
183 ::ll::TypedStorage<8, 32, ::std::string> mAxesAlignment;
184 ::ll::TypedStorage<4, 4, ::SharedTypes::Legacy::ActorLocation> mActorLocation;
185 ::ll::TypedStorage<4, 16, ::CommandPositionFloat> mPosition;
186 ::ll::TypedStorage<4, 16, ::CommandPosition> mBlockPosition;
187 ::ll::TypedStorage<4, 16, ::CommandPosition> mEndPosition;
188 ::ll::TypedStorage<4, 16, ::CommandPosition> mDestination;
189 ::ll::TypedStorage<4, 8, ::RelativeFloat> mRotationX;
190 ::ll::TypedStorage<4, 8, ::RelativeFloat> mRotationY;
191 ::ll::TypedStorage<4, 4, ::DimensionType> mTargetDimension;
192 ::ll::TypedStorage<8, 8, ::CommandBlockName> mBlock;
193 ::ll::TypedStorage<8, 24, ::std::vector<::BlockStateCommandParam>> mBlockStates;
194 ::ll::TypedStorage<4, 4, int> mBlockData;
195 ::ll::TypedStorage<4, 4, ::NewExecuteCommand::ExecuteChainedSubcommand::ScanMode> mScanMode;
196 ::ll::TypedStorage<8, 32, ::std::string> mTargetScoreObjective;
197 ::ll::TypedStorage<8, 32, ::std::string> mSourceScoreObjective;
198 ::ll::TypedStorage<1, 1, ::CommandCompareOperator> mCompareOperator;
199 ::ll::TypedStorage<4, 4, ::NewExecuteCommand::ExecuteChainedSubcommand::ScoreRangeMode> mRangeMode;
200 ::ll::TypedStorage<4, 12, ::CommandIntegerRange> mRange;
201 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Command>> mCommand;
202 ::ll::TypedStorage<8, 16, ::NewExecuteCommand::ExecuteChainedSubcommand> mChainedCommand;
214 MCAPI NewExecuteCommand();
216 MCAPI
void _commandOutputFail(
::CommandOutput& output, ::std::optional<int>
const& testPassCount)
const;
218 MCAPI
void _commandOutputSuccess(
::CommandOutput& output, ::std::optional<int>
const& testPassCount)
const;
220 MCAPI
bool _detectConditionSubcommand(
223 ::std::optional<int>& testPassCount
226 MCAPI ::std::optional<::ScoreInfo> _getScoreFromSelectorOnObjective(
229 ::std::string
const& objectiveName,
234 MCAPI ::std::optional<::ScoreboardId> _getScoreboardIdForSelector(
245 MCAPI
static void setup(
::CommandRegistry& registry,
int newExecuteStartVersion);