LeviLamina
Loading...
Searching...
No Matches
LevelSettings.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/common/editor/WorldType.h"
7#include "mc/config/ChatRestrictionLevel.h"
8#include "mc/deps/json/Value.h"
9#include "mc/deps/shared_types/legacy/Difficulty.h"
10#include "mc/network/GamePublishSetting.h"
11#include "mc/options/EduSharedUriResource.h"
12#include "mc/options/EducationEditionOffer.h"
13#include "mc/options/EducationEditionOfferValue.h"
14#include "mc/server/commands/PlayerPermissionLevel.h"
15#include "mc/util/BaseGameVersion.h"
16#include "mc/world/actor/player/PermissionsHandler.h"
17#include "mc/world/level/BlockPos.h"
18#include "mc/world/level/DaylightCycle.h"
19#include "mc/world/level/EducationLevelSettings.h"
20#include "mc/world/level/GameType.h"
21#include "mc/world/level/GeneratorType.h"
22#include "mc/world/level/LevelSeed64.h"
23#include "mc/world/level/NetherWorldType.h"
24#include "mc/world/level/SpawnSettings.h"
25#include "mc/world/level/WorldVersion.h"
26#include "mc/world/level/storage/CloudSaveLevelInfo.h"
27#include "mc/world/level/storage/ExperimentStorage.h"
28#include "mc/world/level/storage/GameRules.h"
29
30// auto generated forward declare list
31// clang-format off
32class Experiments;
33class LevelData;
34struct DimensionType;
35struct LevelSummary;
36struct PackInstanceId;
37namespace mce { class UUID; }
38// clang-format on
39
40class LevelSettings {
41public:
42 // member variables
43 // NOLINTBEGIN
44 ::ll::TypedStorage<8, 8, ::LevelSeed64> mSeed;
45 ::ll::TypedStorage<4, 4, ::GameType> mGameType;
46 ::ll::TypedStorage<1, 1, bool> mIsHardcore;
47 ::ll::TypedStorage<4, 4, ::SharedTypes::Legacy::Difficulty> mGameDifficulty;
48 ::ll::TypedStorage<1, 1, bool> mForceGameType;
49 ::ll::TypedStorage<4, 4, ::GeneratorType> mGenerator;
50 ::ll::TypedStorage<8, 16, ::Json::Value> mFlatWorldOptions;
51 ::ll::TypedStorage<1, 1, ::WorldVersion> mWorldVersion;
52 ::ll::TypedStorage<1, 1, ::NetherWorldType> mNetherType;
53 ::ll::TypedStorage<8, 48, ::SpawnSettings> mSpawnSettings;
54 ::ll::TypedStorage<1, 1, bool> mAchievementsDisabled;
55 ::ll::TypedStorage<4, 4, ::Editor::WorldType> mEditorWorldType;
56 ::ll::TypedStorage<1, 1, bool> mIsCreatedInEditor;
57 ::ll::TypedStorage<1, 1, bool> mIsExportedFromEditor;
58 ::ll::TypedStorage<4, 4, int> mTime;
59 ::ll::TypedStorage<4, 4, ::EducationEditionOfferValue> mEducationEditionOffer;
60 ::ll::TypedStorage<1, 1, bool> mEducationFeaturesEnabled;
61 ::ll::TypedStorage<1, 1, bool> mImmutableWorld;
62 ::ll::TypedStorage<4, 4, float> mRainLevel;
63 ::ll::TypedStorage<4, 4, float> mLightningLevel;
64 ::ll::TypedStorage<1, 1, bool> mConfirmedPlatformLockedContent;
65 ::ll::TypedStorage<1, 1, bool> mMultiplayerGameIntent;
66 ::ll::TypedStorage<1, 1, bool> mLANBroadcastIntent;
67 ::ll::TypedStorage<4, 4, ::Social::GamePublishSetting> mXBLBroadcastIntent;
68 ::ll::TypedStorage<4, 4, ::Social::GamePublishSetting> mPlatformBroadcastIntent;
69 ::ll::TypedStorage<1, 1, ::DaylightCycle> mDaylightCycle;
70 ::ll::TypedStorage<1, 1, bool> mDisablePlayerInteractions;
71 ::ll::TypedStorage<1, 1, bool> mCheatsEnabled;
72 ::ll::TypedStorage<1, 1, bool> mAdventureModeOverridesEnabled;
73 ::ll::TypedStorage<1, 1, bool> mCommandsEnabled;
74 ::ll::TypedStorage<1, 1, bool> mTexturePacksRequired;
75 ::ll::TypedStorage<1, 1, bool> mHasLockedBehaviorPack;
76 ::ll::TypedStorage<1, 1, bool> mHasLockedResourcePack;
77 ::ll::TypedStorage<1, 1, bool> mIsFromLockedTemplate;
78 ::ll::TypedStorage<1, 1, bool> mIsRandomSeedAllowed;
79 ::ll::TypedStorage<1, 1, bool> mUseMsaGamertagsOnly;
80 ::ll::TypedStorage<1, 1, bool> mOverrideSettings;
81 ::ll::TypedStorage<1, 1, bool> mBonusChestEnabled;
82 ::ll::TypedStorage<1, 1, bool> mStartWithMapEnabled;
83 ::ll::TypedStorage<4, 4, int> mServerChunkTickRange;
84 ::ll::TypedStorage<1, 1, bool> mIsFromWorldTemplate;
85 ::ll::TypedStorage<1, 1, bool> mIsWorldTemplateOptionLocked;
86 ::ll::TypedStorage<1, 1, bool> mSpawnV1Villagers;
87 ::ll::TypedStorage<1, 1, bool> mPersonaDisabled;
88 ::ll::TypedStorage<1, 1, bool> mCustomSkinsDisabled;
89 ::ll::TypedStorage<1, 1, bool> mEmoteChatMuted;
90 ::ll::TypedStorage<1, 1, bool> mAllowListActive;
91 ::ll::TypedStorage<4, 4, int> mLimitedWorldWidth;
92 ::ll::TypedStorage<4, 4, int> mLimitedWorldDepth;
93 ::ll::TypedStorage<8, 24, ::PermissionsHandler> mDefaultPermissions;
94 ::ll::TypedStorage<4, 12, ::BlockPos> mDefaultSpawn;
95 ::ll::TypedStorage<8, 24, ::std::vector<::PackInstanceId>> mNewWorldBehaviorPackIdentities;
96 ::ll::TypedStorage<8, 24, ::std::vector<::PackInstanceId>> mNewWorldResourcePackIdentities;
97 ::ll::TypedStorage<8, 192, ::GameRules> mGameRules;
98 ::ll::TypedStorage<8, 72, ::ExperimentStorage> mExperiments;
99 ::ll::TypedStorage<8, 32, ::BaseGameVersion> mBaseGameVersion;
100 ::ll::TypedStorage<8, 32, ::std::string> mEducationProductID;
101 ::ll::TypedStorage<8, 32, ::std::string> mEducationCreatorID;
102 ::ll::TypedStorage<8, 32, ::std::string> mEducationCreatorWorldID;
103 ::ll::TypedStorage<8, 32, ::std::string> mEducationReferrerID;
104 ::ll::TypedStorage<8, 32, ::std::string> mBiomeOverride;
105 ::ll::TypedStorage<8, 64, ::EduSharedUriResource> mEduSharedUriResource;
106 ::ll::TypedStorage<1, 1, ::ChatRestrictionLevel> mChatRestrictionLevel;
107 ::ll::TypedStorage<8, 328, ::std::optional<::EducationLevelSettings>> mEducationLevelSettings;
108 ::ll::TypedStorage<1, 2, ::std::optional<bool>> mOverrideForceExperimentalGameplayFlag;
109 ::ll::TypedStorage<8, 176, ::std::optional<::CloudSaveLevelInfo>> mCloudSaveInfo;
110 ::ll::TypedStorage<8, 24, ::std::vector<::mce::UUID>> mExcludedScriptModules;
111 // NOLINTEND
112
113public:
114 // prevent constructor by default
115 LevelSettings& operator=(LevelSettings const&);
116
117public:
118 // member functions
119 // NOLINTBEGIN
120 MCAPI LevelSettings();
121
122 MCAPI LevelSettings(::LevelSettings&&);
123
124 MCAPI LevelSettings(::LevelSettings const&);
125
126#ifdef LL_PLAT_C
127 MCAPI explicit LevelSettings(::LevelSummary const& summary);
128#endif
129
130 MCAPI LevelSettings(::LevelData const& data, ::DimensionType dimension);
131
132 MCAPI bool achievementsWillBeDisabledOnLoad() const;
133
134#ifdef LL_PLAT_S
135 MCAPI ::LevelSettings& addExcludedScriptModule(::mce::UUID moduleUUID);
136#endif
137
138 MCAPI bool cloudSaveForWorldIsEnabled() const;
139
140 MCFOLD bool educationFeaturesEnabled() const;
141
142 MCFOLD ::std::string const& educationProductID() const;
143
144 MCFOLD bool forceGameType() const;
145
146 MCFOLD bool getAdventureModeOverridesEnabled() const;
147
148 MCAPI bool getAllowListActive() const;
149
150 MCFOLD ::BaseGameVersion const& getBaseGameVersion() const;
151
152 MCFOLD ::std::string const& getBiomeOverride() const;
153
154 MCFOLD ::ChatRestrictionLevel getChatRestrictionLevel() const;
155
156 MCAPI ::CloudSaveLevelInfo const& getCloudSaveInfo() const;
157
158 MCAPI bool getCustomSkinsDisabled() const;
159
160 MCAPI ::DaylightCycle getDaylightCycle() const;
161
162 MCFOLD ::PermissionsHandler const& getDefaultPermissions() const;
163
164 MCFOLD ::BlockPos const& getDefaultSpawn() const;
165
166 MCAPI bool getDisablePlayerInteractions() const;
167
168 MCFOLD ::Editor::WorldType getEditorWorldType() const;
169
170 MCAPI ::EduSharedUriResource const& getEduSharedUriResource() const;
171
172 MCFOLD ::std::string const& getEducationCreatorID() const;
173
174 MCFOLD ::std::string const& getEducationCreatorWorldID() const;
175
176 MCFOLD ::EducationEditionOffer getEducationEditionOffer() const;
177
178 MCFOLD ::std::optional<::EducationLevelSettings> const& getEducationLevelSettings() const;
179
180 MCFOLD ::std::string const& getEducationReferrerID() const;
181
182 MCAPI bool getEmoteChatMuted() const;
183
184 MCFOLD ::std::vector<::mce::UUID> const& getExcludedScriptModules() const;
185
186 MCFOLD ::Experiments const& getExperiments() const;
187
188 MCFOLD ::Json::Value const& getFlatWorldOptions() const;
189
190 MCFOLD ::SharedTypes::Legacy::Difficulty getGameDifficulty() const;
191
192 MCFOLD ::GameRules const& getGameRules() const;
193
194 MCFOLD ::GameType getGameType() const;
195
196 MCFOLD ::GeneratorType getGenerator() const;
197
198 MCFOLD bool getImmutableWorld() const;
199
200 MCAPI bool getLanBroadcastIntent() const;
201
202 MCAPI float getLightningLevel() const;
203
204 MCFOLD int getLimitedWorldDepth() const;
205
206 MCFOLD int getLimitedWorldWidth() const;
207
208 MCFOLD bool getMultiplayerGameIntent() const;
209
210 MCFOLD ::NetherWorldType getNetherType() const;
211
212 MCFOLD bool getOnlySpawnV1Villagers() const;
213
214 MCAPI bool getPersonaDisabled() const;
215
216 MCFOLD ::Social::GamePublishSetting getPlatformBroadcastIntent() const;
217
218 MCFOLD float getRainLevel() const;
219
220 MCFOLD ::LevelSeed64 getSeed() const;
221
222 MCFOLD uint getServerChunkTickRange() const;
223
224 MCAPI ::SpawnSettings getSpawnSettings() const;
225
226 MCFOLD int getTime() const;
227
228 MCFOLD ::WorldVersion getWorldVersion() const;
229
230 MCAPI ::Social::GamePublishSetting getXBLBroadcastIntent() const;
231
232 MCFOLD bool hasAchievementsDisabled() const;
233
234 MCFOLD bool hasBonusChestEnabled() const;
235
236 MCAPI bool hasCheatsEnabled() const;
237
238 MCFOLD bool hasCommandsEnabled() const;
239
240 MCFOLD bool hasConfirmedPlatformLockedContent() const;
241
242 MCAPI bool hasLockedBehaviorPack() const;
243
244 MCAPI bool hasLockedResourcePack() const;
245
246 MCFOLD bool hasStartWithMapEnabled() const;
247
248 MCFOLD bool isCreatedInEditor() const;
249
250#ifdef LL_PLAT_C
251 MCAPI bool isEditorTestWorld() const;
252#endif
253
254 MCAPI bool isEditorWorld() const;
255
256 MCFOLD bool isExportedFromEditor() const;
257
258 MCAPI bool isFromLockedTemplate() const;
259
260 MCFOLD bool isFromWorldTemplate() const;
261
262 MCFOLD bool isHardcore() const;
263
264 MCAPI bool isRandomSeedAllowed() const;
265
266 MCFOLD bool isTexturepacksRequired() const;
267
268 MCFOLD bool isWorldTemplateOptionLocked() const;
269
270 MCAPI ::LevelSettings& operator=(::LevelSettings&&);
271
272#ifdef LL_PLAT_S
273 MCAPI ::LevelSettings& setAdventureModeOverridesEnabled(bool adventureModeOverridesEnabled);
274
275 MCAPI ::LevelSettings& setAllowListActive(bool active);
276#endif
277
278 MCAPI ::LevelSettings& setBaseGameVersion(::BaseGameVersion const& baseGameVersion);
279
280#ifdef LL_PLAT_C
281 MCAPI ::LevelSettings& setBiomeOverride(::std::string const& biomeName);
282#endif
283
284#ifdef LL_PLAT_S
285 MCAPI ::LevelSettings& setChatRestrictionLevel(::ChatRestrictionLevel chatRestrictionLevel);
286#endif
287
288 MCAPI ::LevelSettings& setCloudSaveInfo(::std::optional<::CloudSaveLevelInfo> cloudSaveInfo);
289
290#ifdef LL_PLAT_S
291 MCAPI ::LevelSettings& setCommandsEnabled(bool commandsEnabled);
292
293 MCAPI ::LevelSettings& setCustomSkinsDisabled(bool val);
294
295 MCAPI ::LevelSettings& setDefaultPlayerPermissions(::PlayerPermissionLevel playerPermissionLevel);
296
297 MCAPI ::LevelSettings& setDifficulty(::SharedTypes::Legacy::Difficulty difficulty);
298#endif
299
300 MCAPI ::LevelSettings& setDisablePlayerInteractions(bool disableInteractions);
301
302 MCAPI ::LevelSettings& setEditorWorldType(::Editor::WorldType editorWorldType);
303
304 MCAPI ::LevelSettings& setEducationCreatorID(::std::string id);
305
306 MCAPI ::LevelSettings& setEducationCreatorWorldID(::std::string id);
307
308#ifdef LL_PLAT_C
309 MCAPI ::LevelSettings& setEducationEditionOffer(::EducationEditionOffer offer);
310#endif
311
312 MCAPI ::LevelSettings& setEducationFeaturesEnabled(bool enabled);
313
314#ifdef LL_PLAT_C
315 MCAPI void setEducationLevelSettings(::EducationLevelSettings settings);
316#endif
317
318 MCAPI ::LevelSettings& setEducationProductID(::std::string id);
319
320 MCAPI ::LevelSettings& setEducationReferrerID(::std::string id);
321
322#ifdef LL_PLAT_S
323 MCAPI ::LevelSettings& setEmoteChatMuted(bool val);
324#endif
325
326 MCAPI ::LevelSettings& setExperiments(::ExperimentStorage const& experiments);
327
328#ifdef LL_PLAT_S
329 MCAPI ::LevelSettings& setForceGameType(bool value);
330
331 MCAPI ::LevelSettings& setGameRules(::GameRules gameRules);
332
333 MCAPI ::LevelSettings& setGameType(::GameType gameType);
334
335 MCAPI ::LevelSettings& setGeneratorType(::GeneratorType generatorType);
336#endif
337
338#ifdef LL_PLAT_C
339 MCAPI ::LevelSettings& setImmutableWorld(bool immutable);
340#endif
341
342#ifdef LL_PLAT_S
343 MCAPI ::LevelSettings& setIsHardcore(bool isHardcore);
344#endif
345
346#ifdef LL_PLAT_C
347 MCAPI ::LevelSettings& setLanBroadcastIntent(bool lanBroadcastIntent);
348
349 MCAPI ::LevelSettings& setMultiplayerGameIntent(bool multiplayerGameIntent);
350
351 MCAPI ::LevelSettings& setNetherType(::NetherWorldType netherType);
352
353 MCAPI void setNewWorldBehaviorPackIdentities(::std::vector<::PackInstanceId> const& identities);
354
355 MCAPI void setNewWorldResourcePackIdentities(::std::vector<::PackInstanceId> const& identities);
356#endif
357
358#ifdef LL_PLAT_S
359 MCAPI void setOnlySpawnV1Villagers(bool spawnV1Villagers);
360
361 MCAPI ::LevelSettings& setOverrideSavedSettings(bool overrideSaved);
362#endif
363
364 MCAPI ::LevelSettings& setPlatformBroadcastIntent(::Social::GamePublishSetting platformBroadcastIntent);
365
366#ifdef LL_PLAT_S
367 MCFOLD ::LevelSettings& setRandomSeed(::LevelSeed64 seed);
368
369 MCAPI ::LevelSettings& setServerChunkTickRange(uint serverChunkTickRange);
370#endif
371
372 MCAPI ::LevelSettings& setSpawnSettings(::SpawnSettings spawnSettings);
373
374#ifdef LL_PLAT_S
375 MCAPI ::LevelSettings& setTexturePackRequired(bool texturePackRequired);
376
377 MCAPI ::LevelSettings& setUseMsaGamertagsOnly(bool useMsaGamertagsOnly);
378#endif
379
380 MCAPI ::LevelSettings& setXblBroadcastIntent(::Social::GamePublishSetting xblBroadcastIntent);
381
382 MCAPI bool shouldOverrideSavedSettings() const;
383
384 MCFOLD bool useMsaGamertagsOnly() const;
385
386 MCAPI ~LevelSettings();
387 // NOLINTEND
388
389public:
390 // static functions
391 // NOLINTBEGIN
392 MCAPI static ::std::optional<::LevelSeed64> parseSeedString(::std::string const& seedInput);
393 // NOLINTEND
394
395public:
396 // constructor thunks
397 // NOLINTBEGIN
398 MCAPI void* $ctor();
399
400 MCAPI void* $ctor(::LevelSettings&&);
401
402 MCAPI void* $ctor(::LevelSettings const&);
403
404#ifdef LL_PLAT_C
405 MCAPI void* $ctor(::LevelSummary const& summary);
406#endif
407
408 MCAPI void* $ctor(::LevelData const& data, ::DimensionType dimension);
409 // NOLINTEND
410
411public:
412 // destructor thunk
413 // NOLINTBEGIN
414 MCAPI void $dtor();
415 // NOLINTEND
416};
Definition BaseGameVersion.h:13
Definition ExperimentStorage.h:5
Definition Experiments.h:14
Definition GameRules.h:24
Definition LevelData.h:55
Definition LevelSeed64.h:5
Definition UUID.h:7
Definition DimensionType.h:5
Definition EducationLevelSettings.h:17
Definition LevelSummary.h:30
Definition PackInstanceId.h:8
Definition SpawnSettings.h:9