24class ChalkboardBlockActor :
public ::BlockActor {
34 struct CachedLineData {
38 ::ll::TypedStorage<8, 32, ::std::string> text;
39 ::ll::TypedStorage<4, 4, int> lineLength;
46 CachedLineData& operator=(CachedLineData
const&);
47 CachedLineData(CachedLineData
const&);
53 MCAPI CachedLineData();
59 MCAPI ~CachedLineData();
79 struct CachedMessageData {
83 ::ll::TypedStorage<8, 640, ::std::array<::ChalkboardBlockActor::CachedLineData, 16>> lineData;
84 ::ll::TypedStorage<4, 4, uint> numLines;
85 ::ll::TypedStorage<8, 32, ::std::string> filteredMessage;
86 ::ll::TypedStorage<8, 8, void const*> cachedFontCompare;
87 ::ll::TypedStorage<1, 1, bool> dirty;
94 CachedMessageData& operator=(CachedMessageData
const&);
95 CachedMessageData(CachedMessageData
const&);
105 MCAPI ~CachedMessageData();
122 ::ll::TypedStorage<1, 1, bool> mChunkFound;
123 ::ll::TypedStorage<8, 8, ::ChalkboardBlockActor*> mBoard;
129 MCAPI
bool confirmedBroken(::ChalkboardBlockActor& compare,
::BlockSource& region)
const;
136 ::ll::TypedStorage<8, 32, ::std::string> mText;
137 ::ll::TypedStorage<8, 32, ::std::string> mTextObjectString;
138 ::ll::TypedStorage<8, 32, ::TextObjectRoot> mTextObjectMessage;
139 ::ll::TypedStorage<8, 696, ::ChalkboardBlockActor::CachedMessageData> mCachedMessage;
140 ::ll::TypedStorage<8, 24, ::std::vector<::BlockPos>> mSiblings;
141 ::ll::TypedStorage<1, 1, bool> mShouldPersistFormatting;
142 ::ll::TypedStorage<4, 12, ::BlockPos> mBasePos;
143 ::ll::TypedStorage<1, 1, ::ChalkboardSize> mSize;
144 ::ll::TypedStorage<1, 1, bool> mIsOnGround;
145 ::ll::TypedStorage<1, 1, bool> mIsLocked;
146 ::ll::TypedStorage<1, 1, bool> mInitialized;
147 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mOwner;
152 ChalkboardBlockActor();
157 virtual ~ChalkboardBlockActor() ;
167 virtual ::std::string getImmersiveReaderText(
::BlockSource& region) ;
169 virtual ::std::vector<::std::string> getUgcStrings(
::CompoundTag const& tag)
const ;
171 virtual void setUgcStrings(
::CompoundTag& tag, ::std::vector<::std::string>
const& list)
const ;
173 virtual ::std::unique_ptr<::BlockActorDataPacket> _getUpdatePacket(
::BlockSource&) ;
181 MCAPI
explicit ChalkboardBlockActor(
::BlockPos const& pos);
183 MCAPI ::ChalkboardBlockActor* getBaseChalkboard(
::BlockSource& region)
const;
185 MCAPI ::std::string
const& getText()
const;
188 MCAPI ::ChalkboardBlockActor::CachedMessageData&
192 MCAPI
void setText(::std::string
const& text);
204 MCAPI static ::ChalkboardBlockActor::ChalkboardFinder _findChalkboard(
::BlockSource& region,
::BlockPos const& pos);
206 MCAPI static ::std::vector<::BlockPos>
207 calculateAllBlocks(
::BlockPos const& basePos, ::ChalkboardSize boardSize,
int dir);
209 MCAPI
static bool canCreateChalkboard(
213 ::ChalkboardSize boardSize,
216 ::std::vector<::BlockPos>& occupiedBlocks,
218 bool generateParticles
223 MCAPI static ::ChalkboardBlockActor* createChalkboard(
227 ::ChalkboardSize boardSize,
259 MCAPI ::std::string $getImmersiveReaderText(
::BlockSource& region);
261 MCAPI ::std::vector<::std::string> $getUgcStrings(
::CompoundTag const& tag)
const;
263 MCAPI
void $setUgcStrings(
::CompoundTag& tag, ::std::vector<::std::string>
const& list)
const;
265 MCFOLD ::std::unique_ptr<::BlockActorDataPacket> $_getUpdatePacket(
::BlockSource&);
275 MCAPI
static void** $vftable();
Definition SaveContext.h:5
Definition TextObjectRoot.h:14