LeviLamina
Loading...
Searching...
No Matches
MinecraftScreenModel.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/certificates/identity/LastClickedSource.h"
7#include "mc/client/game/MinecraftGameFeatures.h"
8#include "mc/client/game/WebviewInterfaceType.h"
9#include "mc/client/gui/SceneType.h"
10#include "mc/client/gui/SettingsTabIndex.h"
11#include "mc/client/gui/screens/SelectWorldResult.h"
12#include "mc/client/gui/screens/controllers/CreditsType.h"
13#include "mc/client/gui/screens/models/IMinecraftScreenModel.h"
14#include "mc/client/gui/screens/models/PlatformStoreIconModel.h"
15#include "mc/client/input/ButtonIndiciesEnum.h"
16#include "mc/client/input/IconSize.h"
17#include "mc/client/input/KeyboardType.h"
18#include "mc/client/input/TriggerIndiciesEnum.h"
19#include "mc/client/network/clubs/GenericStatus.h"
20#include "mc/client/network/realms/FailureReason.h"
21#include "mc/client/network/realms/GenericStatus.h"
22#include "mc/client/network/realms/RealmsAPI.h"
23#include "mc/client/persona/defaults/DefaultSkinType.h"
24#include "mc/client/realms/PlayerRoleActions.h"
25#include "mc/client/services/download/IDlcBatcher.h"
26#include "mc/client/social/MultiplayerServiceIdentifier.h"
27#include "mc/client/social/UserPlatformConnectionResult.h"
28#include "mc/client/store/commerce/PurchaseResult.h"
29#include "mc/client/store/iap/StorePreviewVersion.h"
30#include "mc/common/SubClientId.h"
31#include "mc/deps/application/ClipboardFeatureFlags.h"
32#include "mc/deps/code_builder/CodeBuilderPerformance.h"
33#include "mc/deps/core/file/PathBuffer.h"
34#include "mc/deps/core/http/StatusCode.h"
35#include "mc/deps/core/platform/BuildPlatform.h"
36#include "mc/deps/core/threading/Async.h"
37#include "mc/deps/core/utility/NonOwnerPointer.h"
38#include "mc/deps/core/utility/optional_ref.h"
39#include "mc/deps/core/utility/pub_sub/Connector.h"
40#include "mc/deps/input/InputBindingMode.h"
41#include "mc/deps/shared_types/legacy/Difficulty.h"
42#include "mc/events/IMinecraftEventing.h"
43#include "mc/events/UserGeneratedUriSource.h"
44#include "mc/identity/IdentitySignInTrigger.h"
45#include "mc/network/connection/DisconnectFailReason.h"
46#include "mc/network/packet/ModalFormCancelReason.h"
47#include "mc/network/packet/ResourcePackResponse.h"
48#include "mc/server/commands/CommandPermissionLevel.h"
49#include "mc/server/commands/PlayerPermissionLevel.h"
50#include "mc/util/ProfanityFilterContext.h"
51#include "mc/world/ContainerID.h"
52#include "mc/world/actor/player/LoadingState.h"
53#include "mc/world/inventory/FurnaceLayout.h"
54#include "mc/world/inventory/FurnaceLeftTabIndex.h"
55#include "mc/world/inventory/InventoryLayout.h"
56#include "mc/world/inventory/InventoryLeftTabIndex.h"
57#include "mc/world/inventory/InventoryRightTabIndex.h"
58#include "mc/world/level/FileArchiver.h"
59#include "mc/world/level/GameType.h"
60
61// auto generated forward declare list
62// clang-format off
63class AbstractScene;
65class Actor;
67class ContentIdentity;
68class ContentTierInfo;
70class DlcId;
72class FileDataRequest;
75class IClientInstance;
76class IContentManager;
77class IDlcBatchModel;
81class IMinecraftGame;
83class IOptionRegistry;
84class ISceneStack;
86class ItemStackBase;
89class LevelData;
90class LevelSettings;
91class LocalPlayer;
93class PackManifest;
97class PlayerListEntry;
98class ProgressHandler;
99class PropertyBag;
101class SceneFactory;
102class SkinHandle;
104class StoreCatalogRepository;
105class TaskGroup;
106class ToastMessage;
107class TransactionContext;
108class WebviewInterface;
109class WireframeQueue;
110struct ActorUniqueID;
111struct ContentItem;
112struct ContentLogMessage;
114struct EduPurchaseDetails;
116struct LevelSummary;
118struct PDFOptions;
119struct PackIdVersion;
121struct Purchase;
122struct StoreContentSources;
124struct SubscriptionOffer;
125namespace Bedrock::Http { class Status; }
126namespace Clubs { struct ClubModel; }
127namespace Core { class Path; }
128namespace EduCloud { struct IEduCloudSaveSystem; }
129namespace Identity { struct SignOutResult; }
130namespace Invites { struct Invite; }
131namespace Invites { struct InviteId; }
132namespace Json { class Value; }
133namespace OreUI { class Router; }
134namespace Realms { class InvitesService; }
135namespace Realms { struct ConfigInfo; }
136namespace Realms { struct InviteLink; }
137namespace Realms { struct Player; }
138namespace Realms { struct RealmId; }
139namespace Realms { struct ServerRegion; }
140namespace Realms { struct World; }
141namespace Realms { struct WorldBackupList; }
142namespace Social { class FriendList; }
143namespace Social { class GameConnectionInfo; }
144namespace Social { class IUserManager; }
145namespace Social { class ProfileImageOptions; }
146namespace Social { struct MultiIdentitySigninResult; }
147namespace Social { struct PermissionCheckResult; }
148namespace Social { struct PlatformUserProfileData; }
149namespace Social { struct UserLinkedAccountsInfo; }
150namespace Social { struct XUID; }
151namespace Social { struct XboxLiveUserProfileData; }
152namespace edu::auth { struct CredentialsObserver; }
153namespace mce { class UUID; }
154// clang-format on
155
157 public ::IDlcBatcher,
158 public ::std::enable_shared_from_this<::MinecraftScreenModel> {
159public:
160 // MinecraftScreenModel inner types define
161 enum class FriendsDrawerLocation : int {
162 MainMenu = 0,
163 InGameMenu = 1,
164 };
165
166 using Context = ::MinecraftScreenModelContext;
167
168public:
169 // member variables
170 // NOLINTBEGIN
171 ::ll::TypedStorage<8, 8, ::IMinecraftGame&> mMinecraft;
172 ::ll::TypedStorage<8, 8, ::ILayoutServiceProvider&> mLayoutServiceProvider;
173 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IAdvancedGraphicsOptions>> mAdvancedGraphicsOptions;
174 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IClientInstance>> mClient;
175 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::ISceneStack>> mSceneStack;
176 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::AbstractScene>> mLoadingScene;
177 ::ll::TypedStorage<8, 8, ::SceneFactory&> mSceneFactory;
178 ::ll::TypedStorage<1, 1, bool> mIsDirty;
179 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ClientInstanceModel>> mClientModel;
180 ::ll::TypedStorage<4, 4, ::LoadingState> mResourcePackConfirmationLoadingState;
181 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SkinPackCollectionModel>> mSkinPackCollectionModel;
182 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SkinPackCollectionModel>> mPurchasableSkinPackCollectionModel;
183 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SkinPackCollectionModel>> mOwnedSkinPackCollectionModel;
184 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::SkinPackCollectionModel>> mRealmsPlusSkinPackCollectionModel;
185 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TaskGroup>> mAsyncTaskGroup;
186 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::PlatformUpsellDialog>> mPlatformUpsellDialog;
187 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::IDlcBatcher>> mDlcBatcher;
188 ::ll::TypedStorage<8, 16, ::Bedrock::Threading::Async<void>> mStartServerResult;
189 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::IScreenCapabilities>> mCapabilities;
190 ::ll::TypedStorage<8, 16, ::PlatformStoreIconModel> mPlatformStoreIconModel;
191 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::TaskGroup>> mStorageCheckTaskGroup;
192 ::ll::TypedStorage<8, 16, ::std::shared_ptr<::Social::FriendList>> mFriendList;
193 ::ll::TypedStorage<4, 4, uint> mSceneId;
194 ::ll::TypedStorage<1, 1, bool> mPlayerCanceledJoinGame;
195 ::ll::TypedStorage<1, 1, bool> mCurrentlyLoadingScene;
196 // NOLINTEND
197
198public:
199 // prevent constructor by default
200 MinecraftScreenModel& operator=(MinecraftScreenModel const&);
201 MinecraftScreenModel(MinecraftScreenModel const&);
202 MinecraftScreenModel();
203
204public:
205 // virtual functions
206 // NOLINTBEGIN
207 virtual ~MinecraftScreenModel() /*override*/;
208
209 virtual bool tryNavigateToProfileScreen() /*override*/;
210
211 virtual bool tryNavigateToSafeZoneScreenOnFirstSignin() /*override*/;
212
213 virtual void navigateToStoreDataDrivenScreen(
214 ::StoreDataDrivenScreenParams const& params,
215 bool forceDisableProgressScreen
216 ) /*override*/;
217
218 virtual bool leaveScreen(::std::string expectedScreenName, bool onlyThis) /*override*/;
219
220 virtual void popScreensBackTo(::ui::SceneType const sceneType) /*override*/;
221
222 virtual bool isLeaveGameDone() const /*override*/;
223
224 virtual void requestLeaveGame(bool switchScreen, bool sync) /*override*/;
225
226 virtual void destroyGame() /*override*/;
227
228 virtual bool isInGame() const /*override*/;
229
230 virtual bool isSelectedSkinInitialized() const;
231
232 virtual ::SubClientId getSubClientId() const /*override*/;
233
234 virtual bool platformTTSExists() const;
235
236 virtual ::IDlcBatchModel& getDlcBatchModel(::std::vector<::DlcId> const& dlcIds) /*override*/;
237
238 virtual ::IDlcBatchModel& getDlcBatchModel(::std::vector<::std::string> const& productIds) /*override*/;
239
240 virtual ::IDlcBatchModel& getDlcBatchModel(::std::vector<::PackIdVersion> const& packIds) /*override*/;
241
242 virtual ::Bedrock::NotNullNonOwnerPtr<::StoreCatalogRepository> getStoreCatalogRepository() const;
243
244 virtual float getStoreNetworkFailureTimeout() const;
245
246 virtual bool isAdhocEnabled() const;
247
248 virtual bool isUserReady() const /*override*/;
249
250 virtual bool isDirty() const;
251
252 virtual ::ResourcePackManager& getResourcePackManager() const /*override*/;
253
254 virtual ::SkinHandle const& getSelectedSkinHandle() const;
255
256 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> getUserManager() /*override*/;
257
258 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> const getUserManager() const /*override*/;
259
260 virtual ::std::string const& getLastPoppedScreenName() const;
261
262 virtual ::INetworkGameConnector& getNetworkGameConnector() /*override*/;
263 // NOLINTEND
264
265public:
266 // member functions
267 // NOLINTBEGIN
268 MCAPI explicit MinecraftScreenModel(::MinecraftScreenModelContext context);
269
270 MCAPI bool _isPremium(::PackManifest const& manifest) const;
271
272 MCAPI bool _isPremiumLocked(::PackManifest const& manifest) const;
273
274 MCAPI bool _isRealmsPlus(::PackManifest const& manifest) const;
275
276 MCAPI ::Bedrock::Threading::Async<void> _queueForMainThread(::std::function<void()>&& callback);
277
278 MCAPI void
279 _sendResourcePackClientResponse(::ResourcePackResponse response, ::std::set<::std::string>* downloadingPacks);
280
281 MCAPI void _startLocalServerAsync(
282 ::std::string const& levelId,
283 ::std::string const& levelName,
284 ::ContentIdentity const& contentIdentity,
285 ::LevelSettings const& settings
286 );
287
288 MCAPI void acceptRealmsInvite(
289 ::Invites::InviteId invite,
290 ::std::function<void(::Realms::GenericStatus, ::Realms::FailureReason)> callback
291 );
292
293 MCAPI void acceptRealmsLink(
294 ::std::string realmInvite,
295 ::std::function<void(::Realms::GenericStatus, ::Realms::FailureReason, ::Realms::World)> callback
296 );
297
298 MCAPI void acknowledgePartyDestinationCookie(bool accepted);
299
300 MCAPI void activateNewPreviewRealm(
301 ::Realms::RealmId worldId,
302 ::std::function<void(::Realms::GenericStatus, ::Realms::RealmId)> callback
303 );
304
305 MCAPI void
306 addDownloadCallback(::std::weak_ptr<bool> existenceTracker, ::std::function<void(::DownloadStateObject&)> callback);
307
308 MCAPI void addEduCredentialsObserver(::edu::auth::CredentialsObserver& observer);
309
310 MCAPI void addEduDeeplinkObserver(::EduDeeplinkObserver& observer) const;
311
312 MCAPI bool addExternalServer(::std::string const& name, ::std::string const& address, int port);
313
314 MCAPI void addTTSMessage(
315 ::std::string const& message,
316 bool interruptible,
317 ::std::string const& interruptibleId,
318 bool required,
319 bool disregardAppFocus
320 );
321
322 MCAPI void addToRealmsBlocklist(
323 ::Realms::RealmId worldId,
324 ::std::string const& currentUserXuid,
325 ::std::string const& xuidToBlock,
326 ::std::function<void(::Realms::GenericStatus)> callback
327 );
328
329 MCAPI bool allowBetaXblSignIn() const;
330
331 MCAPI bool areAnyDownloadsOrImportsActive() const;
332
333 MCAPI bool arePersonaAppearancesLoading() const;
334
335 MCAPI bool canEditPermissionsEDU(::ActorUniqueID const& id);
336
337 MCAPI bool canLaunchUri(::std::string const& uri);
338
339 MCAPI bool canManageSubscriptionForStoreId(::std::string const& storeId) const;
340
341 MCAPI bool canUserDoActionForCurrentRealm(::Realms::PlayerRoleActions action) const;
342
343 MCAPI bool canUserDoRealmRoleAction(::Realms::World const& realmWorld, ::Realms::PlayerRoleActions action) const;
344
345 MCAPI void cancelEDUServicePackDownload(::std::string const& cancelReason) const;
346
347 MCAPI void cancelJoinGame(::LoadingState loadingState);
348
349 MCAPI void checkConnectionEvents();
350
351 MCAPI void checkPremiumPlatformAccessAsync(::std::function<void(bool)> callback);
352
353 MCAPI void checkRealmsPaymentService(::std::function<void(bool)> callback);
354
355 MCAPI void clearContentLogMessages();
356
357 MCAPI void clearDevConsoleScreenMessages();
358
359 MCAPI void clearEditorPlaytestRoundtripInfo() const;
360
361 MCAPI void clearTTSQueue();
362
363 MCAPI void closeRealmsWorld(
364 ::Realms::RealmId worldId,
365 ::std::function<void(::Realms::GenericStatus)> callback,
366 ::std::function<void(int)> retryCallback
367 );
368
369 MCAPI void clubNameVetting(
370 ::std::string const& name,
371 ::std::function<void(::Realms::GenericStatus, ::Realms::FailureReason)> callback
372 );
373
374 MCAPI void completeServerForm(uint formId, ::ModalFormCancelReason cancelReason);
375
376 MCAPI void completeServerForm(uint formId, ::Json::Value response);
377
378 MCAPI void confirmResourcePackDownload(
379 ::ResourcePackResponse response,
380 bool downloadOptionalResourcePacks,
381 bool forceServerPacksEnabled
382 );
383
384 MCAPI void connectToPlatformNetwork(
385 ::std::function<void(::Social::UserPlatformConnectionResult)> callback,
386 bool isUserInitiated
387 );
388
389 MCAPI bool continueResourcePackDownloadAfterCDNFailure();
390
391 MCAPI ::std::string copyWorld(::std::string const& worldId);
392
393 MCAPI void createAndUploadWorldToRealm(
394 ::LevelSummary const& levelSummary,
395 ::LevelSettings const& levelSettings,
396 ::Realms::World world,
397 ::std::function<void(::Realms::World)> callback
398 );
399
400 MCAPI void createAndUploadWorldToRealm(
401 ::std::string const& levelId,
402 ::std::string levelName,
403 ::LevelSettings const& settings,
404 ::Realms::World world,
405 ::std::function<void(::Realms::World)> callback
406 );
407
408 MCAPI void createInviteLink(
409 ::Realms::RealmId worldId,
410 int64 expiry,
411 ::std::function<void(::Realms::GenericStatus, ::Realms::InviteLink)> callback
412 );
413
414 MCAPI ::std::unique_ptr<::PlatformMultiplayerRestrictions> createPlatformMultiplayerRestrictions();
415
416 MCAPI void deleteAllContentLogs() const;
417
418 MCAPI void deleteAllDiagnosticsAndProfilerCaptures() const;
419
420 MCAPI void deleteAllLocalScreenshots();
421
422 MCAPI void deleteInviteLink(::std::string const& linkId, ::std::function<void(::Realms::GenericStatus)> callback);
423
424 MCAPI void deleteRealm(::Realms::RealmId worldId, ::std::function<void(::Realms::GenericStatus)> callback);
425
426 MCAPI void deleteRealmWorldBackup(
427 ::Realms::RealmId const& worldId,
428 int slotIndex,
429 ::std::string const& backupId,
430 ::std::function<void(int)>,
431 ::std::function<void(::Realms::GenericStatus, ::std::string)> callback
432 );
433
434 MCAPI void devConsoleExecuteCommand(::std::string const& command);
435
436 MCAPI void displayPremiumUpsellDialogAsync(::std::function<void(bool)> callback);
437
438 MCAPI bool doesUserHavePremiumPlatformAccess() const;
439
440 MCAPI bool
441 editExternalServer(int id, ::std::string const& name, ::std::string const& address, int port, bool updateTimeStamp);
442
443 MCAPI ::std::string emoticonifyText(::std::string const& text, bool isGameTip);
444
445 MCAPI void fetchActiveWorldCurrentSize(
446 ::Realms::RealmId const& realmId,
447 int slotIndex,
448 ::std::function<void(::Realms::GenericStatus, int64)> callback
449 );
450
451 MCAPI void
452 fetchRealmsWorlds(::std::function<void(::Realms::GenericStatus, ::std::vector<::Realms::World>)> callback);
453
454 MCAPI void fetchScreenshots(::std::vector<::Core::PathBuffer<::std::string>>& results);
455
456 MCAPI ::std::string filterProfanityFromString(
457 ::ProfanityFilterContext stringContext,
458 ::std::string const& str,
459 bool allowFilterOverride
460 ) const;
461
462 MCAPI bool findProfanityInString(::ProfanityFilterContext stringContext, ::std::string const& str) const;
463
464 MCAPI void finishGuidedFlow(bool completed);
465
466 MCAPI void fireBannedSkinVerification(
467 ::std::string const& skinData,
468 bool wasApproved,
469 int eventCode,
470 ::std::string const& message
471 ) const;
472
473 MCAPI void fireCodeBuilderCachePerformanceEvent(::CodeBuilderPerformance::Stage stage);
474
475 MCAPI void fireEventAdhocNetworkEnabled() const;
476
477 MCAPI void fireEventInventoryClosed();
478
479 MCAPI void fireEventInventoryOpened(bool workbench);
480
481 MCAPI void fireEventItemSelected(::ItemStackBase const& item);
482
483 MCAPI void fireEventScreenChanged(
484 ::std::string const& screenName,
485 ::std::unordered_map<::std::string, ::std::string> const& additionalProperties
486 );
487
488 MCAPI void firePackSettingsEvent(
489 ::PackManifest const& manifest,
490 ::std::string serializedPackSettings,
491 int subpackIndex,
492 ::std::string const& subpackName,
493 int subpackCount
494 );
495
496 MCAPI void fireSignOutEdu(::std::string const& action, ::std::string const& error) const;
497
498 MCAPI void fireSwitchAccountEdu() const;
499
500 MCAPI void flushQueuedDevConsoleMessages();
501
502 MCFOLD bool
503 fulfillPriorEduPurchase(::std::weak_ptr<::Purchase> purchase, ::std::unique_ptr<::TransactionContext> context);
504
505 MCAPI ::std::shared_ptr<::FilePickerSettings>
506 generateFilePickerSettingsForAlbum(::PDFOptions const& options, ::std::string const& defaultOutName);
507
508 MCAPI ::std::shared_ptr<::FilePickerSettings> generateFilePickerSettingsForExport();
509
510 MCAPI ::std::shared_ptr<::FilePickerSettings> generateFilePickerSettingsForExport(
511 ::std::string const& levelId,
512 ::std::string const& levelName,
513 ::FileArchiver::ExportType type
514 );
515
516 MCAPI ::PlayerAchievementData const& getAchievementData() const;
517
518 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ActiveDirectoryIdentity const> getActiveDirectoryIdentity();
519
520 MCAPI void getAllInviteLinks(
521 ::Realms::RealmId worldId,
522 ::std::function<void(::Realms::GenericStatus, ::std::vector<::Realms::InviteLink>)> callback
523 );
524
525 MCAPI bool getBlankLineDismissesChat() const;
526
527 MCFOLD ::std::string getBuildDateISOString() const;
528
529 MCAPI ::BuildPlatform getBuildPlatform() const;
530
531 MCAPI ::std::string getButtonTexture(::TriggerIndiciesEnum trigger);
532
533 MCAPI ::std::string getButtonTexture(::ButtonIndiciesEnum button, ::IconSize iconSize, bool checkButtonSwap);
534
535 MCAPI ::ClipboardFeatureFlags getClipboardFeatures() const;
536
537 MCAPI void getClubProfile(
538 ::std::string const& clubId,
539 ::std::function<void(::Clubs::ClubModel, ::Clubs::GenericStatus)> callback
540 );
541
542 MCAPI void
543 getClubUnreadCount(::std::string const& clubId, ::std::function<void(int, ::Clubs::GenericStatus)> callback);
544
545 MCAPI ::MinecraftCommands& getCommands();
546
547 MCAPI ::std::vector<::ContentLogMessage> const& getContentLogMessages() const;
548
549 MCAPI ::ContentTierInfo getContentTierInfo() const;
550
551 MCAPI ::Realms::World& getCurrentRealm();
552
553 MCAPI ::std::string getCurrentXUID() const;
554
555 MCAPI ::SkinHandle getCustomSkinHandle(::persona::DefaultSkinType skinType) const;
556
557 MCAPI ::std::vector<::std::string> const& getDevConsoleScreenMessages();
558
559 MCAPI ::std::string getDevelopmentVersionString() const;
560
561 MCAPI ::DimensionHeightRange getDimensionHeightRange() const;
562
563 MCAPI ::WireframeQueue* getDimensionWireframeQueue();
564
565 MCAPI ::std::string getDisplayName() const;
566
567 MCAPI ::Bedrock::NonOwnerPointer<::EduCloud::IEduCloudSaveSystem> getEDUCloudSaveSystem() const;
568
569 MCAPI ::IEDUDiscoveryService& getEDUDiscoveryService();
570
571 MCAPI float getEDUServicePackProgress() const;
572
573 MCAPI ::std::string getEduOfferPrice();
574
575 MCAPI ::EducationLevelSettings const* getEducationLevelSettings() const;
576
577 MCAPI ::std::tuple<::std::string, ::std::string, int> getExternalServerInfo(int id);
578
579 MCAPI ::std::optional<::Social::GameConnectionInfo> getGameConnectionInfo();
580
581 MCAPI ::IGameConnectionListener const& getGameConnectionListener();
582
583 MCAPI int getHotbarSlotCount() const;
584
585 MCAPI ::std::string getIpAddress() const;
586
587 MCAPI bool getIsWaitingForSession() const;
588
589 MCAPI ::KeyboardRemappingLayout& getKeyboardRemappingLayout() const;
590
591 MCAPI ::KeyboardRemappingLayout& getKeyboardRemappingLayoutByType(::KeyboardType keyboardType) const;
592
593 MCAPI ::std::string const& getLastContentLogMessage() const;
594
595 MCAPI ::std::string const& getLastDevConsoleMessage();
596
597 MCAPI ::LevelData const* getLevelData() const;
598
599 MCAPI ::LevelData* getLevelData();
600
601 MCAPI ::Bedrock::Threading::Async<::std::vector<::Social::UserLinkedAccountsInfo>>
602 getLinkedAccountsFromPSNs(::std::vector<::std::string> const& platformIds) const;
603
604 MCAPI ::Bedrock::Threading::Async<::std::vector<::Social::UserLinkedAccountsInfo>>
605 getLinkedAccountsFromXUIDs(::std::vector<::Social::XUID> const& xuids) const;
606
607 MCAPI float getLoadingProgress();
608
609 MCAPI ::LocalPlayer* getLocalPlayer() const;
610
611 MCAPI ::ActorUniqueID getLocalPlayerEntityID() const;
612
613 MCAPI ::mce::UUID getLocalPlayerUUID();
614
615 MCAPI ::std::string const getMarketplaceDisabledReason() const;
616
617 MCAPI ::std::string getMarketplacePassPrice(::std::string const& productSku, ::std::string const& caymanId) const;
618
619 MCAPI uint getMaxPlatformInvitablePlayers() const;
620
621 MCAPI uint getMaxSimRadiusInChunks() const;
622
623 MCAPI ::std::string getMinecraftAccountID() const;
624
625 MCAPI ::std::string getNetworkInfoStringInGame() const;
626
627 MCAPI bool getNewJukeboxPopupItemText(::std::string& newText, bool& isCreative);
628
629 MCAPI bool getNewPopupItemText(::std::string& newText, bool& isCreative);
630
631 MCAPI ::std::optional<::SubscriptionOffer> getNextAvailableSubscriptionInfo() const;
632
633 MCAPI ::Bedrock::PubSub::Connector<
634 void(::PlayerListEntry const&, ::std::unordered_map<::mce::UUID, ::PlayerListEntry> const&)>&
635 getOnPlayerListEntryRemovedConnector() const;
636
637 MCAPI ::IOptionRegistry& getOptions() const;
638
639 MCAPI ::std::shared_ptr<::WebviewInterface> getOrCreateWebviewInterface(::WebviewInterfaceType interfaceType);
640
641 MCAPI ::std::string getPlatformAppropriateSubscriptionLocString(::std::string locString, bool isForRealms) const;
642
643 MCAPI void
644 getPlatformFriendProfiles(::std::function<void(::std::vector<::Social::PlatformUserProfileData> const&)> callback);
645
646 MCAPI void getPlatformProfile(
647 ::std::string const& platformId,
648 ::std::function<void(::Social::PlatformUserProfileData&)> callback
649 );
650
651 MCAPI ::CommandPermissionLevel getPlayerCommandPermissionLevel() const;
652
653 MCAPI ::GameType getPlayerGameType() const;
654
655 MCAPI ::std::string getPlayerName() const;
656
657 MCAPI short getPointerX() const;
658
659 MCAPI short getPointerY() const;
660
661 MCAPI void
662 getPreferredRegions(::std::function<void(::Realms::GenericStatus, ::std::vector<::Realms::ServerRegion>)> callback);
663
664 MCAPI ::std::string getPriceDisclaimerText() const;
665
666 MCAPI ::std::pair<::std::string, bool> const getPrivilegesBlockedString(
667 ::Social::PermissionCheckResult const& reason,
668 ::std::string const& needXBLGold,
669 ::std::string const& specificPrivilege,
670 ::std::string const& platformRestriction,
671 ::std::string const& noInternetConnection,
672 ::std::string const& unknownError
673 ) const;
674
675 MCAPI ::Bedrock::Threading::Async<::Core::PathBuffer<::std::string>>
676 getProfileImageFile(::Social::ProfileImageOptions const& options);
677
678 MCAPI void getProfiles(
679 ::std::vector<::std::string> const& xuids,
680 ::std::function<void(::std::vector<::Social::XboxLiveUserProfileData const*> const&)> batchedCollectionCallback
681 );
682
683 MCAPI void getRealmWorldBackupList(
684 ::Realms::RealmId worldId,
685 int slotIndex,
686 ::std::function<void(::Realms::GenericStatus, ::Realms::WorldBackupList)> callback
687 );
688
689 MCAPI void getRealmsBlocklist(
690 ::Realms::RealmId worldId,
691 ::std::function<void(::Realms::GenericStatus, ::std::vector<::std::string>)> callback
692 );
693
694 MCAPI void getRealmsConfigDetails(
695 ::Realms::RealmId worldId,
696 ::std::function<void(::Realms::GenericStatus, ::Realms::ConfigInfo)> callback
697 );
698
699 MCAPI ::Bedrock::NotNullNonOwnerPtr<::Realms::InvitesService> getRealmsInvitesService();
700
701 MCAPI void getRealmsMembers(
702 ::Realms::RealmId worldId,
703 ::std::function<void(::Realms::GenericStatus, ::std::vector<::Realms::Player>)> callback
704 );
705
706 MCAPI void
707 getRealmsOnlinePlayers(::std::function<void(::Realms::GenericStatus, ::std::vector<::Realms::World>)> callback);
708
709 MCAPI void getRealmsWorld(
710 ::Realms::RealmId worldId,
711 ::std::function<void(::Realms::GenericStatus, ::Realms::World)> callback,
712 bool userWaiting
713 );
714
715 MCAPI ::Realms::World getRealmsWorldContextWorld() const;
716
717 MCAPI float getResourcePackDownloadProgress(::std::string& message) const;
718
719 MCAPI ::std::string getScreenName() const;
720
721 MCAPI ::std::string getScreenTelemetry() const;
722
723 MCAPI ::PlayerInventorySlotData getSelectedSlot();
724
725 MCAPI ::std::string const& getServerSettingsData();
726
727 MCAPI uint getServerSettingsId();
728
729 MCAPI ::std::string getSessionConfigKnownPageKeyValue(::std::string const& pageId) const;
730
731 MCAPI bool getSimPaused() const;
732
733 MCAPI ::std::string getSplitscreenJoinText() const;
734
735 MCAPI ::StoreContentSources getStoreContentSources() const;
736
737 MCAPI ::std::string getStoreDocumentId() const;
738
739 MCAPI bool getStoreHasMarketplacePassProducts() const;
740
741 MCAPI bool getStoreHasRealmsProducts() const;
742
743 MCAPI ::std::string getStoreId() const;
744
745 MCAPI ::std::optional<::SubscriptionOffer> getSubscriptionFullPriceInfo() const;
746
747 MCAPI ::std::string getTermsOfUseHyperlink() const;
748
749 MCAPI bool getTipText(::std::string& text);
750
751 MCAPI uint64 getTotalHardwareThreadsCount() const;
752
753 MCAPI ::OreUI::Router& getUIRouter();
754
755 MCAPI bool getUnfulfilledEduPurchase(::EduPurchaseDetails& details);
756
757 MCAPI ::GameType getUnmappedPlayerGameType() const;
758
759 MCAPI void getUserMemberOfWorldsCount(::std::function<void(::Realms::GenericStatus, bool)> callback);
760
761 MCAPI ::Social::XboxLiveUserProfileData const& getUserProfileDataByXuid(::std::string const& xuid);
762
763 MCAPI ::std::string getVersionString() const;
764
765 MCAPI ::std::shared_ptr<::WebviewInterface> getWebviewInterface(::WebviewInterfaceType interfaceType);
766
767 MCAPI void getWorldFromLink(
768 ::std::string realmInvite,
769 ::std::function<void(::Realms::GenericStatus, ::Json::Value const&&, ::Realms::World)> callback
770 );
771
772 MCAPI ::LoadingState getWorldLoadingState() const;
773
774 MCAPI ::std::vector<::std::string> getXuidsInLobby() const;
775
776 MCAPI ::PurchaseResult goToExternalPlatformOffer(
777 ::std::string const& offerId,
778 ::std::function<void(bool)> finishedExternalCoinPurchase,
779 ::std::function<void(bool, int)> boughtEnoughCoinsCallback
780 );
781
782 MCAPI void handleHideGUIButtonPress();
783
784 MCAPI void handleHidePaperDollButtonPress();
785
786 MCAPI void handleHideToolTipsButtonPress();
787
788 MCAPI bool hasInputDevice() const;
789
790 MCAPI bool hasInteractButton() const;
791
792 MCAPI bool hasLocalDeviceEntitlements() const;
793
794 MCAPI bool hasPlatformIcons() const;
795
796 MCFOLD bool hasPlatformInvites() const;
797
798 MCAPI bool hasPlatformProfileCards() const;
799
800 MCAPI void initCodebuilderView();
801
802 MCAPI void initializeRealmsWorld(
803 ::Realms::RealmId worldId,
804 ::std::string const& name,
805 ::std::string const& description,
806 ::std::function<void(::Realms::GenericStatus, ::Realms::FailureReason)> callback
807 );
808
809 MCAPI void invitePlayers(::std::vector<::std::string> const& uids, ::Social::MultiplayerServiceIdentifier service);
810
811 MCAPI bool isBanned() const;
812
813 MCAPI bool isCreative() const;
814
815 MCAPI bool isCrossPlatformPlayEnabled() const;
816
817 MCAPI bool isDesktop() const;
818
819 MCAPI bool isDeviceBeingSunset() const;
820
821 MCAPI bool isDeviceSunset() const;
822
823 MCAPI bool isEditorEnabledOrPlaytesting() const;
824
825 MCAPI bool isEditorModeEnabled() const;
826
827 MCAPI bool isEditorPlayer() const;
828
829 MCAPI bool isEduDemo();
830
831 MCAPI bool isEduMode() const;
832
833 MCAPI bool isFeatureEnabled(::MinecraftGameFeatures feature) const;
834
835 MCAPI bool isFriendsDrawerEnabled(::MinecraftScreenModel::FriendsDrawerLocation location) const;
836
837 MCAPI bool isGameModeEnabled(::GameType game) const;
838
839 MCAPI bool isGamepadCursorEnabled() const;
840
841 MCAPI bool isHotbarOnlyTouch() const;
842
843 MCAPI bool isInControlCustomization() const;
844
845 MCAPI bool isInputModeMouse() const;
846
847 MCAPI bool isInputModeTouch() const;
848
849 MCAPI bool isInternetAvailable() const;
850
851 MCAPI bool isInviteEnabled(::Social::MultiplayerServiceIdentifier serviceIdentifier) const;
852
853 MCAPI bool isLANAllowed() const;
854
855 MCAPI bool isLANAvailable() const;
856
857 MCAPI bool isLeftHanded() const;
858
859 MCAPI bool isLevelLoadingProgressScreen();
860
861 MCAPI bool isMultiplayerFeatureAllowed() const;
862
863 MCFOLD bool isMuteChat();
864
865 MCAPI bool isNetworkAllowed() const;
866
867 MCAPI bool isNetworkAvailable() const;
868
869 MCAPI bool isOnSceneStack(::std::string const& screenName);
870
871 MCAPI bool isOperator() const;
872
873 MCAPI bool isPlatformConsole() const;
874
875 MCAPI bool isPlatformInviteEnabled() const;
876
877 MCFOLD bool isPlatformNX() const;
878
879 MCFOLD bool isPlatformSony() const;
880
881 MCFOLD bool isPlatformThirdPartyConsole() const;
882
883 MCAPI bool isPlayerValid();
884
885 MCAPI bool isPreGame() const;
886
887 MCAPI bool isPremiumOwnedMissing(::PackIdVersion const& id, ::ContentIdentity const& contentIdentity) const;
888
889 MCFOLD bool isPremiumPlatformAccessRequired() const;
890
891 MCFOLD bool isPremiumPlatformAccessRequiredForMatchmaking() const;
892
893 MCAPI bool isRealmLevel() const;
894
895 MCAPI bool isRealmOwner() const;
896
897 MCFOLD bool isRealmsEnabled() const;
898
899 MCAPI bool isRealmsHubInGameFeatureOn() const;
900
901 MCAPI bool isResourceLoadingFinished() const;
902
903 MCAPI bool isRiding() const;
904
905 MCAPI bool isServiceMultiplayerEnabled(::Social::MultiplayerServiceIdentifier serviceID) const;
906
907 MCAPI bool isServiceMultiplayerSupported(::Social::MultiplayerServiceIdentifier serviceID);
908
909 MCAPI bool isSessionInfoValid(::Social::MultiplayerServiceIdentifier serviceID) const;
910
911 MCAPI bool isSignInInProgress() const;
912
913 MCAPI bool isSignedInToAdhoc() const;
914
915 MCAPI bool isSignedInToNSO() const;
916
917 MCAPI bool isSignedInToPSN() const;
918
919 MCAPI bool isSignedInToPlayfab() const;
920
921 MCAPI bool isSignedInToXBL() const;
922
923 MCAPI bool isSpectator() const;
924
925 MCAPI bool isSplitScreen();
926
927 MCAPI bool isSwitchTrialsEnabled(bool isForRealms) const;
928
929 MCAPI bool isUILoadingDone() const;
930
931 MCAPI bool isUITTSEnabled() const;
932
933 MCAPI bool isUserConnectedToPlatform() const;
934
935 MCAPI bool isUsingUnifiedJoinRealmFlow() const;
936
937 MCAPI bool isValidRealmName(::std::string name);
938
939 MCAPI void joinEDUDiscoveredWorld();
940
941 MCAPI void joinRealmsWorld(
942 ::Realms::World world,
943 ::std::function<void(::Social::GameConnectionInfo const&, bool)> successCallback,
944 ::std::function<void(::Realms::GenericStatus, ::RealmsAPI::JoinStatus, ::Realms::FailureReason)> failCallback,
945 ::std::function<void(int)> retryCallback,
946 ::IMinecraftEventing::RealmConnectionFlow realmConnectionFlow,
947 ::std::function<void(::IMinecraftEventing::RealmConnectionFlow)> broadcastConnectionEventRealmsRequestFunction,
948 ::std::function<void(::IMinecraftEventing::RealmConnectionFlow, ::Bedrock::Http::StatusCode)>
949 broadcastConnectionEventRealmsResponseFunction
950 );
951
952 MCAPI void launchEduUri(::std::string const& baseUrl);
953
954 MCAPI void launchFeedbackHelpUri();
955
956 MCAPI bool launchManageSubscriptions();
957
958 MCAPI bool launchStoreForClientUpdates();
959
960 MCAPI void launchUri(::std::string const& uri);
961
962 MCAPI void launchUserGeneratedUri(::std::string const& uri, ::UserGeneratedUriSource source, bool recordEvent);
963
964 MCAPI void leaveRealmsWorld(::Realms::RealmId worldId, ::std::function<void(::Realms::GenericStatus)> callback);
965
966 MCAPI void
967 listRealmsInvites(::std::function<void(::Realms::GenericStatus, ::std::vector<::Invites::Invite>)> callback);
968
969 MCAPI void loadStoreDataDrivenScreenFromSidebar(::StoreDataDrivenScreenParams& params);
970
971 MCAPI void makeBackupOfLevel(::LevelSummary const& editedLevel);
972
973 MCAPI bool multiplayerLostConnectionToSignalingService() const;
974
975 MCAPI bool multiplayerRequiresUGCEnabled() const;
976
977 MCAPI void navigateToActiveDirectoryLogin(bool displaySignIn, ::LastClickedSource lastClickedSource);
978
979 MCAPI void navigateToControlCustomizationScreen();
980
981 MCAPI void navigateToCreditsScreen(::CreditsType contentType, ::std::function<void()> callback);
982
983 MCAPI void navigateToDeleteProgressScreen(
984 ::std::string const& uniqueEventName,
985 ::IContentManager& contentManager,
986 ::std::vector<::std::shared_ptr<::ContentItem const>> itemsToDelete
987 );
988
989 MCAPI void navigateToDevConsole();
990
991 MCAPI void navigateToDisabledSkinScreen(bool twoButtonWithCallback, ::std::function<void()> callback);
992
993 MCAPI void navigateToDisconnectScreen(::Connection::DisconnectFailReason reason);
994
995 MCAPI void navigateToEduHomeScreen();
996
997 MCAPI void navigateToFeedScreen(::Realms::World const& world);
998
999 MCAPI void navigateToFeedbackPopup();
1000
1001 MCAPI void navigateToGamePlayScreen();
1002
1003 MCAPI void navigateToInviteScreen();
1004
1005 MCAPI void navigateToLessonCompleteScreen(::IMinecraftEventing::LessonCompleteDialogEntryPoint entryPoint);
1006
1007 MCAPI void navigateToModalProgressScreen(
1008 ::std::string const& uniqueEventName,
1009 ::std::unique_ptr<::ProgressHandler> progressHandler,
1010 bool forceRenderBelow,
1011 ::std::string const& screenNameOverride,
1012 bool isCancellable
1013 );
1014
1015 MCAPI void navigateToOptionsScreen(
1016 ::SettingsTabIndex startingTabIndex,
1017 bool navToMenuOnExit,
1018 bool maintainOldFocus,
1019 ::std::string const& initialPackId
1020 );
1021
1022 MCAPI void navigateToPlatformNetworkConnectConfirmationScreen(::std::function<void(bool)> callback);
1023
1024 MCAPI void navigateToPlatformSplitScreenConnectConfirmationScreen(::std::function<void(bool)> callback);
1025
1026 MCAPI void navigateToPlatformStoreConnectConfirmationScreen(::std::function<void(bool)> callback);
1027
1028 MCAPI void navigateToRealmsHubScreen(::Realms::World const& world);
1029
1030 MCAPI void navigateToRealmsManageMembersScreen(::Realms::World const& world);
1031
1032 MCAPI void navigateToRealmsPlanPicker();
1033
1034 MCAPI void navigateToRealmsSlotSettingsScreen(::Realms::World const& world);
1035
1036 MCAPI void navigateToRealmsSlotsScreen(::Realms::World const& worldWithoutSlotInfo);
1037
1038 MCAPI void navigateToRealmsStoriesShareLinkModal(::Realms::World const& world);
1039
1040 MCAPI void navigateToRealmsTimelineRequiredDisconnectScreen(int64 realmId);
1041
1042 MCAPI void navigateToSelectWorldPopup(
1043 ::std::function<
1044 void(::SelectWorldResult, ::optional_ref<::LevelSummary const>, ::optional_ref<::Realms::World const>)>
1045 callback
1046 );
1047
1048 MCAPI void navigateToStoreHomeScreen(::std::string const& title);
1049
1050 MCAPI void navigateToStoreRatingScreen();
1051
1052 MCAPI void navigateToUpdateWorldHeightScreen(::std::function<void(bool)> startWorldCallback);
1053
1054 MCAPI void navigateToWorldRecoveryScreen(::std::function<void()> successCallback);
1055
1056 MCAPI bool needPlatformConnectionBeforeXBLSignIn() const;
1057
1058 MCAPI bool needPlatformConnectionForMultiplayer() const;
1059
1060 MCAPI bool needPlatformConnectionForSplitScreenMultiplayer() const;
1061
1062 MCAPI void openBannedModal();
1063
1064 MCAPI void openRealmsWorld(
1065 ::Realms::RealmId worldId,
1066 ::std::function<void(::Realms::GenericStatus)> callback,
1067 ::std::function<void(int)> retryCallback
1068 );
1069
1070 MCAPI bool openingExternalResourceSuspendsApp() const;
1071
1072 MCAPI void pickFile(::std::shared_ptr<::FilePickerSettings> settings) const;
1073
1074 MCAPI void prepareToNavigateToGamePlayScreen();
1075
1076 MCAPI void printResourceLoadManagerRunningTasks() const;
1077
1078 MCAPI bool purchaseEduLicense(::std::unique_ptr<::TransactionContext> context);
1079
1080 MCAPI void purchasePreview(::StorePreviewVersion previewVersion) const;
1081
1082 MCAPI void pushToast(::ToastMessage message);
1083
1084 MCAPI void quit(::std::string const& src, ::std::string const& reason);
1085
1086 MCAPI void rebindKeys();
1087
1088 MCAPI void rebuildPlayScreenMenuStack();
1089
1090 MCAPI void
1091 refreshCurrentRealmWorldInfo(::std::function<void(::Realms::GenericStatus, ::Realms::World const&)> callback);
1092
1093 MCAPI void registerServicesManagerSetupCallback(::std::function<void()> callbackToRegister);
1094
1095 MCAPI void rejectRealmsInvite(::Invites::InviteId invite, ::std::function<void(::Realms::GenericStatus)> callback);
1096
1097 MCAPI void removeExternalServer(int id);
1098
1099 MCAPI void removeFromRealmsBlocklist(
1100 ::Realms::RealmId worldId,
1101 ::std::string const& xuid,
1102 ::std::function<void(::Realms::GenericStatus)> callback
1103 );
1104
1105 MCAPI void requestClientLeaveGame(bool switchScreen, bool sync);
1106
1107 MCAPI void requestDefaultPermissions(::PlayerPermissionLevel playerPermissions);
1108
1109 MCAPI ::std::shared_ptr<::FileDataRequest> requestImageFromUrl(
1110 ::std::string const& imageUrl,
1111 ::std::function<void(::Bedrock::Http::Status, ::Core::Path const&, uint64)> callback
1112 );
1113
1114 MCAPI void requestPlayerPermissions(::LayeredAbilities const& abilities, ::ActorUniqueID playerId);
1115
1116 MCAPI void requestServerSettings();
1117
1118 MCAPI bool requiresNetworkOutageMessaging() const;
1119
1120 MCAPI bool requiresXBLSigninToPlay() const;
1121
1122 MCAPI void resetActiveDirectoryAuthenticationState();
1123
1124 MCAPI void resetRealmsWorld(
1125 ::Realms::RealmId worldId,
1126 ::std::function<void(::Realms::GenericStatus)> callback,
1127 ::std::function<void(int)> retryCallback
1128 );
1129
1130 MCAPI void resetRealmsWorldContext();
1131
1132 MCAPI void resetResourceLoadManagerRepeatedHitCount();
1133
1134 MCAPI void restoreRealmWorldBackup(
1135 ::Realms::RealmId worldId,
1136 int slotIndex,
1137 ::std::string const& backupId,
1138 ::std::function<void(::Realms::GenericStatus, ::std::string)> const& callback
1139 );
1140
1141 MCAPI void saveAutoRealmWorldBackup(
1142 ::Realms::RealmId const& worldId,
1143 int slotIndex,
1144 ::std::string const& backupId,
1145 ::std::string const& worldName,
1146 ::std::vector<::std::string> const& backupsToReplace,
1147 ::std::function<void(::Realms::GenericStatus, ::std::string)> callback
1148 );
1149
1150 MCAPI void saveEduReceipt(::std::string const& receipt, ::std::function<void(bool)> const& callback);
1151
1152 MCAPI void saveLevelData(::std::string const& levelId, ::LevelData const& data);
1153
1154 MCAPI void savePlayerBlastFurnaceOptions(::FurnaceLeftTabIndex leftTab, bool filtering, ::FurnaceLayout layout);
1155
1156 MCAPI void savePlayerBlastFurnaceSearchString(::std::string const& searchString);
1157
1158 MCAPI void savePlayerFurnaceOptions(::FurnaceLeftTabIndex leftTab, bool filtering, ::FurnaceLayout layout);
1159
1160 MCAPI void savePlayerFurnaceSearchString(::std::string const& searchString);
1161
1162 MCAPI void savePlayerInventoryOptions(
1163 ::InventoryLeftTabIndex leftTab,
1164 ::InventoryRightTabIndex rightTab,
1165 bool filtering,
1166 ::InventoryLayout layoutInv,
1167 ::InventoryLayout layoutCraft
1168 );
1169
1170 MCAPI void savePlayerInventorySearchString(::std::string const& inventorySearchString);
1171
1172 MCAPI void savePlayerSmokerOptions(::FurnaceLeftTabIndex leftTab, bool filtering, ::FurnaceLayout layout);
1173
1174 MCAPI void savePlayerSmokerSearchString(::std::string const& searchString);
1175
1176 MCAPI void saveRealmWorldBackup(
1177 ::Realms::RealmId const& worldId,
1178 int slotIndex,
1179 ::std::string const& worldName,
1180 ::std::vector<::std::string> backupsToReplace,
1181 ::std::function<void(::Realms::GenericStatus, ::std::string)> callback
1182 );
1183
1184 MCAPI void scheduleCheckUserStorageAsync();
1185
1186 MCAPI void selectSlot(int slot, ::ContainerID containerId);
1187
1188 MCAPI void sendDevConsoleMessage(::std::string const& message);
1189
1190 MCAPI void sendPurchaseReceiptsToServer();
1191
1192 MCAPI void sendSetDifficultyPacket(::SharedTypes::Legacy::Difficulty value);
1193
1194 MCAPI void sendSettingsCommandPacket(::std::string const& command, bool supressOutput);
1195
1196 MCAPI void sendTrialWelcomeMessage();
1197
1198 MCAPI bool serverPermissionOpenChat() const;
1199
1200 MCAPI void setActiveDirectoryAuthenticationOfferPurchase();
1201
1202 MCAPI void setActiveDirectoryAuthenticationStateComplete();
1203
1204 MCAPI void setActiveDirectoryDemoVersion();
1205
1206 MCAPI void setActiveDirectoryEulaAccepted();
1207
1208 MCAPI void setActiveSlot(
1209 ::Realms::RealmId worldId,
1210 int slotIndex,
1211 ::std::function<void(::Realms::GenericStatus, ::Realms::FailureReason)> callback
1212 );
1213
1214 MCAPI void setClubProfile(::Clubs::ClubModel const& model, ::std::function<void(::Clubs::GenericStatus)> callback);
1215
1216 MCAPI void setDefaultPermissionsRealms(
1217 ::Realms::RealmId worldId,
1218 ::PlayerPermissionLevel const& permission,
1219 ::std::function<void(::Realms::GenericStatus)> callback
1220 );
1221
1222 MCAPI void setGraphicsMode(int mode);
1223
1224 MCAPI void setInputBindingMode(::InputBindingMode mode);
1225
1226 MCAPI void setIsInGameBrowsing(bool isInGameBrowsing);
1227
1228 MCAPI void setLanguage();
1229
1230 MCAPI void setLastSelectedSlot(int slot, ::ContainerID containerId);
1231
1232 MCAPI void setNumberOfOwnedRealms(int number);
1233
1234 MCAPI void setPlayerGameType(::GameType const& gameType);
1235
1236 MCAPI void setRealmsWorldInfo(
1237 ::Realms::World world,
1238 int difficulty,
1239 bool allowCheats,
1240 ::std::function<void(::Realms::GenericStatus, ::Realms::FailureReason)> callback
1241 );
1242
1243 MCAPI void setShareData(::std::string shareTitle, ::std::string shareText, ::std::string shareUri);
1244
1245 MCAPI void setSimPaused(bool paused);
1246
1247 MCAPI void setStoreDocumentId(::std::string const& documentId);
1248
1249 MCAPI void setTextBoxBackend(::std::string const& str);
1250
1251 MCAPI void setTexturePacksRequired(
1252 ::Realms::RealmId worldId,
1253 bool const& texturePacksRequired,
1254 ::std::function<void(::Realms::GenericStatus, ::Realms::FailureReason)> callback
1255 );
1256
1257 MCAPI void setTrialABTest(::PropertyBag* abTests);
1258
1259 MCAPI void setUserPermissionRealms(
1260 ::Realms::RealmId worldId,
1261 ::std::string const& xuid,
1262 ::PlayerPermissionLevel const& permission,
1263 ::std::function<void(::Realms::GenericStatus)> callback
1264 );
1265
1266 MCAPI bool shouldShowFailRealmsPurchaseFulfillmentToggle() const;
1267
1268 MCAPI bool shouldShowThirdPartyDisconnected() const;
1269
1270 MCAPI bool shouldShowThirdPartySignIn() const;
1271
1272 MCAPI void showFriendFinder(::std::function<void()> callback);
1273
1274 MCAPI void showPlatformEmptyStoreDialog(::std::function<void(bool)>&& callback);
1275
1276 MCAPI void showShareUI();
1277
1278 MCAPI bool showSignInButton() const;
1279
1280 MCAPI void signIn(
1281 ::std::function<void()> connectionCompleteCallback,
1282 ::Social::IdentitySignInTrigger signInTrigger,
1283 ::std::string const& signInSource,
1284 ::std::function<void(::Social::MultiIdentitySigninResult)> signInCompleteCallback
1285 );
1286
1287 MCAPI void signOut(::std::function<void(::Identity::SignOutResult)> callback);
1288
1289 MCAPI void silentSignin(
1290 ::Social::IdentitySignInTrigger signInTrigger,
1291 ::std::string const& signInSource,
1292 ::std::function<void(::Social::MultiIdentitySigninResult)> callback
1293 );
1294
1295 MCAPI void startActiveDirectoryEduDemo();
1296
1297 MCAPI void startExternalNetworkWorld(::std::string const& serverName, ::std::string const& ipAddress, int port);
1298
1299 MCAPI void startLocalServerAsync(::LevelSummary const& levelSummary, ::LevelSettings const& levelSettings);
1300
1301 MCAPI void
1302 startLocalServerAsync(::std::string const& levelId, ::std::string levelName, ::LevelSettings const& settings);
1303
1304 MCAPI void stopWebviewInterface(::WebviewInterfaceType interfaceType);
1305
1306 MCAPI bool supports3DExport() const;
1307
1308 MCAPI bool supports3rdPartyServers() const;
1309
1310 MCAPI bool supportsGamepad() const;
1311
1312 MCAPI bool supportsKeyboardMouse() const;
1313
1314 MCAPI bool supportsMSAA() const;
1315
1316 MCAPI bool supportsShare();
1317
1318 MCAPI bool supportsTTSLanguage(::std::string const& languageCode) const;
1319
1320 MCAPI bool supportsTouch() const;
1321
1322 MCAPI ::Bedrock::Threading::Async<::Core::PathBuffer<::std::string>> takeScreenshotForUploading();
1323
1324 MCAPI void travelToPartyDestination();
1325
1326 MCAPI void triggerNpcUpdateTelemetry(::Actor& npcOwner);
1327
1328 MCAPI bool tryNavigateToXblImmediateSignInScreen_DEPRECATED(
1329 ::std::string const& signInSource,
1330 ::std::function<void()> callBackAfterSignIn,
1331 ::std::function<void()> callBackAfterCancel
1332 );
1333
1334 MCAPI bool updateEDUServicePackSystem() const;
1335
1336 MCAPI void updateInviteLink(
1337 ::Realms::RealmId worldId,
1338 ::Realms::InviteLink link,
1339 ::std::function<void(::Realms::GenericStatus, ::Realms::InviteLink)> callback
1340 );
1341
1342 MCAPI void updateRealmsAllowList(
1343 ::Realms::RealmId worldId,
1344 ::std::string const& currentUserXuid,
1345 ::std::map<::std::string, ::RealmsAPI::InviteAction> xuidList,
1346 ::std::function<void(::Realms::GenericStatus, ::Realms::World)> callback
1347 );
1348
1349 MCAPI void updateRealmsConfig(
1350 ::Realms::RealmId worldId,
1351 ::std::string const& versionRef,
1352 ::std::function<void(::Realms::GenericStatus, ::std::string)> callback
1353 );
1354
1355 MCAPI bool usePlatformProfilePicturesOnly() const;
1356
1357 MCAPI bool wasSessionCreated(::Social::MultiplayerServiceIdentifier serviceID) const;
1358 // NOLINTEND
1359
1360public:
1361 // static variables
1362 // NOLINTBEGIN
1363 MCAPI static uint& mSceneInstanceCounter();
1364 // NOLINTEND
1365
1366public:
1367 // constructor thunks
1368 // NOLINTBEGIN
1369 MCAPI void* $ctor(::MinecraftScreenModelContext context);
1370 // NOLINTEND
1371
1372public:
1373 // destructor thunk
1374 // NOLINTBEGIN
1375 MCAPI void $dtor();
1376 // NOLINTEND
1377
1378public:
1379 // virtual function thunks
1380 // NOLINTBEGIN
1381 MCAPI bool $tryNavigateToProfileScreen();
1382
1383 MCAPI bool $tryNavigateToSafeZoneScreenOnFirstSignin();
1384
1385 MCAPI void
1386 $navigateToStoreDataDrivenScreen(::StoreDataDrivenScreenParams const& params, bool forceDisableProgressScreen);
1387
1388 MCAPI bool $leaveScreen(::std::string expectedScreenName, bool onlyThis);
1389
1390 MCAPI void $popScreensBackTo(::ui::SceneType const sceneType);
1391
1392 MCAPI bool $isLeaveGameDone() const;
1393
1394 MCAPI void $requestLeaveGame(bool switchScreen, bool sync);
1395
1396 MCAPI void $destroyGame();
1397
1398 MCFOLD bool $isInGame() const;
1399
1400 MCFOLD bool $isSelectedSkinInitialized() const;
1401
1402 MCAPI ::SubClientId $getSubClientId() const;
1403
1404 MCFOLD bool $platformTTSExists() const;
1405
1406 MCAPI ::IDlcBatchModel& $getDlcBatchModel(::std::vector<::DlcId> const& dlcIds);
1407
1408 MCAPI ::IDlcBatchModel& $getDlcBatchModel(::std::vector<::std::string> const& productIds);
1409
1410 MCAPI ::IDlcBatchModel& $getDlcBatchModel(::std::vector<::PackIdVersion> const& packIds);
1411
1412 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::StoreCatalogRepository> $getStoreCatalogRepository() const;
1413
1414 MCFOLD float $getStoreNetworkFailureTimeout() const;
1415
1416 MCAPI bool $isAdhocEnabled() const;
1417
1418 MCAPI bool $isUserReady() const;
1419
1420 MCAPI bool $isDirty() const;
1421
1422 MCAPI ::ResourcePackManager& $getResourcePackManager() const;
1423
1424 MCAPI ::SkinHandle const& $getSelectedSkinHandle() const;
1425
1426 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> $getUserManager();
1427
1428 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> const $getUserManager() const;
1429
1430 MCAPI ::std::string const& $getLastPoppedScreenName() const;
1431
1432 MCAPI ::INetworkGameConnector& $getNetworkGameConnector();
1433 // NOLINTEND
1434};
Definition AbstractScene.h:5
Definition ActiveDirectoryIdentity.h:27
Definition Actor.h:113
Definition Status.h:7
Definition ClientInstanceModel.h:5
Definition ContentIdentity.h:8
Definition ContentTierInfo.h:12
Definition Path.h:11
Definition DimensionHeightRange.h:5
Definition DlcId.h:5
Definition EduDeeplinkObserver.h:5
Definition FileDataRequest.h:5
Definition FilePickerSettings.h:5
Definition IAdvancedGraphicsOptions.h:10
Definition IClientInstance.h:5
Definition IContentManager.h:5
Definition IDlcBatchModel.h:5
Definition IDlcBatcher.h:5
Definition IEDUDiscoveryService.h:5
Definition IGameConnectionListener.h:5
Definition ILayoutServiceProvider.h:5
Definition IMinecraftGame.h:5
Definition IMinecraftScreenModel.h:5
Definition INetworkGameConnector.h:5
Definition IOptionRegistry.h:5
Definition ISceneStack.h:5
Definition IScreenCapabilities.h:8
Definition ItemStackBase.h:44
Definition Value.h:16
Definition KeyboardRemappingLayout.h:5
Definition LayeredAbilities.h:20
Definition LevelData.h:55
Definition LevelSettings.h:38
Definition LocalPlayer.h:5
Definition MinecraftCommands.h:33
Definition MinecraftScreenModel.h:5
Definition Router.h:7
Definition PackManifest.h:39
Definition PlatformMultiplayerRestrictions.h:5
Definition PlatformUpsellDialog.h:5
Definition PlayerAchievementData.h:5
Definition PlayerListEntry.h:17
Definition ProgressHandler.h:5
Definition PropertyBag.h:8
Definition InvitesService.h:7
Definition ResourcePackManager.h:36
Definition SceneFactory.h:5
Definition SkinHandle.h:5
Definition SkinPackCollectionModel.h:5
Definition FriendList.h:7
Definition GameConnectionInfo.h:24
Definition IUserManager.h:7
Definition ProfileImageOptions.h:7
Definition TaskGroup.h:86
Definition ToastMessage.h:5
Definition WebviewInterface.h:5
Definition WireframeQueue.h:5
Definition UUID.h:8
Definition ActorUniqueID.h:5
Definition ClubModel.h:7
Definition ContentItem.h:5
Definition ContentLogMessage.h:5
Definition DownloadStateObject.h:5
Definition IEduCloudSaveSystem.h:7
Definition EducationLevelSettings.h:17
Definition SignOutResult.h:7
Definition InviteId.h:7
Definition Invite.h:7
Definition LevelSummary.h:30
Definition MinecraftScreenModelContext.h:5
Definition PDFOptions.h:5
Definition PackIdVersion.h:10
Definition PlayerInventorySlotData.h:8
Definition ConfigInfo.h:7
Definition Player.h:7
Definition RealmId.h:7
Definition ServerRegion.h:7
Definition WorldBackupList.h:7
Definition World.h:7
Definition MultiIdentitySigninResult.h:7
Definition PermissionCheckResult.h:7
Definition PlatformUserProfileData.h:7
Definition UserLinkedAccountsInfo.h:7
Definition XUID.h:10
Definition XboxLiveUserProfileData.h:7
Definition StoreDataDrivenScreenParams.h:5
Definition CredentialsObserver.h:7