LeviLamina
Loading...
Searching...
No Matches
BaseCommandBlock.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/safety/RedactableString.h"
7
8// auto generated forward declare list
9// clang-format off
10class BlockSource;
11class Command;
12class CommandOrigin;
13class CompoundTag;
14class DataLoadHelper;
15class Level;
16struct ActorUniqueID;
17// clang-format on
18
19class BaseCommandBlock {
20public:
21 // member variables
22 // NOLINTBEGIN
23 ::ll::TypedStorage<8, 32, ::std::string> mLastOutputId;
24 ::ll::TypedStorage<8, 24, ::std::vector<::std::string>> mLastOutputParams;
25 ::ll::TypedStorage<8, 32, ::std::string> mCommand;
26 ::ll::TypedStorage<8, 72, ::Bedrock::Safety::RedactableString> mName;
27 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::Command>> mCompiledCommand;
28 ::ll::TypedStorage<8, 8, uint64> mLastExecution;
29 ::ll::TypedStorage<4, 4, int> mVersion;
30 ::ll::TypedStorage<4, 4, int> mSuccessCount;
31 ::ll::TypedStorage<4, 4, int> mTickDelay;
32 ::ll::TypedStorage<1, 1, bool> mExecuteOnFirstTick;
33 ::ll::TypedStorage<1, 1, bool> mTrackOutput;
34 // NOLINTEND
35
36public:
37 // prevent constructor by default
38 BaseCommandBlock& operator=(BaseCommandBlock const&);
39 BaseCommandBlock(BaseCommandBlock const&);
40 BaseCommandBlock();
41
42public:
43 // member functions
44 // NOLINTBEGIN
45 MCAPI bool _performCommand(::BlockSource& region, ::CommandOrigin const& origin, bool& markForSaving);
46
47 MCAPI void _setCommand(::BlockSource& region, ::CommandOrigin const& origin, ::std::string const& command);
48
49 MCAPI void compile(::CommandOrigin const& origin, ::Level& level);
50
51 MCAPI ::std::string getLastOutput() const;
52
53 MCAPI void load(::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
54
55 MCAPI ::BaseCommandBlock& operator=(::BaseCommandBlock&&);
56
57 MCAPI bool save(::CompoundTag& tag) const;
58
59 MCAPI_C void setCommand(::BlockSource& region, ::ActorUniqueID const& entityId, ::std::string const& command);
60
61 MCAPI void setLastOutput(::std::string const& lastOutput, ::std::vector<::std::string> const& params);
62
63 MCAPI ~BaseCommandBlock();
64 // NOLINTEND
65
66public:
67 // static variables
68 // NOLINTBEGIN
69 MCAPI static ::Bedrock::Safety::RedactableString const& DefaultCommandBlockName();
70 // NOLINTEND
71
72public:
73 // destructor thunk
74 // NOLINTBEGIN
75 MCAPI void $dtor();
76 // NOLINTEND
77};
Definition BlockSource.h:68
Definition CommandOrigin.h:32
Definition Command.h:17
Definition CompoundTag.h:23
Definition DataLoadHelper.h:20
Definition Level.h:249
Definition ActorUniqueID.h:5