33class MapItemSavedData {
47 ::ll::TypedStorage<4, 4, uint> x0;
48 ::ll::TypedStorage<4, 4, uint> z0;
49 ::ll::TypedStorage<4, 4, uint> x1;
50 ::ll::TypedStorage<4, 4, uint> z1;
58 ::ll::TypedStorage<1, 1, ::MapDecoration::Type> type;
59 ::ll::TypedStorage<4, 4, int> x;
60 ::ll::TypedStorage<4, 4, int> y;
61 ::ll::TypedStorage<4, 4, int> rot;
69 ::ll::TypedStorage<1, 1, ::MapDecoration::Type> type;
70 ::ll::TypedStorage<4, 4, int> rotation;
74 using DecorationCollection =
75 ::std::vector<::std::pair<::MapItemTrackedActor::UniqueId, ::std::shared_ptr<::MapDecoration>>>;
80 ::ll::TypedStorage<8, 8, uint64> mUpdateInterval;
81 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mMapId;
82 ::ll::TypedStorage<8, 8, ::ActorUniqueID> mParentMapId;
83 ::ll::TypedStorage<1, 1, bool> mIsFullyExplored;
84 ::ll::TypedStorage<1, 1, bool> mPreviewIncomplete;
85 ::ll::TypedStorage<4, 12, ::BlockPos> mOrigin;
86 ::ll::TypedStorage<4, 4, ::DimensionType> mDimension;
87 ::ll::TypedStorage<1, 1, schar> mScale;
88 ::ll::TypedStorage<8, 24, ::std::vector<uint>> mPixels;
89 ::ll::TypedStorage<8, 24, ::std::vector<::ClientTerrainPixel>> mClientPixels;
90 ::ll::TypedStorage<8, 24, ::std::vector<::std::shared_ptr<::MapItemTrackedActor>>> mTrackedEntities;
91 ::ll::TypedStorage<1, 1, bool> mUnlimitedTracking;
92 ::ll::TypedStorage<1, 1, bool> mDirtyForSave;
93 ::ll::TypedStorage<1, 1, bool> mDirtyPixelData;
94 ::ll::TypedStorage<1, 1, bool> mLocked;
98 ::std::vector<::std::pair<::MapItemTrackedActor::UniqueId, ::std::shared_ptr<::MapDecoration>>>>
100 ::ll::TypedStorage<1, 1, bool> mHasDirtyClientPixels;
101 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SpinLockImpl>> mClientSamplingLock;
102 ::ll::TypedStorage<1, 1, bool> mNeedsResampling;
103 ::ll::TypedStorage<1, 1, bool> mIsDLCWorld;
115 MCAPI
void _addDecoration(
116 ::MapDecoration::Type type,
119 ::std::string
const& label,
123 MCAPI ::std::shared_ptr<::MapItemTrackedActor> _addTrackedMapEntity(
126 ::MapDecoration::Type decorationType
129 MCAPI ::MapItemSavedData::MapDecorationContext _calculateDecorationLocationAndType(
130 ::MapDecoration::Type type,
132 int xDeltaFromCenter,
133 int yDeltaFromCenter,
137 MCAPI schar _calculateRotation(
139 ::MapDecoration::Type type,
146 MCAPI
bool _isPlayerHoldingMap(
::Player& player);
152 MCAPI_C
bool _replaceExistingDecoration(
154 ::std::shared_ptr<::MapDecoration>
const& newDecoration
158 _updateTrackedEntityDecoration(
::BlockSource& region, ::std::shared_ptr<::MapItemTrackedActor> trackedActor);
160 MCAPI
void _updateTrackedEntityDecorations(
::BlockSource& region);
162 MCAPI
void _updateTrackedPlayerDecorations(
166 ::std::string& decorationLabel,
168 ::DimensionType dimensionID,
169 ::MapDecoration::Type& type
172 MCAPI ::std::shared_ptr<::MapItemTrackedActor>
173 addTrackedMapEntity(
::Actor& entity, ::MapDecoration::Type decorationType);
175 MCAPI
void checkNeedsResampling();
177 MCAPI ::std::unique_ptr<::Packet> getFullDataPacket()
const;
179 MCAPI ::std::shared_ptr<::MapItemTrackedActor> getTrackedMapEntity(
::Actor& entity);
181 MCAPI ::std::unique_ptr<::Packet> getUpdatePacket(
::Level&,
::BlockPos const& pos)
const;
185 MCAPI_C
void replaceDecorations(
186 ::std::vector<::std::shared_ptr<::MapDecoration>> decorations,
187 ::std::vector<::MapItemTrackedActor::UniqueId>
const& uniqueIds
196 MCAPI
void setOrigin(
199 ::DimensionType dimension,