LeviLamina
Loading...
Searching...
No Matches
CommandBlockActor.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/world/level/block/CommandBlockMode.h"
8#include "mc/world/level/block/actor/BaseCommandBlock.h"
9#include "mc/world/level/block/actor/BlockActor.h"
10
11// auto generated forward declare list
12// clang-format off
14class BlockPos;
15class BlockSource;
16class CommandBlock;
17class CompoundTag;
18class DataLoadHelper;
19class ILevel;
20class Player;
22class SaveContext;
23namespace Bedrock::Safety { class RedactableString; }
24// clang-format on
25
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 192, ::BaseCommandBlock> mBaseCB;
31 ::ll::TypedStorage<1, 1, bool> mPowered;
32 ::ll::TypedStorage<1, 1, bool> mConditionMet;
33 ::ll::TypedStorage<1, 1, bool> mRedstoneMode;
34 ::ll::TypedStorage<1, 1, bool> mLastPerformedConditionalMode;
35 ::ll::TypedStorage<1, 1, bool> mLastPerformedRedstoneMode;
36 ::ll::TypedStorage<1, 1, bool> mExecuteFirstTickOnPlace;
37 ::ll::TypedStorage<2, 2, ::CommandBlockMode> mLastPerformedCBMode;
38 // NOLINTEND
39
40public:
41 // prevent constructor by default
43
44public:
45 // virtual functions
46 // NOLINTBEGIN
47 // vIndex: 2
48 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
49
50 // vIndex: 4
51 virtual void saveBlockData(::CompoundTag& tag, ::BlockSource& region) const /*override*/;
52
53 // vIndex: 1
54 virtual void load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
55
56 // vIndex: 5
57 virtual void
58 loadBlockData(::CompoundTag const& tag, ::BlockSource& region, ::DataLoadHelper& dataLoadHelper) /*override*/;
59
60 // vIndex: 6
61 virtual void onCustomTagLoadDone(::BlockSource& region) /*override*/;
62
63 // vIndex: 9
64 virtual void onChanged(::BlockSource& region) /*override*/;
65
66 // vIndex: 12
67 virtual void onPlace(::BlockSource& region) /*override*/;
68
69 // vIndex: 25
70 virtual ::Bedrock::Safety::RedactableString const& getCustomName() const /*override*/;
71
72 // vIndex: 26
73 virtual ::std::string const&
74 getFilteredCustomName(::Bedrock::NotNullNonOwnerPtr<::ProfanityContext> const& context) /*override*/;
75
76 // vIndex: 28
77 virtual void setCustomName(::Bedrock::Safety::RedactableString const& str) /*override*/;
78
79 // vIndex: 44
80 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(::BlockSource& region) /*override*/;
81
82 // vIndex: 45
83 virtual void _onUpdatePacket(::CompoundTag const& tag, ::BlockSource& region) /*override*/;
84
85 // vIndex: 46
86 virtual bool _playerCanUpdate(::Player const& player) const /*override*/;
87
88 // vIndex: 0
89 virtual ~CommandBlockActor() /*override*/ = default;
90 // NOLINTEND
91
92public:
93 // member functions
94 // NOLINTBEGIN
95 MCNAPI CommandBlockActor(::BlockPos const& pos, ::CommandBlockMode mode);
96
97 MCNAPI void _setAutomatic(::BlockSource& region, bool alwaysActive, ::CommandBlockMode currentMode);
98
99 MCNAPI ::CommandBlock const* getCommandBlock(::BlockSource& region) const;
100
101 MCNAPI bool getConditionalMode(::BlockSource& region) const;
102
103 MCNAPI bool markConditionMet(::BlockSource& region);
104
105 MCNAPI void markForSaving(::BlockSource& region);
106
107 MCNAPI void markForSaving(::BlockSource& region, int oldSuccessCount, bool oldConditionMet);
108
109 MCNAPI bool performCommand(::BlockSource& region);
110
111 MCNAPI void updateBlock(
112 ::BlockSource& region,
113 ::std::string const& cmd,
115 ::CommandBlockMode newMode,
116 bool isConditional,
117 bool redstoneMode,
118 bool trackOutput,
119 int tickDelay,
120 bool executeFirstTick
121 );
122 // NOLINTEND
123
124public:
125 // constructor thunks
126 // NOLINTBEGIN
127 MCNAPI void* $ctor(::BlockPos const& pos, ::CommandBlockMode mode);
128 // NOLINTEND
129
130public:
131 // virtual function thunks
132 // NOLINTBEGIN
133 MCNAPI bool $save(::CompoundTag& tag, ::SaveContext const& saveContext) const;
134
135 MCNAPI void $saveBlockData(::CompoundTag& tag, ::BlockSource& region) const;
136
137 MCNAPI void $load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
138
139 MCNAPI void $loadBlockData(::CompoundTag const& tag, ::BlockSource& region, ::DataLoadHelper& dataLoadHelper);
140
142
143 MCNAPI void $onChanged(::BlockSource& region);
144
145 MCNAPI void $onPlace(::BlockSource& region);
146
147 MCNAPI ::Bedrock::Safety::RedactableString const& $getCustomName() const;
148
149 MCNAPI ::std::string const&
150 $getFilteredCustomName(::Bedrock::NotNullNonOwnerPtr<::ProfanityContext> const& context);
151
153
154 MCNAPI ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(::BlockSource& region);
155
156 MCNAPI void $_onUpdatePacket(::CompoundTag const& tag, ::BlockSource& region);
157
158 MCNAPI bool $_playerCanUpdate(::Player const& player) const;
159 // NOLINTEND
160
161public:
162 // vftables
163 // NOLINTBEGIN
164 MCNAPI static void** $vftable();
165 // NOLINTEND
166};
Definition RedactableString.h:10
Definition BlockActorDataPacket.h:19
Definition BlockActor.h:32
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition CommandBlockActor.h:26
MCAPI void $onPlace(::BlockSource &region)
MCAPI void $loadBlockData(::CompoundTag const &tag, ::BlockSource &region, ::DataLoadHelper &dataLoadHelper)
static MCAPI void ** $vftable()
MCAPI void $saveBlockData(::CompoundTag &tag, ::BlockSource &region) const
MCAPI bool $_playerCanUpdate(::Player const &player) const
MCAPI void markForSaving(::BlockSource &region, int oldSuccessCount, bool oldConditionMet)
MCAPI::CommandBlock const * getCommandBlock(::BlockSource &region) const
MCAPI void $onCustomTagLoadDone(::BlockSource &region)
MCAPI void $setCustomName(::Bedrock::Safety::RedactableString const &str)
MCAPI::Bedrock::Safety::RedactableString const & $getCustomName() const
MCAPI void markForSaving(::BlockSource &region)
MCAPI void _setAutomatic(::BlockSource &region, bool alwaysActive, ::CommandBlockMode currentMode)
MCAPI void $_onUpdatePacket(::CompoundTag const &tag, ::BlockSource &region)
MCAPI bool markConditionMet(::BlockSource &region)
MCAPI void * $ctor(::BlockPos const &pos, ::CommandBlockMode mode)
MCAPI void $load(::ILevel &level, ::CompoundTag const &tag, ::DataLoadHelper &dataLoadHelper)
MCAPI CommandBlockActor(::BlockPos const &pos, ::CommandBlockMode mode)
MCAPI bool performCommand(::BlockSource &region)
MCAPI::std::string const & $getFilteredCustomName(::Bedrock::NotNullNonOwnerPtr<::ProfanityContext > const &context)
MCAPI bool getConditionalMode(::BlockSource &region) const
MCAPI void $onChanged(::BlockSource &region)
MCAPI void updateBlock(::BlockSource &region, ::std::string const &cmd, ::Bedrock::Safety::RedactableString const &name, ::CommandBlockMode newMode, bool isConditional, bool redstoneMode, bool trackOutput, int tickDelay, bool executeFirstTick)
MCAPI ::std::unique_ptr<::BlockActorDataPacket > $_getUpdatePacket(::BlockSource &region)
MCAPI bool $save(::CompoundTag &tag, ::SaveContext const &saveContext) const
Definition CommandBlock.h:26
Definition CompoundTag.h:13
Definition DataLoadHelper.h:20
Definition ILevel.h:205
Definition Player.h:119
Definition ProfanityContext.h:8
Definition SaveContext.h:5
Definition context.h:5