3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/gui/oreui/binding/FacetBase_DEPRECATED.h"
7#include "mc/common/editor/MinimapMarkerType.h"
8#include "mc/common/editor/MinimapTrackingMode.h"
9#include "mc/deps/core/math/Color.h"
10#include "mc/deps/core/math/Vec3.h"
11#include "mc/deps/core/utility/pub_sub/Subscription.h"
17namespace mce {
class UUID; }
22class EditorMinimapFacet :
public ::OreUI::FacetBase_DEPRECATED<::OreUI::EditorMinimapFacet> {
37 ::ll::TypedStorage<4, 4, ::Editor::Services::MinimapMarkerType> mType;
38 ::ll::TypedStorage<8, 32, ::std::string> mIconIdentifier;
39 ::ll::TypedStorage<4, 12, ::Vec3> mPosition;
40 ::ll::TypedStorage<4, 4, float> mRotation;
41 ::ll::TypedStorage<4, 16, ::mce::Color> mColor;
42 ::ll::TypedStorage<8, 32, ::std::string> mLabel;
43 ::ll::TypedStorage<8, 32, ::std::string> mTooltip;
44 ::ll::TypedStorage<1, 1, bool> mClickable;
50 MCAPI static ::std::add_lvalue_reference_t<char const[24]> NAME();
58 ::ll::TypedStorage<4, 4, int> mWidth;
59 ::ll::TypedStorage<4, 4, int> mHeight;
65 MCAPI static ::std::add_lvalue_reference_t<char const[20]> NAME();
73 ::ll::TypedStorage<8, 32, ::std::string> mMapImage;
74 ::ll::TypedStorage<4, 8, ::OreUI::EditorMinimapFacet::MapDimensions> mDimensions;
75 ::ll::TypedStorage<4, 4, ::Editor::Services::MinimapTrackingMode> mTrackingMode;
76 ::ll::TypedStorage<4, 4, float> mViewCenterX;
77 ::ll::TypedStorage<4, 4, float> mViewCenterZ;
78 ::ll::TypedStorage<1, 1, bool> mIsMeMarkerOnMap;
84 MCAPI static ::std::add_lvalue_reference_t<char const[18]> NAME();
92 ::ll::TypedStorage<4, 12, ::Vec3> mWorldPosition;
93 ::ll::TypedStorage<8, 32, ::std::string> mBiomeName;
94 ::ll::TypedStorage<8, 32, ::std::string> mBlockName;
95 ::ll::TypedStorage<1, 1, bool> mValid;
101 MCAPI static ::std::add_lvalue_reference_t<char const[23]> NAME();
108 ::ll::TypedStorage<1, 1, bool> mIsDirty;
109 ::ll::TypedStorage<8, 8, ::Editor::Services::EditorMinimapServiceProvider*> mMinimapService;
110 ::ll::TypedStorage<8, 8, ::Editor::ServiceProviderCollection*> mServices;
111 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::OreUI::EditorMinimapFacet::MinimapData>> mMinimaps;
115 ::std::unordered_map<::std::string, ::std::vector<::OreUI::EditorMinimapFacet::MinimapOreUIMarkerData>>>
117 ::ll::TypedStorage<8, 24, ::std::vector<::OreUI::EditorMinimapFacet::MinimapOreUIMarkerData>> mGlobalMarkers;
118 ::ll::TypedStorage<8, 64, ::std::unordered_map<::std::string, ::OreUI::EditorMinimapFacet::MinimapData>>
123 ::std::unordered_map<::std::string, ::std::vector<::OreUI::EditorMinimapFacet::MinimapOreUIMarkerData>>>
125 ::ll::TypedStorage<8, 24, ::std::vector<::OreUI::EditorMinimapFacet::MinimapOreUIMarkerData>>
126 mGlobalMarkersSnapshot;
127 ::ll::TypedStorage<8, 64, ::std::unordered_set<::std::string>> mVisibleMinimapUIs;
128 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mMinimapDataChangedSub;
129 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mMarkersChangedSub;
130 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mMeMarkerChangedSub;
135 EditorMinimapFacet();
140 virtual ~EditorMinimapFacet() =
default;
142 virtual bool update() ;
148 MCAPI
explicit EditorMinimapFacet(::Editor::ServiceProviderCollection* services);
150 MCAPI
void _handleMarkersChanged(::mce::UUID
const& minimapId);
152 MCAPI
void _handleMeMarkerChanged();
154 MCAPI
void _handleMinimapDataChanged(::mce::UUID
const& minimapId);
156 MCAPI ::std::vector<::OreUI::EditorMinimapFacet::MinimapOreUIMarkerData>
const& getGlobalMarkers();
159 unordered_map<::std::string, ::std::vector<::OreUI::EditorMinimapFacet::MinimapOreUIMarkerData>>
const&
162 MCFOLD ::std::unordered_map<::std::string, ::OreUI::EditorMinimapFacet::MinimapData>
const& getMinimaps();
164 MCAPI ::OreUI::EditorMinimapFacet::MinimapHoverInfo
165 queryMinimapPosition(::std::string
const& minimapId,
float worldX,
float worldZ);
167 MCAPI
void registerMinimapUI(::std::string
const& mapId);
169 MCAPI
void unregisterMinimapUI(::std::string
const& mapId);
175 MCAPI static ::std::add_lvalue_reference_t<char const[]> NAME();
181 MCAPI
void* $ctor(::Editor::ServiceProviderCollection* services);
187 MCAPI
bool $update();
Definition ServiceProviderCollection.h:7
Definition EditorMinimapServiceProvider.h:28
Definition EditorMinimapFacet.h:7
Definition EditorMinimapFacet.h:20
Definition EditorMinimapFacet.h:24
Definition EditorMinimapFacet.h:22
Definition EditorMinimapFacet.h:18