32class SignBlockActor :
public ::BlockActor {
47 ::ll::TypedStorage<8, 32, ::std::string> text;
48 ::ll::TypedStorage<4, 4, int> lineLength;
68 struct CachedMessageData {
72 ::ll::TypedStorage<8, 160, ::SignBlockActor::CachedLineData[4]> lineData;
73 ::ll::TypedStorage<4, 4, uint> numLines;
74 ::ll::TypedStorage<8, 32, ::std::string> filteredMessage;
75 ::ll::TypedStorage<8, 8, void const*> cachedFontCompare;
76 ::ll::TypedStorage<1, 1, bool> dirty;
77 ::ll::TypedStorage<4, 4, ::InputMode> inputMode;
78 ::ll::TypedStorage<4, 4, ::NewInteractionModel> interactionModel;
85 CachedMessageData& operator=(CachedMessageData
const&);
98 MCAPI ~CachedMessageData();
120 ::ll::TypedStorage<1, 1, bool> mIsWaitingForChangeClear;
121 ::ll::TypedStorage<8, 72, ::OpenSignPacket> mOpenSignPacket;
129 enum class LoadMode :
int {
137 ::ll::TypedStorage<8, 32, ::std::string> mMessage;
138 ::ll::TypedStorage<8, 32, ::std::string> mFilteredMessage;
139 ::ll::TypedStorage<8, 32, ::TextObjectRoot> mTextObjectMessage;
140 ::ll::TypedStorage<8, 224, ::SignBlockActor::CachedMessageData> mCachedMessage;
141 ::ll::TypedStorage<4, 16, ::mce::Color> mSignTextColor;
142 ::ll::TypedStorage<1, 1, bool> mGlowing;
143 ::ll::TypedStorage<1, 1, bool> mHideGlowOutline;
144 ::ll::TypedStorage<1, 1, bool> mShouldPersistFormatting;
145 ::ll::TypedStorage<8, 32, ::std::string> mLastEditXuid;
146 ::ll::TypedStorage<8, 32, ::std::string> mTextObjectString;
158 MCAPI ::std::string
const& getMessage()
const;
160 MCAPI
void load(
::CompoundTag const& tag, ::SignBlockActor::Text::LoadMode load);
164 MCAPI
void setMessage(::std::string message);
174 MCAPI static ::std::add_lvalue_reference_t<char const[]> SIGN_PERSIST_FORMATTING_TAG();
187 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SignBlockActor::Text>> mTextFront;
188 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SignBlockActor::Text>> mTextBack;
189 ::ll::TypedStorage<1, 1, bool> mIsWaxed;
190 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mLockedForEditingBy;
191 ::ll::TypedStorage<8, 152, ::std::optional<::SignBlockActor::OpenSignRequest>> mOpenSignRequest;
192 ::ll::TypedStorage<1, 1, bool> mIsRemoteProfanityFilterEnabled;
193 ::ll::TypedStorage<1, 1, bool> mIsLocalProfanityFilterEnabled;
203 virtual ~SignBlockActor() ;
213 virtual ::std::string getImmersiveReaderText(
::BlockSource& region) ;
217 virtual ::std::vector<::std::string> getUgcStrings(
::CompoundTag const& tag)
const ;
219 virtual ::std::vector<::std::string> getFilteredUgcStrings(
::CompoundTag const& tag)
const ;
221 virtual void setUgcStrings(
::CompoundTag& tag, ::std::vector<::std::string>
const& list)
const ;
223 virtual void setFilteredUgcStrings(
::CompoundTag& tag, ::std::vector<::std::string>
const& list)
const ;
227 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(
::BlockSource&) ;
231 virtual bool _playerCanUpdate(
::Player const& fromPlayer)
const ;
237 MCAPI SignBlockActor(
::BlockPos const& pos, ::BlockActorType blockActorType, ::BlockActorRendererId rendererId);
246 MCAPI ::SignBlockActor::CachedMessageData
const& getCachedMessage(::SignTextSide side)
const;
248 MCAPI
bool getHideGlowOutline(::SignTextSide side)
const;
251 MCAPI
bool getIsGlowing(::SignTextSide side)
const;
253 MCAPI
bool getIsLockedForEditing(
::ILevel& level);
255 MCFOLD
bool getIsWaxed()
const;
257 MCAPI ::std::string
const& getMessage(::SignTextSide side)
const;
259 MCAPI ::std::string
const& getRawMessage(::SignTextSide side)
const;
261 MCAPI ::SignTextSide getSideFacingPlayer(
::Player const& player)
const;
263 MCAPI ::mce::Color
const& getSignTextColor(::SignTextSide side)
const;
265 MCAPI ::TextObjectRoot
const& getTextObject(::SignTextSide side)
const;
267 MCAPI
bool isStringMessage(::SignTextSide side)
const;
272 MCAPI
void serverOnlySetIsLockedForEditing(
::Player& player);
278 MCAPI
void setHideGlowOutline(::SignTextSide side,
bool hideGlowOutline);
280 MCAPI
void setIsGlowing(::SignTextSide side,
bool isGlowing);
283 MCAPI
void setMessage(::SignTextSide side, ::std::string message);
288 MCAPI
void setMessageForServerScripingOnly(::SignTextSide side, ::std::string message, ::std::string ownerID);
290 MCAPI
void setMessageForServerScripingOnly(::SignTextSide side,
::TextObjectRoot message, ::std::string ownerID);
292 MCAPI
void setSignTextColor(::SignTextSide side,
::mce::Color const& color);
294 MCAPI
void setWaxed(
bool waxed);
297 MCAPI
bool shouldPersistFormatting(::SignTextSide side)
const;
304 MCAPI
void* $ctor(
::BlockPos const& pos, ::BlockActorType blockActorType, ::BlockActorRendererId rendererId);
324 MCAPI ::std::string $getImmersiveReaderText(
::BlockSource& region);
328 MCAPI ::std::vector<::std::string> $getUgcStrings(
::CompoundTag const& tag)
const;
330 MCAPI ::std::vector<::std::string> $getFilteredUgcStrings(
::CompoundTag const& tag)
const;
332 MCAPI
void $setUgcStrings(
::CompoundTag& tag, ::std::vector<::std::string>
const& list)
const;
334 MCAPI
void $setFilteredUgcStrings(
::CompoundTag& tag, ::std::vector<::std::string>
const& list)
const;
338 MCAPI ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(
::BlockSource&);
342 MCAPI
bool $_playerCanUpdate(
::Player const& fromPlayer)
const;
350 MCAPI
static void** $vftable();
Definition EntityContext.h:17
Definition SaveContext.h:5
Definition SignBlockActor.h:126
Definition TextObjectRoot.h:17