3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/game/DeferredTaskCategory.h"
7#include "mc/client/game/IClientInstances.h"
8#include "mc/client/game/IGameEventNotifier.h"
9#include "mc/client/game/IGameServerShutdown.h"
10#include "mc/client/game/IGameServerStartup.h"
11#include "mc/client/game/INetworkGameConnector.h"
12#include "mc/client/game/ISplitScreenChangedPublisher.h"
13#include "mc/client/game/IWorldTransfer.h"
14#include "mc/client/gui/GameEventNotification.h"
15#include "mc/client/gui/MousePointerType.h"
16#include "mc/client/social/UserPlatformConnectionResult.h"
17#include "mc/common/IMinecraftApp.h"
18#include "mc/common/SubClientId.h"
19#include "mc/deps/application/app_extensions/AppExtensionsOwner.h"
20#include "mc/deps/core/file/PathBuffer.h"
21#include "mc/deps/core/islands/AppIsland.h"
22#include "mc/deps/core/threading/Async.h"
23#include "mc/deps/core/threading/DeferredTasksManager.h"
24#include "mc/deps/core/utility/AutomaticID.h"
25#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
26#include "mc/deps/core/utility/NonOwnerPointer.h"
27#include "mc/deps/input/InputMode.h"
28#include "mc/deps/input/TextboxTextUpdateReason.h"
29#include "mc/events/NetworkType.h"
30#include "mc/platform/MultiplayerLockedContext.h"
31#include "mc/server/commands/test/TestAssetCommandType.h"
32#include "mc/server/commands/test/TestCommandType.h"
33#include "mc/sound/MusicRepeatMode.h"
102struct IEntitlementManager;
105struct IOfferRepository;
106struct IThirdPartyServerRepository;
112struct MarketplaceServicesManager;
127struct ServiceDrivenImageRepository;
128struct ServicesManager;
131struct StoreCatalogRepository;
137namespace ClientBlobCache {
struct Cache; }
142namespace OreUI {
struct Router; }
150namespace Realms {
struct World; }
156namespace Social {
struct User; }
159namespace mce {
class UUID; }
176 virtual void initialize() = 0;
178 virtual ~IMinecraftGame() ;
180 virtual void update() = 0;
182 virtual ::AppSystemRegistry& getAppSystemRegistry() = 0;
184 virtual ::EntityContext& getEntity()
const = 0;
186 virtual void logoffAllSubclients() = 0;
188 virtual void buildTreatmentPackStack(
bool)
const = 0;
190 virtual void queueSubclientRemoval(::SubClientId) = 0;
192 virtual ::std::shared_ptr<::mce::TextureGroup> getTextureGroup()
const = 0;
194 virtual ::Bedrock::NotNullNonOwnerPtr<::ResourceLoadManager> getResourceLoadManager() = 0;
196 virtual void handleReloadUIDefinitions() = 0;
198 virtual ::Bedrock::NotNullNonOwnerPtr<::IUIDefRepository> getUIDefRepo()
const = 0;
200 virtual bool canActivateKeyboard() = 0;
202 virtual void releaseClientSubId(::SubClientId) = 0;
204 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentTierManager const> getContentTierManager()
const = 0;
206 virtual ::Bedrock::NotNullNonOwnerPtr<::DevConsoleLogger> getDevConsoleLogger()
const = 0;
208 virtual void setDisableInputForAllOtherClients(
int,
bool) = 0;
210 virtual ::DeferredTasksManager<::DeferredTaskCategory>& getDeferredTasks() = 0;
212 virtual bool shouldShowRatingsPrompt()
const = 0;
214 virtual ::Bedrock::NotNullNonOwnerPtr<::ServerInstanceEventCoordinator> getServerInstanceEventCoordinator() = 0;
216 virtual bool isHostingLocalDedicatedServer()
const = 0;
218 virtual bool isLeaveGameDone()
const = 0;
220 virtual void destroyGame() = 0;
222 virtual bool isInGame()
const = 0;
224 virtual void startLeaveGame() = 0;
226 virtual bool isAudioInitialized()
const = 0;
228 virtual ::MusicManager
const* getMusicManager()
const = 0;
230 virtual ::MusicManager* getMusicManagerNonConst()
const = 0;
232 virtual ::Bedrock::NotNullNonOwnerPtr<::SoundEngine> getSoundEngine()
const = 0;
234 virtual void setTextboxText(::std::string
const&,
int const, ::TextboxTextUpdateReason) = 0;
236 virtual void onKeyboardDismissed(
int const) = 0;
238 virtual ::Bedrock::NotNullNonOwnerPtr<::ITextBoxController> getTextBoxController() = 0;
240 virtual void openPauseMenu() = 0;
242 virtual void setIsInGame(
bool) = 0;
244 virtual void createClientItemRegistry() = 0;
246 virtual bool hasNetworkPrivileges(
bool) = 0;
248 virtual ::Bedrock::NotNullNonOwnerPtr<::IThirdPartyServerRepository const>
249 getThirdPartyServerRepository()
const = 0;
251 virtual ::Bedrock::NotNullNonOwnerPtr<::IThirdPartyServerRepository> getThirdPartyServerRepository() = 0;
253 virtual ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> retrieveCIDToClientMap() = 0;
255 virtual ::std::map<::SubClientId, ::std::shared_ptr<::IClientInstance>>
const& getClientInstanceMap()
const = 0;
257 virtual void joinMultiplayerWithAddress(
258 ::Social::GameConnectionInfo,
260 ::std::string
const&,
261 ::std::string
const&,
266 virtual ::Bedrock::NotNullNonOwnerPtr<::IOfferRepository> getOfferRepository()
const = 0;
268 virtual ::Bedrock::NotNullNonOwnerPtr<::TrialManager> getTrialManager()
const = 0;
270 virtual bool isTrialManagerInitialized()
const = 0;
272 virtual ::InputMode getCurrentInputMode()
const = 0;
274 virtual void handleInputPaneHidden() = 0;
276 virtual bool getSuspended()
const = 0;
278 virtual bool isResuming()
const = 0;
280 virtual void setTestExecuteCommandCallback(
281 ::std::function<
void(::TestCommandType, ::std::vector<::std::string>
const&,
int)>
const&
284 virtual void setTestAssetCommandCallback(
285 ::std::function<
void(::TestAssetCommandType, ::std::vector<::std::string>
const&)>
const&
288 virtual void runTestExecuteCommandCallback(::TestCommandType, ::std::vector<::std::string>
const&,
int)
const = 0;
290 virtual void runTestAssetCommandCallback(::TestAssetCommandType, ::std::vector<::std::string>
const&)
const = 0;
292 virtual uint64 getClientInstanceCount()
const = 0;
294 virtual void setProfilerIsOn(
bool) = 0;
296 virtual ::LocalPlayer* getPrimaryLocalPlayer() = 0;
298 virtual ::LocalPlayer
const* getPrimaryLocalPlayer()
const = 0;
300 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> getUserManager()
const = 0;
302 virtual ::Bedrock::NotNullNonOwnerPtr<::IClientInstance> getPrimaryClientInstance() = 0;
304 virtual ::Bedrock::NotNullNonOwnerPtr<::IClientInstance const> getPrimaryClientInstance()
const = 0;
306 virtual ::ItemRegistryRef getClientItemRegistry()
const = 0;
308 virtual bool isPrimaryClientInstanceReady()
const = 0;
310 virtual void ensureAllClientsAreLeaving()
const = 0;
312 virtual ::Bedrock::NotNullNonOwnerPtr<::ClientNetworkSystem> getClientNetworkSystemPtr() = 0;
314 virtual ::ClientNetworkSystem& getClientNetworkSystem() = 0;
316 virtual ::ClientNetworkSystem
const& getClientNetworkSystem()
const = 0;
318 virtual bool hasAllValidCrossPlatformSkin()
const = 0;
320 virtual ::Bedrock::NotNullNonOwnerPtr<::NewPlayerSystem> getNewPlayerSystem() = 0;
322 virtual ::Bedrock::NotNullNonOwnerPtr<::NewPlayerSystem const> getNewPlayerSystem()
const = 0;
324 virtual void createAndUploadWorldToRealm(
325 ::std::string
const&,
326 ::std::string
const&,
327 ::ContentIdentity
const&,
328 ::LevelSettings
const&,
330 ::std::function<
void(::Realms::World)>
333 virtual ::ILevelListCache& getLevelListCache() = 0;
335 virtual ::Bedrock::NotNullNonOwnerPtr<::Core::FilePathManager> getFilePathManager() = 0;
337 virtual void setUseFontOverrides(
bool useOverrides) = 0;
339 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getFontHandle()
const = 0;
341 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getUIFontHandle()
const = 0;
343 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getRuneFontHandle()
const = 0;
345 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getUnicodeFontHandle()
const = 0;
347 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getSmoothFontHandle()
const = 0;
349 virtual void onClientLevelExit(::IClientInstance&, uint) = 0;
351 virtual bool isLocalPlayer(::ActorUniqueID
const&)
const = 0;
353 virtual ::IMinecraftEventing& getEventing()
const = 0;
355 virtual void reloadAnimationAndGeometryData(
bool) = 0;
357 virtual ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup> getGeometryGroup()
const = 0;
359 virtual ::Bedrock::NotNullNonOwnerPtr<::BlockCullingGroup> getBlockCullingGroup()
const = 0;
361 virtual ::Bedrock::NotNullNonOwnerPtr<::ClientBlockPipeline::SchematicsRepository>
362 getSchematicsRepository()
const = 0;
364 virtual ::ParticleEffectGroup& getParticleEffectGroup()
const = 0;
366 virtual ::DeferredLighting& getDeferredLighting()
const = 0;
368 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::MultiplayerServiceManager> getMultiplayerServiceManager()
const = 0;
370 virtual ::IResourcePackRepository& getResourcePackRepository()
const = 0;
372 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> getKeyProvider()
const = 0;
374 virtual ::ResourcePackManager& getResourcePackManager()
const = 0;
376 virtual ::ResourcePackManager& getServerResourcePackManager() = 0;
378 virtual ::PackManifestFactory& getPackManifestFactory() = 0;
380 virtual ::PlayerMessagingService& getPlayerMessagingService() = 0;
382 virtual ::std::shared_ptr<::SkinRepository> getSkinRepository()
const = 0;
384 virtual ::PersonaRepository& getPersonaRepository()
const = 0;
386 virtual ::MarketplaceServicesManager& getMarketplaceServicesManager()
const = 0;
388 virtual ::Bedrock::NotNullNonOwnerPtr<::mce::TextureGroup> getStoreCacheTextures()
const = 0;
390 virtual ::Bedrock::NotNullNonOwnerPtr<::MinecraftGraphics> getMinecraftGraphics() = 0;
392 virtual ::Bedrock::NotNullNonOwnerPtr<::IUIRepository> getUIRepository()
const = 0;
394 virtual bool isPrimaryLevelCrossPlatformMultiplayer()
const = 0;
396 virtual bool isPrimaryLevelMultiplayer()
const = 0;
398 virtual ::std::string getMultiplayerDisabledTextTitle(::MultiplayerLockedContext)
const = 0;
400 virtual ::std::string getMultiplayerDisabledTextBody(::MultiplayerLockedContext)
const = 0;
402 virtual void setRenderingSize(
int,
int) = 0;
404 virtual void recalculateScene() = 0;
406 virtual void setUISizeAndScale(
int,
int,
float) = 0;
408 virtual bool isReadyToRender()
const = 0;
410 virtual void onDimensionChanged() = 0;
412 virtual void setLeaveGameInProgressAsReadyToContinue() = 0;
414 virtual void onClientCreatedLevel(::IClientInstance&) = 0;
416 virtual uint64 generateClientId(
bool,
bool&, uint64, ::std::shared_ptr<::Social::User>) = 0;
418 virtual ::std::weak_ptr<::RealmsAPI> getRealms() = 0;
420 virtual ::Realms::ContentService& getRealmsContentService() = 0;
422 virtual bool getMouseGrabbed()
const = 0;
424 virtual void navigateToPlayScreenFriendsTab() = 0;
426 virtual bool isInRealm()
const = 0;
428 virtual bool isShowingLoadingScreen()
const = 0;
430 virtual bool isRenderingLoadingScreen()
const = 0;
432 virtual ::Bedrock::NotNullNonOwnerPtr<::StoreCatalogRepository> getStoreCatalog()
const = 0;
434 virtual ::ServiceDrivenImageRepository& getServiceImageRepository()
const = 0;
436 virtual ::Bedrock::NotNullNonOwnerPtr<::LibraryRepository> getLibraryRepository()
const = 0;
438 virtual ::GameRenderer& getGameRenderer()
const = 0;
440 virtual ::Bedrock::NotNullNonOwnerPtr<::TextureAtlas const> getTextureAtlas()
const = 0;
442 virtual ::Bedrock::NotNullNonOwnerPtr<::TextureAtlas> getTextureAtlas() = 0;
444 virtual bool hasActorResourceDefinitionGroup()
const = 0;
446 virtual ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup const>
447 getActorResourceDefinitionGroup()
const = 0;
449 virtual ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup> getActorResourceDefinitionGroupMutable() = 0;
451 virtual ::Bedrock::NotNullNonOwnerPtr<::RenderControllerGroup const> getRenderControllerGroup()
const = 0;
453 virtual ::Bedrock::NotNullNonOwnerPtr<::RenderControllerGroup> getRenderControllerGroup() = 0;
455 virtual int getMaxPlayerCount()
const = 0;
457 virtual ::Bedrock::Threading::Async<::Core::PathBuffer<::std::string>> requestScreenshot(::ScreenshotOptions&) = 0;
459 virtual ::Bedrock::NotNullNonOwnerPtr<::OreUI::IResourceAllowList> getOreUIResourceAllowList() = 0;
461 virtual ::Bedrock::NotNullNonOwnerPtr<::DateManager> getDateManager()
const = 0;
463 virtual ::PixelCalc
const& getDpadScale()
const = 0;
465 virtual void setKeyboardForcedHeight(
float,
bool) = 0;
467 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack const> getMainSceneStack()
const = 0;
469 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> getMainSceneStack() = 0;
471 virtual ::OreUI::Router& getUIRouter() = 0;
473 virtual ::OreUI::DataProviderManager_DEPRECATED& getDataProviderManager() = 0;
475 virtual uint getUIRenderClientMask()
const = 0;
477 virtual bool useMinecraftVersionOfXBLUI()
const = 0;
479 virtual ::Bedrock::NotNullNonOwnerPtr<::PersonaService> getPersonaService()
const = 0;
481 virtual ::Bedrock::NotNullNonOwnerPtr<::GatheringManager> getGatheringManager()
const = 0;
483 virtual ::Bedrock::NotNullNonOwnerPtr<::CDNService> getCDNService()
const = 0;
485 virtual ::Bedrock::NotNullNonOwnerPtr<::ContentCatalogService> getContentCatalogService()
const = 0;
487 virtual ::Bedrock::NotNullNonOwnerPtr<::FlightingService> getFlightingService()
const = 0;
489 virtual ::std::shared_ptr<::FlightingService> getFlightingServicePtr()
const = 0;
491 virtual ::Bedrock::NotNullNonOwnerPtr<::TreatmentPackDownloadMonitor const>
492 getTreatmentPackDownloadMonitor()
const = 0;
494 virtual ::SceneFactory& getPrimarySceneFactory()
const = 0;
496 virtual ::Bedrock::NonOwnerPointer<::MinecraftInputHandler> getInput()
const = 0;
498 virtual void grabMouse() = 0;
500 virtual void releaseMouse() = 0;
502 virtual void refocusMouse(
bool) = 0;
504 virtual void setMouseType(::ui::MousePointerType) = 0;
506 virtual void play(::std::string
const&, ::Vec3
const&,
float,
float) = 0;
508 virtual void playUI(::std::string
const&,
float,
float) = 0;
510 virtual void fadeOutMusic() = 0;
512 virtual void onPlayerLoaded(::IClientInstance&, ::Player&) = 0;
514 virtual bool checkForPiracy()
const = 0;
516 virtual ::Bedrock::NotNullNonOwnerPtr<::CubemapBackgroundResources> getCubemapBackgroundResources() = 0;
518 virtual void setAppWillTerminate(
bool) = 0;
520 virtual ::ServerInstance* getServerInstance() = 0;
522 virtual ::Bedrock::NotNullNonOwnerPtr<::ServerInstance> getServerInstanceNonOwnPtr() = 0;
524 virtual void setLaunchedFromLegacyVersion(
bool) = 0;
526 virtual ::UIMeasureStrategy& getUIMeasureStrategy() = 0;
528 virtual void registerUpsellScreen() = 0;
530 virtual ::Bedrock::NotNullNonOwnerPtr<::WorldTemplateManager> getWorldTemplateManager()
const = 0;
532 virtual ::World::WorldSystem& getWorldSystem()
const = 0;
534 virtual bool isWorldSystemReady()
const = 0;
536 virtual ::Social::SocialSystem& getSocialSystem()
const = 0;
538 virtual ::std::optional<::Bedrock::NotNullNonOwnerPtr<::Parties::PartySystem>> getPartySystem()
const = 0;
540 virtual ::Bedrock::NotNullNonOwnerPtr<::Progress::ProgressTips> getUIProgressTips()
const = 0;
542 virtual ::Bedrock::NotNullNonOwnerPtr<::Realms::RealmsSystem> getRealmsSystem()
const = 0;
544 virtual ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager> getEntitlementManager() = 0;
546 virtual ::IDlcValidation& getDlcValidation() = 0;
548 virtual ::ServicesManager& getServicesManager() = 0;
550 virtual ::Bedrock::NotNullNonOwnerPtr<::SunsettingManager> getSunsettingManager() = 0;
552 virtual void pauseContentDownloads() = 0;
554 virtual void resumeContentDownloads() = 0;
556 virtual ::Bedrock::NotNullNonOwnerPtr<::IExternalServerFile> getExternalServer()
const = 0;
558 virtual bool isStartingGame()
const = 0;
560 virtual bool isSplitscreenJoinEnabled()
const = 0;
562 virtual bool canAddSplitscreenSubClient(
int)
const = 0;
564 virtual ::Bedrock::NotNullNonOwnerPtr<::LevelLoader> getLevelLoader() = 0;
566 virtual ::Bedrock::NotNullNonOwnerPtr<::ExternalContentManager> getContentManager() = 0;
568 virtual ::std::shared_ptr<::IClientInstance> tryGetClientInstanceFromPlayerUUID(::mce::UUID
const&)
const = 0;
570 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentAccessibilityProvider const> getAccessibilityProvider()
const = 0;
572 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentAccessibilityProvider> getAccessibilityProvider() = 0;
574 virtual ::Bedrock::NotNullNonOwnerPtr<::ContentAcquisition> getContentAcquisition()
const = 0;
576 virtual void onGameEventNotification(::ui::GameEventNotification) = 0;
578 virtual void setRealmsLoadingLink(
bool) = 0;
580 virtual ::Bedrock::NotNullNonOwnerPtr<::IApp> getApp() = 0;
582 virtual void clearCache() = 0;
584 virtual ::IContentManager& getResourceContentManager() = 0;
586 virtual ::Bedrock::NotNullNonOwnerPtr<::EmoticonManager const> getEmoticonManager()
const = 0;
588 virtual ::Bedrock::NotNullNonOwnerPtr<::TextToIconMapper const> getTextToIconMapper()
const = 0;
590 virtual ::Bedrock::NotNullNonOwnerPtr<::TextToIconMapper> getTextToIconMapper() = 0;
592 virtual void onPrimaryUserReconnect(::Social::UserPlatformConnectionResult,
bool) = 0;
594 virtual void setSmoothFontStyle() = 0;
596 virtual void setUIFontStyle() = 0;
598 virtual void copyInternalSettingsFolderToExternalLocation()
const = 0;
600 virtual void joinRealmFromInvite(::Realms::World
const&) = 0;
602 virtual void joinRealmFromConnectLink(::Realms::World
const&) = 0;
604 virtual ::Bedrock::NotNullNonOwnerPtr<::Realms::RealmsServices> getRealmsServices() = 0;
606 virtual ::std::weak_ptr<::ClubsService> getClubsService() = 0;
608 virtual ::std::shared_ptr<::Realms::GenericRequestServiceHandler> getGenericRealmsService() = 0;
610 virtual ::Bedrock::NotNullNonOwnerPtr<::Realms::SubscriptionService> getRealmsSubscriptionService() = 0;
612 virtual ::Bedrock::NotNullNonOwnerPtr<::ActiveDirectoryIdentity> getActiveDirectoryIdentity() = 0;
614 virtual ::PackSourceFactory& getPackSourceFactory()
const = 0;
616 virtual void displayActiveDirectoryLoginDialog() = 0;
618 virtual void resetInput() = 0;
620 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::PresenceManager> getPresenceManager() = 0;
622 virtual ::Bedrock::NotNullNonOwnerPtr<::GuiData> getPrimaryGuiData() = 0;
624 virtual bool isPrimaryUserSigninInProgress()
const = 0;
626 virtual void setupCommandParser(::IClientInstance&) = 0;
628 virtual void stopSound(::std::string
const& name) = 0;
630 virtual void stopSounds() = 0;
632 virtual ::PackDownloadManager& getPackDownloadManager() = 0;
634 virtual ::Bedrock::NonOwnerPointer<::LinkedAssetValidator> getLinkedAssetValidator()
const = 0;
636 virtual ::Bedrock::NonOwnerPointer<::LinkedAssetValidator> getLinkedAssetValidator() = 0;
638 virtual void addSubClientInstanceAndAssociateToUser(
int) = 0;
640 virtual void forEachClientInstance(::std::function<
void(::IClientInstance&)>) = 0;
642 virtual bool isInitialized()
const = 0;
644 virtual ::Bedrock::NotNullNonOwnerPtr<::SeasonsRenderer> getSeasonsRenderer() = 0;
646 virtual ::std::shared_ptr<::ActorAnimationGroup> getActorAnimationGroup()
const = 0;
648 virtual ::Bedrock::NotNullNonOwnerPtr<::ActorAnimationControllerGroup> getActorAnimationControllerGroup()
const = 0;
650 virtual bool isMultiplayerServiceManagerReady()
const = 0;
652 virtual ::Bedrock::NotNullNonOwnerPtr<::WebSocketCommManager> getWebSocketCommManager() = 0;
654 virtual void doPrimaryClientReadyWork(::std::function<
void()>) = 0;
656 virtual void doUserManagerReadyWork(::std::function<
void()>) = 0;
658 virtual ::Bedrock::NotNullNonOwnerPtr<::ScreenshotRecorder> getScreenshotRecorder() = 0;
660 virtual ::std::shared_ptr<::ClientBlobCache::Cache> getClientBlobCache() = 0;
662 virtual ::Bedrock::NonOwnerPointer<::ContentLogFileEndPoint>
const getContentFileLogEndPoint()
const = 0;
664 virtual ::Bedrock::NonOwnerPointer<::EDUSystems const> getEDUSystems()
const = 0;
666 virtual ::Bedrock::NonOwnerPointer<::EDUSystems> getEDUSystems() = 0;
668 virtual ::std::shared_ptr<::Options> getPrimaryUserOptions() = 0;
670 virtual ::std::shared_ptr<::Options const> getPrimaryUserOptions()
const = 0;
672 virtual void tryShowXblFirstLaunchScreen(
bool) = 0;
674 virtual ::Bedrock::PubSub::Subscription registerSplitScreenChangedListener(::std::function<
void(uchar)>)
const = 0;
676 virtual uchar getSplitScreenCount()
const = 0;
678 virtual ::IGameModuleApp& getGameModule() = 0;
680 virtual ::std::shared_ptr<void*> requestMusicDeferment() = 0;
682 virtual bool isMusicEnabled()
const = 0;
684 virtual void queueCustomMusic(::std::string
const&,
float,
float, ::MusicRepeatMode) = 0;
686 virtual void playCustomMusic(::std::string
const&,
float,
float, ::MusicRepeatMode) = 0;
688 virtual void stopCustomMusic(
float) = 0;
690 virtual void setMusicCommandVolumeMultiplier(
float) = 0;
692 virtual float calculateScreenSizeToResolutionScalar(
int const,
int const)
const = 0;
694 virtual ::Bedrock::NotNullNonOwnerPtr<::GlobalResourcesCrashRecovery const>
695 GetGlobalResourcesCrashRecovery()
const = 0;
697 virtual ::Bedrock::NotNullNonOwnerPtr<::LevelDbEnv> getLevelDbEnv() = 0;
699 virtual ::Bedrock::NonOwnerPointer<::ChunkSource> getClientGenChunkSource(::DimensionType
const&) = 0;
701 virtual bool isEditorModeEnabled()
const = 0;
703 virtual void setResetCallbackObject(::ResetCallbackObject*) = 0;
705 virtual void resetThreadCallbacks() = 0;
707 virtual void shutdownServer() = 0;
709 virtual ::Bedrock::NotNullNonOwnerPtr<::ProfanityContext> getProfanityContext() = 0;
711 virtual double getGameUpdateDurationInSeconds()
const = 0;
713 virtual ::std::tuple<bool, int> GetEcoModeSettings()
const = 0;
Definition ActiveDirectoryIdentity.h:33
Definition ActorAnimationControllerGroup.h:27
Definition ActorAnimationGroup.h:26
Definition AppExtensionsOwner.h:16
Definition AppSystemRegistry.h:11
Definition AppIsland.h:15
Definition EnableNonOwnerReferences.h:7
Definition Subscription.h:10
Definition ChunkSource.h:37
Definition ClientNetworkSystem.h:39
Definition ContentIdentity.h:8
Definition ContentLogFileEndPoint.h:15
Definition FilePathManager.h:18
Definition DateManager.h:14
Definition Dimension.h:85
Definition EDUSystems.h:25
Definition EntityContext.h:16
Definition FontHandle.h:5
Definition GameRenderer.h:5
Definition IClientInstance.h:5
Definition IClientInstances.h:5
Definition IContentAccessibilityProvider.h:13
Definition IContentKeyProvider.h:13
Definition IContentTierManager.h:13
Definition IGameEventNotifier.h:5
Definition IGameServerStartup.h:5
Definition ILevelListCache.h:27
Definition IMinecraftApp.h:19
Definition IMinecraftEventing.h:137
Definition IMinecraftGame.h:5
static MCAPI void ** $vftableForIGameEventNotifier()
static MCAPI void ** $vftableForIClientInstances()
static MCAPI void ** $vftableForIWorldTransfer()
static MCAPI void ** $vftableForINetworkGameConnector()
static MCAPI void ** $vftableForIGameServerStartup()
static MCAPI void ** $vftableForAppExtensionsOwner()
static MCAPI void ** $vftableForAppIsland()
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForISplitScreenChangedPublisher()
static MCAPI void ** $vftableForIGameServerShutdown()
static MCAPI void ** $vftableForIMinecraftApp()
Definition INetworkGameConnector.h:5
Definition IResourcePackRepository.h:34
Definition ISceneStack.h:5
Definition ISplitScreenChangedPublisher.h:5
Definition ITextBoxController.h:5
Definition ItemRegistryRef.h:36
Definition LevelDbEnv.h:8
Definition LevelSettings.h:39
Definition LinkedAssetValidator.h:8
Definition MinecraftGraphics.h:5
Definition PackManifestFactory.h:20
Definition PackSourceFactory.h:33
Definition RenderControllerGroup.h:5
Definition ResetCallbackObject.h:5
Definition ResourceLoadManager.h:18
Definition ResourcePackManager.h:29
Definition ServerInstanceEventCoordinator.h:18
Definition ServerInstance.h:57
Definition GameConnectionInfo.h:21
Definition IUserManager.h:34
Definition TextureAtlas.h:5
Definition UIMeasureStrategy.h:5
Definition WebSocketCommManager.h:14
Definition WorldTemplateManager.h:21
Definition TextureGroup.h:7
Definition ActorResourceDefinitionGroup.h:5
Definition ActorUniqueID.h:5
Definition BlockCullingGroup.h:5
Definition CDNService.h:5
Definition SchematicsRepository.h:7
Definition ClubsService.h:5
Definition ContentAcquisition.h:5
Definition ContentCatalogService.h:5
Definition ControllerIDtoClientMap.h:13
Definition CubemapBackgroundResources.h:5
Definition DeferredLighting.h:5
Definition DevConsoleLogger.h:5
Definition EmoticonManager.h:5
Definition ExternalContentManager.h:5
Definition FlightingService.h:5
Definition GatheringManager.h:5
Definition GeometryGroup.h:5
Definition GlobalResourcesCrashRecovery.h:5
Definition IContentManager.h:5
Definition IDlcValidation.h:5
Definition IExternalServerFile.h:5
Definition IGameModuleApp.h:5
Definition IGameServerShutdown.h:5
Definition IUIDefRepository.h:5
Definition IUIRepository.h:5
Definition IWorldTransfer.h:5
Definition LevelLoader.h:5
Definition LibraryRepository.h:5
Definition LocalPlayer.h:5
Definition MusicManager.h:5
Definition NewPlayerSystem.h:5
Definition DataProviderManager_DEPRECATED.h:7
Definition IResourceAllowList.h:7
Definition PackDownloadManager.h:5
Definition ParticleEffectGroup.h:5
Definition PartySystem.h:7
Definition PersonaRepository.h:5
Definition PersonaService.h:5
Definition PlayerMessagingService.h:5
Definition ProfanityContext.h:5
Definition ProgressTips.h:7
Definition ContentService.h:7
Definition GenericRequestServiceHandler.h:7
Definition RealmsServices.h:7
Definition RealmsSystem.h:7
Definition SubscriptionService.h:7
Definition SceneFactory.h:5
Definition ScreenshotOptions.h:5
Definition ScreenshotRecorder.h:5
Definition SeasonsRenderer.h:5
Definition SkinRepository.h:5
Definition MultiplayerServiceManager.h:7
Definition PresenceManager.h:7
Definition SocialSystem.h:7
Definition SoundEngine.h:5
Definition SunsettingManager.h:5
Definition TextToIconMapper.h:5
Definition TreatmentPackDownloadMonitor.h:5
Definition TrialManager.h:5
Definition WorldSystem.h:7