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
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&);
42
43public:
44 // virtual functions
45 // NOLINTBEGIN
46 // vIndex: 0
47 virtual ~MapDataManager();
48
49 // vIndex: 1
50 virtual void registerOnGameplayUserAddedSubscription(::IGameplayUserManagerConnector&);
51
52 // vIndex: 2
53 virtual ::MapItemSavedData& createMapSavedData(::ActorUniqueID const& uuid);
54
55 // vIndex: 3
56 virtual void requestMapInfo(::ActorUniqueID const uuid, bool forceUpdate);
57
58 // vIndex: 4
59 virtual void _copyAndLockMap(::ActorUniqueID const originalMapUuid, ::ActorUniqueID const newMapUuid);
60 // NOLINTEND
61
62public:
63 // member functions
64 // NOLINTBEGIN
65 MCAPI MapDataManager(
66 ::DimensionManager& dimensionManager,
67 ::LevelStorage* levelStorage,
68 ::std::unique_ptr<::IMapDataManagerOptions> mapDataManagerOptions,
69 ::std::function<::ActorUniqueID()> getNewUniqueID
70 );
71
72 MCAPI ::MapItemSavedData* _loadMapData(::ActorUniqueID const& uuid);
73
74 MCAPI void _onSaveLevelData(::LevelStorage& levelStorage);
75
76 MCAPI bool copyAndLockMap(::ActorUniqueID originalMapUuid, ::ActorUniqueID newMapUuid);
77
78 MCAPI ::MapItemSavedData& createMapSavedData(
79 ::std::vector<::ActorUniqueID> const& mapIds,
80 ::BlockPos const& origin,
81 ::DimensionType dimension,
82 int returnScaleLevel
83 );
84
85 MCAPI ::MapItemSavedData& createMapSavedData(
86 ::ActorUniqueID const& uuid,
87 ::BlockPos const& origin,
88 ::DimensionType dimension,
89 int returnScaleLevel
90 );
91
92 MCAPI ::ActorUniqueID expandMapByID(::ActorUniqueID uuid, bool wasInit);
93
94 MCAPI ::MapItemSavedData* getMapSavedData(::ActorUniqueID uuid);
95
96 MCAPI void registerOnSaveLevelDataSubscription(::ILevelStorageManagerConnector& levelStorageManagerConnector);
97
98 MCAPI void tick();
99 // NOLINTEND
100
101public:
102 // constructor thunks
103 // NOLINTBEGIN
104 MCAPI void* $ctor(
105 ::DimensionManager& dimensionManager,
106 ::LevelStorage* levelStorage,
107 ::std::unique_ptr<::IMapDataManagerOptions> mapDataManagerOptions,
108 ::std::function<::ActorUniqueID()> getNewUniqueID
109 );
110 // NOLINTEND
111
112public:
113 // destructor thunk
114 // NOLINTBEGIN
115 MCAPI void $dtor();
116 // NOLINTEND
117
118public:
119 // virtual function thunks
120 // NOLINTBEGIN
121 MCFOLD void $registerOnGameplayUserAddedSubscription(::IGameplayUserManagerConnector&);
122
123 MCAPI ::MapItemSavedData& $createMapSavedData(::ActorUniqueID const& uuid);
124
125 MCAPI void $requestMapInfo(::ActorUniqueID const uuid, bool forceUpdate);
126
127 MCAPI void $_copyAndLockMap(::ActorUniqueID const originalMapUuid, ::ActorUniqueID const newMapUuid);
128 // NOLINTEND
129
130public:
131 // vftables
132 // NOLINTBEGIN
133 MCNAPI static void** $vftable();
134 // NOLINTEND
135};
Definition AutomaticID.h:6
Definition BlockPos.h:18
Definition DimensionManager.h:24
Definition Dimension.h:83
Definition IGameplayUserManagerConnector.h:14
Definition ILevelStorageManagerConnector.h:13
Definition IMapDataManagerOptions.h:10
Definition LevelStorage.h:25
Definition MapDataManager.h:24
static MCAPI void ** $vftable()
Definition MapItemSavedData.h:33
Definition PacketSender.h:17
Definition ActorUniqueID.h:5