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> mEducationOid;
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
74public:
75 // member functions
76 // NOLINTBEGIN
77 MCAPI LevelSummary();
78
79 MCAPI LevelSummary(::LevelSummary const&);
80
81 MCAPI LevelSummary(
82 ::std::string const& levelId,
83 ::LevelData const& levelData,
84 ::Core::Path const& levelDirectory,
85 ::Core::Path const& levelInfoDirectory,
86 bool isBetaRetailLevel
87 );
88
89 MCAPI LevelSummary(
90 ::std::string const& id,
91 ::std::string const& name,
92 int64 lastSaved,
93 ::GameType gameType,
94 bool isHardcore,
95 bool playerHasDied,
96 int time,
97 bool showDaysPlayed,
98 ::SharedTypes::Legacy::Difficulty gameDifficulty,
99 ::LevelSeed64 seed,
100 int npv,
101 uint64 sizeOnDisk,
102 bool confirmedPlatformLockedContent,
103 bool isMultiplayerEnabled,
104 bool lanBroadcastIntent,
105 ::Social::GamePublishSetting xblBroadcastIntent,
106 bool commandsEnabled,
107 ::EducationEditionOffer eduOffer,
108 ::GameVersion const& lastLoadedWithGameVersion,
109 ::GameVersion const& minCompatibleClientVersion,
110 ::StorageVersion storageVersion,
111 ::Core::Path const& path,
112 ::ContentIdentity const& premiumContentIdentity,
113 ::std::string const& educationOid,
114 bool isSingleUseWorld,
115 ::EduSharedUriResource const& eduSharedUriResource,
116 ::Experiments const& experiments,
117 ::BaseGameVersion const& baseGameVersion,
118 ::Editor::WorldType editorWorldType,
119 bool uncompleteWorldFileOnDisk,
120 ::std::optional<::CloudSaveLevelInfo> cloudSaveInfo
121 );
122
123 MCAPI ::std::optional<::Core::PathBuffer<::std::string>> _getScreenshotIconPath(::Core::Path const& worldDirectory);
124
125 MCAPI void _initializeWorldIconPath(::Core::Path const& directory);
126
127#ifdef LL_PLAT_C
128 MCAPI bool cloudSaveForWorldIsEnabled() const;
129
130 MCAPI bool isEditionCompatible() const;
131
132 MCAPI bool isVersionCompatible() const;
133#endif
134
135 MCAPI ::LevelSummary& operator=(::LevelSummary const&);
136
137#ifdef LL_PLAT_C
138 MCAPI bool operator==(::LevelSummary const& rhs) const;
139
140 MCAPI ::LevelSummary& setId(::std::string Id);
141#endif
142
143 MCAPI ::LevelSummary& setName(::std::string Name);
144
145 MCAPI ~LevelSummary();
146 // NOLINTEND
147
148public:
149 // static functions
150 // NOLINTBEGIN
151#ifdef LL_PLAT_C
152 MCAPI static ::Core::PathBuffer<::std::string>
153 buildScreenshotIconPath(::Core::Path const& worldDirectory, ::Core::Path const& previousScreenshotIconPath);
154#endif
155 // NOLINTEND
156
157public:
158 // static variables
159 // NOLINTBEGIN
160 MCAPI static ::Core::PathBuffer<::std::string> const& CUSTOM_ICON_FILENAME();
161
162 MCAPI static ::std::string const& DEFAULT_EDU_CLOUD_WORLD_ICON_FILENAME();
163
164 MCAPI static ::std::string const& DEFAULT_WORLD_ICON_FILENAME();
165
166 MCAPI static ::std::string const& INVALID_LEVEL_ID();
167
168 MCAPI static ::std::string const& SCREENSHOT_WORLD_ICON_FILENAME_EXTENSION();
169
170 MCAPI static ::std::string const& SCREENSHOT_WORLD_ICON_FILENAME_PREFIX();
171
172 MCAPI static ::Core::PathBuffer<::std::string> const& WORLD_ICON_FILENAME();
173 // NOLINTEND
174
175public:
176 // constructor thunks
177 // NOLINTBEGIN
178 MCAPI void* $ctor();
179
180 MCAPI void* $ctor(::LevelSummary const&);
181
182 MCAPI void* $ctor(
183 ::std::string const& levelId,
184 ::LevelData const& levelData,
185 ::Core::Path const& levelDirectory,
186 ::Core::Path const& levelInfoDirectory,
187 bool isBetaRetailLevel
188 );
189
190 MCAPI void* $ctor(
191 ::std::string const& id,
192 ::std::string const& name,
193 int64 lastSaved,
194 ::GameType gameType,
195 bool isHardcore,
196 bool playerHasDied,
197 int time,
198 bool showDaysPlayed,
199 ::SharedTypes::Legacy::Difficulty gameDifficulty,
200 ::LevelSeed64 seed,
201 int npv,
202 uint64 sizeOnDisk,
203 bool confirmedPlatformLockedContent,
204 bool isMultiplayerEnabled,
205 bool lanBroadcastIntent,
206 ::Social::GamePublishSetting xblBroadcastIntent,
207 bool commandsEnabled,
208 ::EducationEditionOffer eduOffer,
209 ::GameVersion const& lastLoadedWithGameVersion,
210 ::GameVersion const& minCompatibleClientVersion,
211 ::StorageVersion storageVersion,
212 ::Core::Path const& path,
213 ::ContentIdentity const& premiumContentIdentity,
214 ::std::string const& educationOid,
215 bool isSingleUseWorld,
216 ::EduSharedUriResource const& eduSharedUriResource,
217 ::Experiments const& experiments,
218 ::BaseGameVersion const& baseGameVersion,
219 ::Editor::WorldType editorWorldType,
220 bool uncompleteWorldFileOnDisk,
221 ::std::optional<::CloudSaveLevelInfo> cloudSaveInfo
222 );
223 // NOLINTEND
224
225public:
226 // destructor thunk
227 // NOLINTBEGIN
228 MCAPI void $dtor();
229 // NOLINTEND
230};
Definition BaseGameVersion.h:8
Definition ContentIdentity.h:8
Definition Path.h:17
Definition Experiments.h:14
Definition GameVersion.h:10
Definition LevelData.h:52
Definition LevelSeed64.h:5
Definition EduSharedUriResource.h:10