LeviLamina
Loading...
Searching...
No Matches
LevelSummary.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/GameVersion.h"
7#include "mc/common/editor/WorldType.h"
8#include "mc/deps/core/file/PathBuffer.h"
9#include "mc/deps/core/resource/ContentIdentity.h"
10#include "mc/deps/shared_types/legacy/Difficulty.h"
11#include "mc/network/GamePublishSetting.h"
12#include "mc/options/EduSharedUriResource.h"
13#include "mc/options/EducationEditionOffer.h"
14#include "mc/options/EducationEditionOfferValue.h"
15#include "mc/util/BaseGameVersion.h"
16#include "mc/world/level/GameType.h"
17#include "mc/world/level/LevelSeed64.h"
18#include "mc/world/level/storage/CloudSaveLevelInfo.h"
19#include "mc/world/level/storage/Experiments.h"
20#include "mc/world/level/storage/StorageVersion.h"
21#include "mc/world/level/storage/WorldIconType.h"
22#include "mc/world/level/storage/edu_cloud/WorldSyncState.h"
23
24// auto generated forward declare list
25// clang-format off
26class LevelData;
27namespace Core { class Path; }
28// clang-format on
29
30struct LevelSummary {
31public:
32 // member variables
33 // NOLINTBEGIN
34 ::ll::TypedStorage<8, 32, ::std::string> mId;
35 ::ll::TypedStorage<8, 32, ::std::string> mName;
36 ::ll::TypedStorage<8, 8, int64> mLastSaved;
37 ::ll::TypedStorage<4, 4, ::GameType> mGameType;
38 ::ll::TypedStorage<1, 1, bool> mIsHardcore;
39 ::ll::TypedStorage<1, 1, bool> mPlayerHasDied;
40 ::ll::TypedStorage<4, 4, int> mTime;
41 ::ll::TypedStorage<1, 1, bool> mShowDaysPlayed;
42 ::ll::TypedStorage<4, 4, ::SharedTypes::Legacy::Difficulty> mGameDifficulty;
43 ::ll::TypedStorage<8, 8, ::LevelSeed64> mSeed;
44 ::ll::TypedStorage<4, 4, int> mNetworkProtocolVersion;
45 ::ll::TypedStorage<8, 8, uint64> mSizeOnDisk;
46 ::ll::TypedStorage<1, 1, bool> mConfirmedPlatformLockedContent;
47 ::ll::TypedStorage<1, 1, bool> mIsMultiplayerEnabled;
48 ::ll::TypedStorage<1, 1, bool> mLANBroadcastIntent;
49 ::ll::TypedStorage<4, 4, ::Social::GamePublishSetting> mXBLBroadcastIntent;
50 ::ll::TypedStorage<1, 1, bool> mCommandsEnabled;
51 ::ll::TypedStorage<4, 4, ::EducationEditionOfferValue> mEducationEditionOffer;
52 ::ll::TypedStorage<8, 56, ::GameVersion> mLastLoadedGameVersion;
53 ::ll::TypedStorage<8, 56, ::GameVersion> mMinCompatibleClientVersion;
54 ::ll::TypedStorage<4, 4, ::StorageVersion> mStorageVersion;
55 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string>> mWorldDirectoryPath;
56 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string>> mWorldIconPath;
57 ::ll::TypedStorage<8, 32, ::Core::PathBuffer<::std::string>> mWorldIconTargetPath;
58 ::ll::TypedStorage<4, 4, ::WorldIconType> mWorldIconType;
59 ::ll::TypedStorage<8, 24, ::ContentIdentity> mPremiumTemplateContentIdentity;
60 ::ll::TypedStorage<8, 32, ::std::string> mMessUserId;
61 ::ll::TypedStorage<8, 72, ::Experiments> mExperiments;
62 ::ll::TypedStorage<8, 32, ::BaseGameVersion> mBaseGameVersion;
63 ::ll::TypedStorage<1, 1, bool> mIsSingleUseWorld;
64 ::ll::TypedStorage<1, 1, bool> mIsBetaRetailLevel;
65 ::ll::TypedStorage<8, 64, ::EduSharedUriResource> mEduSharedUriResource;
66 ::ll::TypedStorage<4, 4, ::Editor::WorldType> mEditorWorldType;
67 ::ll::TypedStorage<8, 176, ::std::optional<::CloudSaveLevelInfo>> mCloudSaveInfo;
68 ::ll::TypedStorage<4, 4, ::EduCloud::WorldSyncState> mEduCloudWorldSyncState;
69 ::ll::TypedStorage<1, 1, bool> mHasUncompleteWorldFileOnDisk;
70 ::ll::TypedStorage<8, 32, ::std::string> mEducationCreatorId;
71 ::ll::TypedStorage<8, 32, ::std::string> mEducationCreatorWorldId;
72 // NOLINTEND
73
74#ifdef LL_PLAT_S
75public:
76 // prevent constructor by default
77 LevelSummary& operator=(LevelSummary const&);
78
79#else // LL_PLAT_C
80#endif
81public:
82 // member functions
83 // NOLINTBEGIN
84 MCAPI LevelSummary();
85
86 MCAPI LevelSummary(::LevelSummary const&);
87
88 MCAPI LevelSummary(
89 ::std::string const& levelId,
90 ::LevelData const& levelData,
91 ::Core::Path const& levelDirectory,
92 ::Core::Path const& levelInfoDirectory,
93 bool isBetaRetailLevel
94 );
95
96#ifdef LL_PLAT_C
97 MCAPI LevelSummary(
98 ::std::string const& id,
99 ::std::string const& name,
100 int64 lastSaved,
101 ::GameType gameType,
102 bool isHardcore,
103 bool playerHasDied,
104 int time,
105 bool showDaysPlayed,
106 ::SharedTypes::Legacy::Difficulty gameDifficulty,
107 ::LevelSeed64 seed,
108 int npv,
109 uint64 sizeOnDisk,
110 bool confirmedPlatformLockedContent,
111 bool isMultiplayerEnabled,
112 bool lanBroadcastIntent,
113 ::Social::GamePublishSetting xblBroadcastIntent,
114 bool commandsEnabled,
115 ::EducationEditionOffer eduOffer,
116 ::GameVersion const& lastLoadedWithGameVersion,
117 ::GameVersion const& minCompatibleClientVersion,
118 ::StorageVersion storageVersion,
119 ::Core::Path const& path,
120 ::ContentIdentity const& premiumContentIdentity,
121 ::std::string const& messUserId,
122 bool isSingleUseWorld,
123 ::EduSharedUriResource const& eduSharedUriResource,
124 ::Experiments const& experiments,
125 ::BaseGameVersion const& baseGameVersion,
126 ::Editor::WorldType editorWorldType,
127 bool uncompleteWorldFileOnDisk,
128 ::std::optional<::CloudSaveLevelInfo> cloudSaveInfo
129 );
130
131 MCAPI void _initializeWorldIconPath(::Core::Path const& directory);
132#endif
133
134#ifdef LL_PLAT_S
135 MCAPI void _initializeWorldIconPath(::Core::Path const& directory);
136#endif
137
138#ifdef LL_PLAT_C
139 MCAPI ::std::string getEducationCreatorId() const;
140
141 MCAPI ::std::string getEducationCreatorWorldId() const;
142
143 MCAPI bool hasCloudSaveAssociation() const;
144
145 MCAPI bool isEditionCompatible() const;
146
147 MCAPI bool isGameVersionCompatible() const;
148
149 MCAPI ::LevelSummary& operator=(::LevelSummary const&);
150
151 MCAPI bool operator==(::LevelSummary const& rhs) const;
152
153 MCAPI void reinitializeWorldSize(::Core::Path const& directory);
154
155 MCAPI void setCloudSave(::CloudSaveLevelInfo const& value);
156
157 MCAPI ::LevelSummary& setId(::std::string Id);
158#endif
159
160 MCAPI ::LevelSummary& setName(::std::string Name);
161
162 MCAPI ~LevelSummary();
163 // NOLINTEND
164
165public:
166 // static functions
167 // NOLINTBEGIN
168#ifdef LL_PLAT_C
169 MCAPI static ::Core::PathBuffer<::std::string>
170 buildScreenshotIconPath(::Core::Path const& worldDirectory, ::Core::Path const& previousScreenshotIconPath);
171#endif
172 // NOLINTEND
173
174public:
175 // static variables
176 // NOLINTBEGIN
177 MCAPI static ::Core::PathBuffer<::std::string> const& CUSTOM_ICON_FILENAME();
178
179 MCAPI static ::std::string const& DEFAULT_EDU_CLOUD_WORLD_ICON_FILENAME();
180
181 MCAPI static ::std::string const& DEFAULT_WORLD_ICON_FILENAME();
182
183 MCAPI static ::std::string const& INVALID_LEVEL_ID();
184
185 MCAPI static ::std::string const& SCREENSHOT_WORLD_ICON_FILENAME_EXTENSION();
186
187 MCAPI static ::std::string const& SCREENSHOT_WORLD_ICON_FILENAME_PREFIX();
188
189 MCAPI static ::Core::PathBuffer<::std::string> const& WORLD_ICON_FILENAME();
190 // NOLINTEND
191
192public:
193 // constructor thunks
194 // NOLINTBEGIN
195 MCAPI void* $ctor();
196
197 MCAPI void* $ctor(::LevelSummary const&);
198
199 MCAPI void* $ctor(
200 ::std::string const& levelId,
201 ::LevelData const& levelData,
202 ::Core::Path const& levelDirectory,
203 ::Core::Path const& levelInfoDirectory,
204 bool isBetaRetailLevel
205 );
206
207#ifdef LL_PLAT_C
208 MCAPI void* $ctor(
209 ::std::string const& id,
210 ::std::string const& name,
211 int64 lastSaved,
212 ::GameType gameType,
213 bool isHardcore,
214 bool playerHasDied,
215 int time,
216 bool showDaysPlayed,
217 ::SharedTypes::Legacy::Difficulty gameDifficulty,
218 ::LevelSeed64 seed,
219 int npv,
220 uint64 sizeOnDisk,
221 bool confirmedPlatformLockedContent,
222 bool isMultiplayerEnabled,
223 bool lanBroadcastIntent,
224 ::Social::GamePublishSetting xblBroadcastIntent,
225 bool commandsEnabled,
226 ::EducationEditionOffer eduOffer,
227 ::GameVersion const& lastLoadedWithGameVersion,
228 ::GameVersion const& minCompatibleClientVersion,
229 ::StorageVersion storageVersion,
230 ::Core::Path const& path,
231 ::ContentIdentity const& premiumContentIdentity,
232 ::std::string const& messUserId,
233 bool isSingleUseWorld,
234 ::EduSharedUriResource const& eduSharedUriResource,
235 ::Experiments const& experiments,
236 ::BaseGameVersion const& baseGameVersion,
237 ::Editor::WorldType editorWorldType,
238 bool uncompleteWorldFileOnDisk,
239 ::std::optional<::CloudSaveLevelInfo> cloudSaveInfo
240 );
241#endif
242 // NOLINTEND
243
244public:
245 // destructor thunk
246 // NOLINTBEGIN
247 MCAPI void $dtor();
248 // NOLINTEND
249};
Definition BaseGameVersion.h:8
Definition CloudSaveLevelInfo.h:10
Definition ContentIdentity.h:8
Definition Path.h:11
Definition Experiments.h:14
Definition GameVersion.h:10
Definition LevelData.h:55
Definition LevelSeed64.h:5
Definition EduSharedUriResource.h:10