LeviLamina
Loading...
Searching...
No Matches
SignBlockActor.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/math/Color.h"
7#include "mc/deps/input/InputMode.h"
8#include "mc/input/NewInteractionModel.h"
9#include "mc/legacy/ActorUniqueID.h"
10#include "mc/textobject/TextObjectRoot.h"
11#include "mc/world/level/block/actor/BlockActor.h"
12#include "mc/world/level/block/actor/BlockActorType.h"
13#include "mc/world/level/block/actor/SignTextSide.h"
14
15// auto generated forward declare list
16// clang-format off
18class BlockPos;
19class BlockSource;
20class CompoundTag;
21class DataLoadHelper;
22class ILevel;
23class Player;
24class SaveContext;
25// clang-format on
26
28public:
29 // SignBlockActor inner types declare
30 // clang-format off
31 struct CachedLineData;
32 struct CachedMessageData;
33 class Text;
34 // clang-format on
35
36 // SignBlockActor inner types define
38 public:
39 // member variables
40 // NOLINTBEGIN
41 ::ll::TypedStorage<8, 32, ::std::string> text;
42 ::ll::TypedStorage<4, 4, int> lineLength;
43 // NOLINTEND
44
45 public:
46 // prevent constructor by default
47 CachedLineData& operator=(CachedLineData const&);
49
50 public:
51 // member functions
52 // NOLINTBEGIN
54
56
58 // NOLINTEND
59
60 public:
61 // constructor thunks
62 // NOLINTBEGIN
63 MCNAPI void* $ctor();
64
66 // NOLINTEND
67
68 public:
69 // destructor thunk
70 // NOLINTBEGIN
71 MCNAPI void $dtor();
72 // NOLINTEND
73 };
74
76 public:
77 // member variables
78 // NOLINTBEGIN
79 ::ll::TypedStorage<8, 160, ::SignBlockActor::CachedLineData[4]> lineData;
80 ::ll::TypedStorage<4, 4, uint> numLines;
81 ::ll::TypedStorage<8, 32, ::std::string> filteredMessage;
82 ::ll::TypedStorage<8, 8, void const*> cachedFontCompare;
83 ::ll::TypedStorage<1, 1, bool> dirty;
84 ::ll::TypedStorage<4, 4, ::InputMode> inputMode;
85 ::ll::TypedStorage<4, 4, ::NewInteractionModel> interactionModel;
86 // NOLINTEND
87 };
88
89 class Text {
90 public:
91 // Text inner types define
92 enum class LoadMode : int {
93 TextOnly = 0,
94 AllData = 1,
95 };
96
97 public:
98 // member variables
99 // NOLINTBEGIN
100 ::ll::TypedStorage<8, 32, ::std::string> mMessage;
101 ::ll::TypedStorage<8, 32, ::std::string> mFilteredMessage;
102 ::ll::TypedStorage<8, 32, ::TextObjectRoot> mTextObjectMessage;
103 ::ll::TypedStorage<8, 224, ::SignBlockActor::CachedMessageData> mCachedMessage;
104 ::ll::TypedStorage<4, 16, ::mce::Color> mSignTextColor;
105 ::ll::TypedStorage<1, 1, bool> mGlowing;
106 ::ll::TypedStorage<1, 1, bool> mHideGlowOutline;
107 ::ll::TypedStorage<1, 1, bool> mShouldPersistFormatting;
108 ::ll::TypedStorage<8, 32, ::std::string> mLastEditXuid;
109 ::ll::TypedStorage<8, 32, ::std::string> mTextObjectString;
110 // NOLINTEND
111
112 public:
113 // prevent constructor by default
114 Text& operator=(Text const&);
115 Text(Text const&);
116
117 public:
118 // member functions
119 // NOLINTBEGIN
120 MCAPI Text();
121
123
124 MCAPI void _parseOldVersionText(::CompoundTag const& tag);
125
126 MCAPI void _parseOtherAttributes(::CompoundTag const& tag);
127
128 MCAPI void _parseText(::CompoundTag const& tag);
129
130 MCAPI ::std::string const& getMessage() const;
131
132 MCAPI void load(::CompoundTag const& tag, ::SignBlockActor::Text::LoadMode load);
133
134 MCAPI bool save(::CompoundTag& tag) const;
135
136 MCAPI void setEditedBy(::std::string const& playerXuid);
137
138 MCAPI void setMessage(::TextObjectRoot message);
139
140 MCAPI void setMessage(::std::string message);
141
142 MCAPI ~Text();
143 // NOLINTEND
144
145 public:
146 // static variables
147 // NOLINTBEGIN
148 MCAPI static ::std::add_lvalue_reference_t<char const[]> SIGN_PERSIST_FORMATTING_TAG();
149 // NOLINTEND
150
151 public:
152 // constructor thunks
153 // NOLINTBEGIN
154 MCAPI void* $ctor();
155
156 MCAPI void* $ctor(::SignBlockActor::Text&&);
157 // NOLINTEND
158
159 public:
160 // destructor thunk
161 // NOLINTBEGIN
162 MCAPI void $dtor();
163 // NOLINTEND
164 };
165
166public:
167 // member variables
168 // NOLINTBEGIN
169 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SignBlockActor::Text>> mTextFront;
170 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SignBlockActor::Text>> mTextBack;
171 ::ll::TypedStorage<1, 1, bool> mIsWaxed;
172 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mLockedForEditingBy;
173 ::ll::TypedStorage<1, 1, bool> mIsRemoteProfanityFilterEnabled;
174 ::ll::TypedStorage<1, 1, bool> mIsLocalProfanityFilterEnabled;
175 // NOLINTEND
176
177public:
178 // prevent constructor by default
180
181public:
182 // virtual functions
183 // NOLINTBEGIN
184 // vIndex: 0
185 virtual ~SignBlockActor() /*override*/ = default;
186
187 // vIndex: 2
188 virtual bool save(::CompoundTag& tag, ::SaveContext const& saveContext) const /*override*/;
189
190 // vIndex: 1
191 virtual void load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper) /*override*/;
192
193 // vIndex: 10
194 virtual void onChanged(::BlockSource& region) /*override*/;
195
196 // vIndex: 21
197 virtual float getShadowRadius(::BlockSource& region) const /*override*/;
198
199 // vIndex: 30
200 virtual ::std::string getImmersiveReaderText(::BlockSource& region) /*override*/;
201
202 // vIndex: 9
203 virtual void tick(::BlockSource& region) /*override*/;
204
205 // vIndex: 40
206 virtual ::std::vector<::std::string> getUgcStrings(::CompoundTag const& tag) const /*override*/;
207
208 // vIndex: 41
209 virtual ::std::vector<::std::string> getFilteredUgcStrings(::CompoundTag const& tag) const /*override*/;
210
211 // vIndex: 42
212 virtual void setUgcStrings(::CompoundTag& tag, ::std::vector<::std::string> const& list) const /*override*/;
213
214 // vIndex: 43
215 virtual void setFilteredUgcStrings(::CompoundTag& tag, ::std::vector<::std::string> const& list) const /*override*/;
216
217 // vIndex: 45
218 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(::BlockSource&) /*override*/;
219
220 // vIndex: 46
221 virtual void _onUpdatePacket(::CompoundTag const& data, ::BlockSource& region) /*override*/;
222
223 // vIndex: 47
224 virtual bool _playerCanUpdate(::Player const& fromPlayer) const /*override*/;
225 // NOLINTEND
226
227public:
228 // member functions
229 // NOLINTBEGIN
230 MCAPI SignBlockActor(::BlockPos const& pos, ::BlockActorType blockActorType, ::std::string const& typeString);
231
232 MCAPI void _updateTextFromClient(::CompoundTag const& data, ::BlockSource const& region);
233
234 MCAPI ::SignTextSide getSideFacingPlayer(::Player const& player) const;
235
236 MCAPI void setMessageForServerScripingOnly(::SignTextSide side, ::std::string message, ::std::string ownerID);
237
238 MCAPI void setMessageForServerScripingOnly(::SignTextSide side, ::TextObjectRoot message, ::std::string ownerID);
239 // NOLINTEND
240
241public:
242 // constructor thunks
243 // NOLINTBEGIN
244 MCAPI void* $ctor(::BlockPos const& pos, ::BlockActorType blockActorType, ::std::string const& typeString);
245 // NOLINTEND
246
247public:
248 // virtual function thunks
249 // NOLINTBEGIN
250 MCAPI bool $save(::CompoundTag& tag, ::SaveContext const& saveContext) const;
251
252 MCAPI void $load(::ILevel& level, ::CompoundTag const& tag, ::DataLoadHelper& dataLoadHelper);
253
254 MCFOLD void $onChanged(::BlockSource& region);
255
256 MCAPI float $getShadowRadius(::BlockSource& region) const;
257
258 MCAPI ::std::string $getImmersiveReaderText(::BlockSource& region);
259
260 MCAPI void $tick(::BlockSource& region);
261
262 MCAPI ::std::vector<::std::string> $getUgcStrings(::CompoundTag const& tag) const;
263
264 MCAPI ::std::vector<::std::string> $getFilteredUgcStrings(::CompoundTag const& tag) const;
265
266 MCAPI void $setUgcStrings(::CompoundTag& tag, ::std::vector<::std::string> const& list) const;
267
268 MCAPI void $setFilteredUgcStrings(::CompoundTag& tag, ::std::vector<::std::string> const& list) const;
269
270 MCAPI ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(::BlockSource&);
271
272 MCAPI void $_onUpdatePacket(::CompoundTag const& data, ::BlockSource& region);
273
274 MCAPI bool $_playerCanUpdate(::Player const& fromPlayer) const;
275 // NOLINTEND
276
277public:
278 // vftables
279 // NOLINTBEGIN
280 MCAPI static void** $vftable();
281 // NOLINTEND
282};
Definition BlockActorDataPacket.h:19
Definition BlockActor.h:32
Definition BlockPos.h:18
Definition BlockSource.h:67
Definition CompoundTag.h:13
Definition DataLoadHelper.h:20
Definition ILevel.h:204
Definition Player.h:120
Definition SaveContext.h:5
Definition SignBlockActor.h:89
Definition SignBlockActor.h:27
Definition TextObjectRoot.h:14
Definition SignBlockActor.h:37
MCAPI CachedLineData(::SignBlockActor::CachedLineData &&)
MCAPI void * $ctor(::SignBlockActor::CachedLineData &&)
Definition SignBlockActor.h:75