LeviLamina
Loading...
Searching...
No Matches
MapDataManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/AutomaticID.h"
7#include "mc/deps/core/utility/NonOwnerPointer.h"
8#include "mc/deps/core/utility/pub_sub/Subscription.h"
9
10// auto generated forward declare list
11// clang-format off
12class BlockPos;
13class Dimension;
18class LevelStorage;
20class PacketSender;
21struct ActorUniqueID;
22// clang-format on
23
24class MapDataManager {
25public:
26 // member variables
27 // NOLINTBEGIN
28 ::ll::TypedStorage<8, 8, ::DimensionManager&> mDimensionManager;
29 ::ll::TypedStorage<8, 8, ::LevelStorage*> mLevelStorage;
30 ::ll::TypedStorage<8, 8, ::gsl::not_null<::std::unique_ptr<::IMapDataManagerOptions>>> mMapDataManagerOptions;
31 ::ll::TypedStorage<8, 64, ::std::function<::ActorUniqueID()>> mGetNewUniqueID;
32 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mOnSaveLevelData;
33 ::ll::TypedStorage<8, 64, ::std::unordered_map<::ActorUniqueID, ::std::unique_ptr<::MapItemSavedData>>> mMapData;
34 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::PacketSender>> mPacketSender;
35 // NOLINTEND
36
37public:
38 // prevent constructor by default
39 MapDataManager& operator=(MapDataManager const&);
40 MapDataManager(MapDataManager const&);
41 MapDataManager();
42
43public:
44 // virtual functions
45 // NOLINTBEGIN
46 virtual ~MapDataManager();
47
48 virtual void registerOnGameplayUserAddedSubscription(::IGameplayUserManagerConnector&);
49
50 virtual ::MapItemSavedData& createMapSavedData(::ActorUniqueID const& uuid);
51
52 virtual void requestMapInfo(::ActorUniqueID const uuid, bool forceUpdate);
53
54 virtual void _copyAndLockMap(::ActorUniqueID const originalMapUuid, ::ActorUniqueID const newMapUuid);
55 // NOLINTEND
56
57public:
58 // member functions
59 // NOLINTBEGIN
60 MCAPI MapDataManager(
61 ::DimensionManager& dimensionManager,
62 ::LevelStorage* levelStorage,
63 ::std::unique_ptr<::IMapDataManagerOptions> mapDataManagerOptions,
64 ::std::function<::ActorUniqueID()> getNewUniqueID
65 );
66
67 MCAPI ::MapItemSavedData* _loadMapData(::ActorUniqueID const& uuid);
68
69 MCAPI void _onSaveLevelData(::LevelStorage& levelStorage);
70
71 MCAPI ::MapItemSavedData& createMapSavedData(
72 ::std::vector<::ActorUniqueID> const& mapIds,
73 ::BlockPos const& origin,
74 ::DimensionType dimension,
75 int returnScaleLevel
76 );
77
78 MCAPI ::MapItemSavedData& createMapSavedData(
79 ::ActorUniqueID const& uuid,
80 ::BlockPos const& origin,
81 ::DimensionType dimension,
82 int returnScaleLevel
83 );
84
85 MCAPI ::ActorUniqueID expandMapByID(::ActorUniqueID uuid, bool wasInit);
86
87 MCAPI void registerOnSaveLevelDataSubscription(::ILevelStorageManagerConnector& levelStorageManagerConnector);
88
89 MCAPI void tick();
90 // NOLINTEND
91
92public:
93 // constructor thunks
94 // NOLINTBEGIN
95 MCAPI void* $ctor(
96 ::DimensionManager& dimensionManager,
97 ::LevelStorage* levelStorage,
98 ::std::unique_ptr<::IMapDataManagerOptions> mapDataManagerOptions,
99 ::std::function<::ActorUniqueID()> getNewUniqueID
100 );
101 // NOLINTEND
102
103public:
104 // destructor thunk
105 // NOLINTBEGIN
106 MCAPI void $dtor();
107 // NOLINTEND
108
109public:
110 // virtual function thunks
111 // NOLINTBEGIN
112 MCFOLD void $registerOnGameplayUserAddedSubscription(::IGameplayUserManagerConnector&);
113
114 MCAPI ::MapItemSavedData& $createMapSavedData(::ActorUniqueID const& uuid);
115
116 MCAPI void $requestMapInfo(::ActorUniqueID const uuid, bool forceUpdate);
117
118 MCAPI void $_copyAndLockMap(::ActorUniqueID const originalMapUuid, ::ActorUniqueID const newMapUuid);
119
120
121 // NOLINTEND
122
123public:
124 // vftables
125 // NOLINTBEGIN
126 MCNAPI static void** $vftable();
127 // NOLINTEND
128};
Definition BlockPos.h:19
Definition DimensionManager.h:24
Definition Dimension.h:85
Definition IGameplayUserManagerConnector.h:14
Definition ILevelStorageManagerConnector.h:13
Definition IMapDataManagerOptions.h:10
Definition LevelStorage.h:25
static MCAPI void ** $vftable()
Definition MapItemSavedData.h:33
Definition PacketSender.h:17
Definition ActorUniqueID.h:5