192 virtual void onInitMinecraftGame() = 0;
195 virtual void onDestroyMinecraftGame() = 0;
199 ::Bedrock::NotNullNonOwnerPtr<::Core::FilePathManager>
const&,
203 ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager>
const&,
209 virtual void initSceneFactory(::std::unique_ptr<::SceneFactory>, ::std::unique_ptr<::OreUI::SceneProvider>) = 0;
212 virtual void setUiRouter(::std::unique_ptr<::OreUI::Router>) = 0;
215 virtual void initGraphics() = 0;
218 virtual void stop() = 0;
221 virtual void teardown() = 0;
224 virtual void preShutDown() = 0;
230 virtual ::std::optional<::Social::GameConnectionInfo> getGameConnectionInfo() = 0;
233 virtual void onStartJoinGame(
bool, ::std::string
const&,
int, ::Social::MultiplayerServiceIdentifier) = 0;
236 virtual void onCancelJoinGame() = 0;
239 virtual void requestLeaveGameAsync() = 0;
242 virtual void requestLeaveGame(
bool,
bool) = 0;
245 virtual void stopPlayScreen() = 0;
248 virtual bool isLeaveGameDone()
const = 0;
251 virtual void setupPlayScreenForLeaveGame() = 0;
254 virtual void preCacheOutOfGameViews() = 0;
257 virtual void resetPrimaryClient() = 0;
260 virtual void resetGameSession() = 0;
263 virtual void tick() = 0;
269 virtual bool update(
bool) = 0;
272 virtual void preFrameTick() = 0;
275 virtual void endFrame() = 0;
278 virtual float getFrameAlpha() = 0;
281 virtual void startSubClientLateJoin(
bool, ::std::unique_ptr<::GameModuleClient>) = 0;
285 setupClientGame(::std::function<
void(::ClientGameSetupResult)>&&,
bool, ::std::unique_ptr<::GameModuleClient>) = 0;
288 virtual ::std::shared_ptr<::Bedrock::Threading::IAsyncResult<::ClientGameSetupResult>>
289 setupClientGame(
bool, ::std::unique_ptr<::GameModuleClient>) = 0;
292 virtual ::BlockSource* getRegion() = 0;
295 virtual ::LocalPlayer* getLocalPlayer()
const = 0;
298 virtual void setupPrimaryClientEditorManager() = 0;
301 virtual ::Bedrock::NonOwnerPointer<::Editor::IEditorPlayer> getLocalEditorPlayer()
const = 0;
304 virtual ::Bedrock::NonOwnerPointer<::Editor::IEditorManager> getEditorManager()
const = 0;
307 virtual bool isPlayerInEditor()
const = 0;
310 virtual ::LocalPlayerChangedConnector getLocalPlayerChangedConnector() = 0;
313 virtual ::WeakEntityRef getLocalUser()
const = 0;
316 virtual ::Actor* getCameraActor()
const = 0;
319 virtual void setCameraActor(
::Actor*) = 0;
322 virtual ::ListenerState
const* getListenerState()
const = 0;
325 virtual ::Actor* getCameraTargetActor()
const = 0;
328 virtual void setCameraTargetActor(
::Actor*) = 0;
331 virtual ::WeakEntityRef getCameraEntity()
const = 0;
340 virtual ::HitResult
const& getLatestHitResult()
const = 0;
343 virtual bool isLeavingGame()
const = 0;
346 virtual bool isDestroyingGame()
const = 0;
349 virtual bool isShuttingDown()
const = 0;
352 virtual bool useLowFrequencyUIRender()
const = 0;
355 virtual bool isSplitScreenActive()
const = 0;
358 virtual bool isVRClient()
const = 0;
361 virtual bool isARClient()
const = 0;
364 virtual bool isARVRClient()
const = 0;
367 virtual bool isHoloviewerMode()
const = 0;
370 virtual bool isHoloscreenMode()
const = 0;
373 virtual bool isLivingroomMode()
const = 0;
376 virtual bool isExitingLevel()
const = 0;
379 virtual bool isNotVLRMode()
const = 0;
382 virtual bool isHoloRealityMode()
const = 0;
385 virtual bool isRealityFullVRMode()
const = 0;
388 virtual bool isInBedScreen()
const = 0;
391 virtual bool isInDeathScreen()
const = 0;
394 virtual bool isUsingPauseScreen() = 0;
397 virtual bool isKeyboardEnabled()
const = 0;
400 virtual bool isVRTransitioning()
const = 0;
403 virtual bool hasCommands()
const = 0;
406 virtual float getHoloviewerScale()
const = 0;
409 virtual int getSplitScreenCount()
const = 0;
412 virtual bool isStereoRendering()
const = 0;
415 virtual bool isShowingLoadingScreen()
const = 0;
418 virtual bool shouldDisconnectOnAppSuspended()
const = 0;
421 virtual bool isGamePlayTipsEnabled()
const = 0;
424 virtual bool isPlatformNX()
const = 0;
430 virtual bool isValidCrossPlatformSkin()
const = 0;
433 virtual bool isCurrentSkinPlatformLocked()
const = 0;
436 virtual bool isSelectedSkinInitialized()
const = 0;
439 virtual ::SplitScreenInfo getSplitScreenInfo()
const = 0;
442 virtual int getCurrentMaxGUIScaleIndex()
const = 0;
445 virtual float const& getRealityModeFrameFactor()
const = 0;
448 virtual void setRealityModeFrameFactor(
float const&) = 0;
451 virtual bool getRealityModeToggleTriggered()
const = 0;
454 virtual void setRealityModeToggleTriggered(
bool) = 0;
457 virtual bool getHandlingControllerDisconnect() = 0;
460 virtual void setOpenControllerDisconnectScreen(
bool) = 0;
463 virtual ::ClientPlayMode getClientPlayMode()
const = 0;
466 virtual void setClientPlayMode(::ClientPlayMode
const&) = 0;
469 virtual bool getLivingRoomForCredits()
const = 0;
472 virtual void setLivingRoomForCredits(
bool) = 0;
475 virtual ::std::function<void()> getCreditsCallback() = 0;
478 virtual void setCreditsCallback(::std::function<
void()>) = 0;
481 virtual void setupTransitionForCredits(::std::function<
void()>) = 0;
484 virtual void refreshScreenSizeData() = 0;
487 virtual void onScreenSizeChanged(
int,
int,
float) = 0;
490 virtual void onGuiScaleOffsetChanged() = 0;
493 virtual void onSafeZoneChanged() = 0;
496 virtual bool hasDismissedNewPlayerFlow()
const = 0;
499 virtual void quit(::std::string
const&, ::std::string
const&) = 0;
502 virtual ::IMinecraftGame& getMinecraftGame_DEPRECATED()
const = 0;
505 virtual ::IClientInstances& getClientInstances()
const = 0;
508 virtual ::World::WorldSystem& getWorldSystem()
const = 0;
511 virtual ::Bedrock::NotNullNonOwnerPtr<::Automation::AutomationClient> getAutomationClient()
const = 0;
514 virtual ::Bedrock::NonOwnerPointer<::EDUSystems> getEDUSystems() = 0;
517 virtual ::Bedrock::NonOwnerPointer<::EDUSystems const> getEDUSystems()
const = 0;
520 virtual ::IMinecraftEventing& getEventing()
const = 0;
523 virtual ::IConnectionEventing& getConnectionEventing()
const = 0;
526 virtual ::FontHandle getFontHandle()
const = 0;
529 virtual ::FontHandle getRuneFontHandle()
const = 0;
532 virtual ::FontHandle getUnicodeFontHandle()
const = 0;
535 virtual ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup> getGeometryGroup()
const = 0;
538 virtual ::Bedrock::NotNullNonOwnerPtr<::BlockCullingGroup> getBlockCullingGroup()
const = 0;
541 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::MultiplayerServiceManager> getMultiplayerServiceManager()
const = 0;
544 virtual ::IResourcePackRepository& getResourcePackRepository()
const = 0;
547 virtual ::ResourcePackManager& getResourcePackManager()
const = 0;
550 virtual ::PackManifestFactory& getPackManifestFactory() = 0;
553 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> getKeyProvider()
const = 0;
556 virtual ::PacksInfoData
const& getHostSpecifiedPacks()
const = 0;
559 virtual ::std::shared_ptr<::SkinRepository> getSkinRepository()
const = 0;
562 virtual ::SkinRepositoryClientInterface& getSkinRepositoryClientInterface()
const = 0;
565 virtual ::PersonaRepository& getPersonaRepository()
const = 0;
568 virtual ::MarketplaceServicesManager& getMarketplaceServicesManager()
const = 0;
571 virtual ::Bedrock::NotNullNonOwnerPtr<::StoreCatalogRepository> getStoreCatalogRepository() = 0;
574 virtual ::std::shared_ptr<::mce::TextureGroup> getTextureGroup()
const = 0;
577 virtual ::Bedrock::NotNullNonOwnerPtr<::mce::TextureGroup> getStoreCacheTextures()
const = 0;
580 virtual ::Bedrock::NotNullNonOwnerPtr<::MinecraftGraphics> getMinecraftGraphics()
const = 0;
583 virtual ::Bedrock::NotNullNonOwnerPtr<::IUIRepository> getUIRepository()
const = 0;
586 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> getUserManager()
const = 0;
589 virtual ::Bedrock::NotNullNonOwnerPtr<::TrialManager> getTrialManager()
const = 0;
592 virtual bool wantToQuit()
const = 0;
595 virtual bool isPrimaryLevelCrossPlatformMultiplayer()
const = 0;
598 virtual bool isPrimaryLevelMultiplayer()
const = 0;
601 virtual bool isAdhocEnabled()
const = 0;
604 virtual bool isMarketplaceDisabled()
const = 0;
607 virtual ::std::pair<::StoreErrorCodes, ::std::string>
const getMarketplaceDisabledReasonWithErrorCode()
const = 0;
610 virtual void linkToOffer(::std::string
const&,
bool) = 0;
613 virtual void linkToPage(::std::string
const&) = 0;
616 virtual void linkTo3PServerOffers(::std::string
const&, ::std::string
const&) = 0;
619 virtual void navigateToMarketplaceInventoryScreen(::InventoryTabIndex) = 0;
622 virtual void navigateToStoreHomeScreen() = 0;
625 virtual void navigateToCoinPurchaseScreen(
int, ::std::function<
void(
bool,
int)>) = 0;
628 virtual void navigateToPurchaseOfferScreen(
::StoreCatalogItem&, ::StoreNavigationOrigin,
bool const) = 0;
631 virtual void navigateToDressingRoomOfferScreen(::std::string
const&) = 0;
634 virtual bool navigateToProfileScreen(::std::string
const&,
bool const) = 0;
637 virtual void navigateToServersScreen(
bool const) = 0;
640 virtual void navigateToHowToPlayScreen(::std::string
const&) = 0;
643 virtual void navigateToGatheringInfoScreen(
bool) = 0;
646 virtual void navigateToMarketplacePassPDPScreen(::MarketplacePassTabIndex) = 0;
649 virtual void navigateToRealmsStoriesTransitionScreen(
::Realms::World const&) = 0;
652 virtual void tryPushLeaveGameScreen() = 0;
655 virtual void tryStartDayOneExperience() = 0;
658 virtual bool isReadyToRender()
const = 0;
661 virtual void onDimensionChangedEvent() = 0;
664 virtual void onGameEventNotification(::ui::GameEventNotification) = 0;
667 virtual ::std::string getTopScreenName()
const = 0;
670 virtual void setLeaveGameInProgressAsReadyToContinue() = 0;
673 virtual void stopDestroying() = 0;
676 virtual void onClientCreatedLevel(
682 virtual uint64 getClientRandomId()
const = 0;
685 virtual ::PlayerAuthentication& getPlayerAuthentication() = 0;
688 virtual ::std::weak_ptr<::PlayerAuthentication> getWeakPlayerAuthentication() = 0;
691 virtual void registerToUserManager(::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager>
const&,
int) = 0;
694 virtual void resumeWithUserManager(::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager>
const&,
int) = 0;
697 virtual void createPlayerAuthentication(::std::string
const&) = 0;
700 virtual void createPlayerAuthentication(uint64, ::std::string
const&) = 0;
703 virtual ::std::string getPlatformId()
const = 0;
706 virtual ::std::string getPlatformOnlineId()
const = 0;
709 virtual bool isHoloCursorNeeded()
const = 0;
712 virtual bool useController()
const = 0;
715 virtual bool useTouchscreen()
const = 0;
718 virtual bool getMouseGrabbed()
const = 0;
721 virtual bool currentInputModeIsGamePadOrMotionController()
const = 0;
724 virtual bool currentInputModeIsMouseAndKeyboard()
const = 0;
727 virtual bool getForceMonoscopic()
const = 0;
730 virtual bool allowPicking()
const = 0;
733 virtual bool isShowingMenu()
const = 0;
736 virtual bool isShowingProgressScreen()
const = 0;
739 virtual bool isShowingWorldProgressScreen()
const = 0;
742 virtual bool isShowingRealmsProgressScreen()
const = 0;
745 virtual bool isShowingDeathScreen()
const = 0;
748 virtual bool isShowingServerForm()
const = 0;
751 virtual bool isScreenReplaceable()
const = 0;
754 virtual bool isInWorldAndNotShowingAnyMenuScreens()
const = 0;
757 virtual bool isWorldActive()
const = 0;
760 virtual bool isInRealm() = 0;
763 virtual bool readyForShutdown()
const = 0;
766 virtual bool isPrimaryClient()
const = 0;
769 virtual bool isEduMode()
const = 0;
772 virtual bool isGamepadCursorEnabled()
const = 0;
775 virtual bool isInControlCustomization()
const = 0;
778 virtual ::Bedrock::NotNullNonOwnerPtr<::Minecraft> getServerData() = 0;
781 virtual ::Bedrock::NotNullNonOwnerPtr<::Minecraft const> getServerData()
const = 0;
784 virtual ::MultiPlayerLevel* getLevel() = 0;
787 virtual ::MultiPlayerLevel
const* getLevel()
const = 0;
790 virtual bool hasLevel()
const = 0;
793 virtual bool isPreGame()
const = 0;
796 virtual bool isInMultiplayerGame()
const = 0;
799 virtual bool isMultiPlayerClient()
const = 0;
802 virtual ::IOptions& getOptions() = 0;
805 virtual ::IOptions
const& getOptions()
const = 0;
808 virtual ::std::shared_ptr<::Options> getOptionsPtr() = 0;
811 virtual ::std::shared_ptr<::Options const>
const getOptionsPtr()
const = 0;
814 virtual void setUser(::std::shared_ptr<::Social::User>
const&) = 0;
817 virtual ::std::shared_ptr<::Social::User> getUser() = 0;
820 virtual ::std::shared_ptr<::Social::User const>
const getUser()
const = 0;
823 virtual ::Option
const& getShowLearningPromptsOption()
const = 0;
826 virtual ::Option& getShowControlTipsOption() = 0;
829 virtual ::Option& getShowControlTipsOverrideOption() = 0;
832 virtual double getControlTipsTimeElapsed()
const = 0;
835 virtual void setControlTipsTimeElapsedStart() = 0;
838 virtual ::GameRenderer& getGameRenderer()
const = 0;
841 virtual ::Bedrock::NonOwnerPointer<::HolosceneRenderer> getHolosceneRenderer()
const = 0;
844 virtual ::LevelRenderer* getLevelRenderer()
const = 0;
847 virtual ::LevelRendererCameraProxy* getLevelRendererCameraProxy()
const = 0;
850 virtual ::Bedrock::NonOwnerPointer<::CameraRegistry> getCameraRegistry() = 0;
853 virtual ::Bedrock::NonOwnerPointer<::CameraRegistry const> getCameraRegistry()
const = 0;
856 virtual ::Bedrock::NonOwnerPointer<::EntitySystems> getCameraSystems() = 0;
859 virtual ::LightTexture* getLightTexture() = 0;
865 virtual ::mce::ViewportInfo
const& getViewportInfo()
const = 0;
871 virtual ::Vec2 getNormalizedViewportSize()
const = 0;
874 virtual void updateChunkRadius() = 0;
880 virtual ::mce::Texture* getUITexture() = 0;
886 virtual ::mce::Texture* getLevelTexture() = 0;
892 virtual ::mce::TexturePtr getUICursorTexture()
const = 0;
895 virtual ::mce::Camera& getCamera() = 0;
898 virtual ::ShaderColor& getShaderColor() = 0;
901 virtual ::ShaderColor& getDarkShaderColor() = 0;
904 virtual void clearGraphicsCache() = 0;
910 virtual bool shouldRenderUICursor()
const = 0;
913 virtual bool getRenderPlayerModel()
const = 0;
916 virtual ::DeferredLighting& getDeferredLighting() = 0;
919 virtual float getGuiScale()
const = 0;
922 virtual ::Option
const& getGuiScaleOption()
const = 0;
925 virtual int getGuiScaleOffset()
const = 0;
928 virtual void setGuiScaleOffset(
int) = 0;
934 virtual ::Bedrock::NotNullNonOwnerPtr<::GuiData> getGuiData() = 0;
937 virtual ::Bedrock::NotNullNonOwnerPtr<::GuiData const> getGuiData()
const = 0;
940 virtual ::GuidedFlowManager& getGuidedFlowManager() = 0;
943 virtual ::PixelCalc
const& getDpadScale()
const = 0;
946 virtual ::Bedrock::NotNullNonOwnerPtr<::DateManager const> getDateManager()
const = 0;
949 virtual void addOverrideHoursToDateTime(uint
const) = 0;
952 virtual ::ToastManager& getToastManager() = 0;
955 virtual ::ClipboardProxy<::ApplicationSignal::ClipboardCopy, ::ApplicationSignal::ClipboardPasteRequest>&
956 getClipboardManager() = 0;
959 virtual ::AbstractScene* getTopScene() = 0;
962 virtual ::AbstractScene
const* getTopScene()
const = 0;
965 virtual ::AbstractScene* getActiveScene() = 0;
968 virtual ::AbstractScene
const* getActiveScene()
const = 0;
971 virtual ::SceneFactory& getSceneFactory()
const = 0;
974 virtual ::OreUI::SceneProvider& getSceneProvider()
const = 0;
977 virtual ::WeakRef<::OreUI::UIBlockThumbnailAtlasManager> getOreUIBlockThumbnailAtlasManager()
const = 0;
980 virtual ::ui::ScreenTechStackSelector& getScreenTechStackSelector() = 0;
983 virtual ::Bedrock::NotNullNonOwnerPtr<::SceneStack const> getClientSceneStack()
const = 0;
986 virtual ::Bedrock::NotNullNonOwnerPtr<::SceneStack> getClientSceneStack() = 0;
989 virtual ::OreUI::Router& getClientUIRouter()
const = 0;
992 virtual ::ISceneStack& getMainSceneStackInterface() = 0;
995 virtual ::Bedrock::NotNullNonOwnerPtr<::SceneStack> getMainSceneStack() = 0;
998 virtual ::Bedrock::NotNullNonOwnerPtr<::SceneStack const> getMainSceneStack()
const = 0;
1001 virtual ::Bedrock::NotNullNonOwnerPtr<::SceneStack const> getCurrentSceneStack()
const = 0;
1004 virtual ::Bedrock::NotNullNonOwnerPtr<::SceneStack> getCurrentSceneStack() = 0;
1007 virtual ::OreUI::Router& getCurrentUIRouter() = 0;
1010 virtual ::OreUI::Router
const& getCurrentUIRouter()
const = 0;
1013 virtual ::OreUI::ITelemetry& getOreUITelemetry() = 0;
1016 virtual ::Bedrock::NotNullNonOwnerPtr<::SceneStack>
1017 prepareSceneFor(::ui::SceneType
const, ::std::function<::std::shared_ptr<::AbstractScene>()>) = 0;
1020 virtual ::CachedScenes& getCachedScenes() = 0;
1023 virtual ::std::string getScreenName()
const = 0;
1026 virtual ::std::string getScreenTelemetry()
const = 0;
1029 virtual ::ui::SceneType getTopSceneType()
const = 0;
1032 virtual ::MobEffectsLayout& getMobEffectsLayout() = 0;
1035 virtual ::std::string emoticonifyText(::std::string
const&)
const = 0;
1038 virtual ::std::string emoticonifyText(::std::string
const&,
bool) = 0;
1041 virtual void onMobEffectsChange() = 0;
1044 virtual void setUISizeAndScale(
int,
int,
float) = 0;
1047 virtual void forEachVisibleScreen(::std::function<
void(
::AbstractScene&)>,
bool) = 0;
1050 virtual void forEachScreen(::std::function<
bool(
::AbstractScene&)>,
bool) = 0;
1053 virtual void forEachScreenConst(::std::function<
bool(
::AbstractScene const&)>,
bool)
const = 0;
1056 virtual bool updateSceneStack() = 0;
1062 virtual void forEachAlwaysAcceptInputScreenWithTop(::std::function<
void(
::AbstractScene&)>) = 0;
1065 virtual void showPlayerProfile(::std::string
const&, ::std::string
const&) = 0;
1068 virtual bool isInGameInputEnabled()
const = 0;
1071 virtual void setInGameInputEnabled(
bool) = 0;
1074 virtual ::Vec2 getSafeZoneScale()
const = 0;
1077 virtual void verifySkinApproval(
1078 ::std::string
const&,
1079 ::std::function<
void(::std::string)>
const&,
1080 ::std::function<
void()>
const&
1084 virtual ::InputMode getCurrentInputMode()
const = 0;
1087 virtual bool isTouchGameplayAllowed()
const = 0;
1090 virtual ::Bedrock::NonOwnerPointer<::MinecraftInputHandler> getMinecraftInput()
const = 0;
1093 virtual void setHoloInput(::std::unique_ptr<::HolographicPlatform>) = 0;
1096 virtual ::HolographicPlatform& getHoloInput()
const = 0;
1099 virtual ::VoiceSystem& getVoiceSystem()
const = 0;
1102 virtual ::KeyboardManager& getKeyboardManager() = 0;
1105 virtual void setVoiceSystem(::std::unique_ptr<::VoiceSystem>) = 0;
1108 virtual void setLastPointerLocation(
float,
float,
float) = 0;
1111 virtual ::Vec3 getLastPointerLocation() = 0;
1114 virtual void clearTouchPointerLocations() = 0;
1117 virtual void clearTouchPointerLocation(
int) = 0;
1120 virtual void updateControlOptionState(uint,
bool) = 0;
1123 virtual void clearActiveControlOptions() = 0;
1126 virtual ::std::set<uint>
const& getActiveControlOptions()
const = 0;
1129 virtual ::std::vector<::OptionID> getActiveOptionIDs(::ControlOptionType)
const = 0;
1132 virtual void setNumberOfActiveConfigs(
int) = 0;
1135 virtual int getNumberOfActiveConfigs()
const = 0;
1138 virtual bool isNoConfigSelected()
const = 0;
1141 virtual void setNumberOfEnabledConfigs(
int) = 0;
1144 virtual int getNumberOfEnabledConfigs()
const = 0;
1147 virtual void setWYSIWYGState(::WYSIWYGState) = 0;
1150 virtual ::WYSIWYGState getWYSIWYGState()
const = 0;
1153 virtual void setOtherConfigsExistInThisCategory(
bool) = 0;
1156 virtual bool getOtherConfigsExistInThisCategory()
const = 0;
1159 virtual void updateTouchPointerLocation(
int,
float,
float) = 0;
1162 virtual ::Vec2 getTouchPointerLocation(
int)
const = 0;
1165 virtual void updateActionPointerId(
int) = 0;
1168 virtual int getActionPointerId()
const = 0;
1171 virtual bool shouldUseLastPointerLocationOnFocusChange() = 0;
1174 virtual void adjustGazeCursorByMouse(
float,
float) = 0;
1177 virtual bool currentScreenShouldStealMouse() = 0;
1180 virtual ::BuildActionIntention& getInProgressBAI()
const = 0;
1183 virtual bool newDictationDataAvailable()
const = 0;
1186 virtual void clearDictationDataAvailable() = 0;
1189 virtual ::std::string
const& getDictationText()
const = 0;
1192 virtual ::PacketSender& getPacketSender() = 0;
1195 virtual ::ClientNetworkSystem& getClientNetworkSystem() = 0;
1198 virtual ::ClientNetworkSystem
const& getClientNetworkSystem()
const = 0;
1201 virtual void setMoveTurnInput(::std::unique_ptr<::ClientMoveInputHandler>) = 0;
1204 virtual void setupPersistentControls(::InputMode) = 0;
1207 virtual void resetPlayerMovement() = 0;
1210 virtual void suspendPredictedMovement() = 0;
1213 virtual void onClientInputInitComplete() = 0;
1216 virtual ::glm::vec2 getGamepadCursorPosition()
const = 0;
1219 virtual void setClientInputHandler(::std::unique_ptr<::ClientInputHandler>) = 0;
1222 virtual ::ClientInputHandler* getInput()
const = 0;
1225 virtual int getControllerId()
const = 0;
1228 virtual bool hasConnectedController()
const = 0;
1231 virtual ::SubClientId getClientSubId()
const = 0;
1234 virtual void setSuspendInput(
bool) = 0;
1237 virtual void setSuspendDirectionalInput(
bool) = 0;
1240 virtual void setDisableInput(
bool) = 0;
1243 virtual void grabMouse() = 0;
1246 virtual void releaseMouse() = 0;
1249 virtual void refocusMouse(
bool) = 0;
1252 virtual void setMouseType(::ui::MousePointerType) = 0;
1255 virtual void resetBai(
int) = 0;
1258 virtual void clearInProgressBAI() = 0;
1261 virtual ::Bedrock::NotNullNonOwnerPtr<::SoundEngine> getSoundEngine()
const = 0;
1264 virtual ::MusicManager
const* getMusicManager()
const = 0;
1267 virtual void play(::std::string
const&,
::Vec3 const&,
float,
float) = 0;
1270 virtual void playUI(::std::string
const&,
float,
float) = 0;
1273 virtual void muteAudio() = 0;
1276 virtual void unMuteAudio() = 0;
1279 virtual void fadeOutMusic()
const = 0;
1282 virtual ::TaskGroup& getTaskGroup() = 0;
1285 virtual void onFullVanillaPackOnStack() = 0;
1288 virtual bool isFullVanillaPackOnStack()
const = 0;
1291 virtual void onPlayerLoaded(
::Player&) = 0;
1294 virtual void setClientGameMode(::GameType) = 0;
1297 virtual void resetToDefaultGameMode() = 0;
1300 virtual ::IGameConnectionListener& getGameConnectionListener() = 0;
1303 virtual void connectToThirdPartyServer(::std::string
const&, ::std::string
const&,
int) = 0;
1309 virtual bool isReadyToReconnect()
const = 0;
1312 virtual bool checkForPiracy() = 0;
1318 virtual void updateControllerHandling() = 0;
1321 virtual void setBehaviorCommandCallback(::std::function<
void(::std::string
const&, ::BehaviorStatus)>) = 0;
1324 virtual void setBehaviorCommandStatus(::std::string
const&, ::BehaviorStatus) = 0;
1327 virtual void setConnectGamepadScreenActive(
bool) = 0;
1333 virtual ::Bedrock::NotNullNonOwnerPtr<::DevConsoleLogger> getDevConsoleLogger()
const = 0;
1336 virtual ::std::shared_ptr<::FileDataRequest> requestImageFromUrl(
1337 ::std::string
const&,
1342 virtual void initializeRenderResources() = 0;
1345 virtual void postInitRenderResources() = 0;
1348 virtual void onAppSuspended() = 0;
1351 virtual void onAppSuspensionDisconnect() = 0;
1354 virtual void onAppResumed() = 0;
1357 virtual void onActiveResourcePacksChanged(::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup>
const&) = 0;
1360 virtual void reloadEntityRenderers(::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup>
const&);
1363 virtual ::BlockTessellator& getBlockTessellator() = 0;
1366 virtual ::BlockActorRenderDispatcher& getBlockEntityRenderDispatcher() = 0;
1369 virtual ::std::shared_ptr<::ActorRenderDispatcher> getEntityRenderDispatcher() = 0;
1372 virtual ::ActorBlockRenderer& getEntityBlockRenderer() = 0;
1375 virtual ::ItemInHandRenderer* getItemInHandRenderer() = 0;
1378 virtual ::ItemRenderer* getItemRenderer() = 0;
1381 virtual ::HudIconActorRenderer* getHudIconActorRenderer() = 0;
1384 virtual ::std::deque<::std::string>& getSentMessageHistory() = 0;
1387 virtual ::std::deque<::std::string>& getDevConsoleMessageHistory() = 0;
1390 virtual ::Bedrock::NotNullNonOwnerPtr<::ProfanityContext> getProfanityContext()
const = 0;
1393 virtual void initTTSClient(::std::shared_ptr<::TextToSpeechClient>) = 0;
1396 virtual ::std::shared_ptr<::TextToSpeechClient> getTTSClient() = 0;
1399 virtual ::std::shared_ptr<::TextToSpeechClient const> getTTSClient()
const = 0;
1402 virtual ::std::shared_ptr<::ITTSEventManager> getTTSEventManager() = 0;
1406 addTTSMessage(::std::string
const&, ::ProfanityFilterContext,
bool, ::std::string
const&,
bool,
bool) = 0;
1409 virtual void initCommands() = 0;
1412 virtual uint getUserId()
const = 0;
1415 virtual bool isPrimaryUser()
const = 0;
1418 virtual double getServerConnectionTime()
const = 0;
1421 virtual ::ClientHMDState& getHMDState() = 0;
1424 virtual ::ClientHMDState
const& getHMDState()
const = 0;
1427 virtual void setServerPingTime(
int) = 0;
1430 virtual int getServerPingTime()
const = 0;
1433 virtual void setDefaultPlayscreenTab(::PlayScreenDefaultTab) = 0;
1436 virtual void setClientInstanceState(::ClientInstanceState
const&) = 0;
1442 virtual ::Bedrock::NotNullNonOwnerPtr<::UIEventCoordinator> getUIEventCoordinator() = 0;
1445 virtual ::Bedrock::NotNullNonOwnerPtr<::ClientInstanceEventCoordinator> getEventCoordinator() = 0;
1448 virtual ::ClientNetworkEventCoordinator& getClientNetworkEventCoordinator() = 0;
1451 virtual ::ClientScriptEventCoordinator& getClientScriptEventCoordinator() = 0;
1454 virtual void computeScreenCoordsFromScreenNormCoords(
float,
float,
short&,
short&) = 0;
1457 virtual ::std::chrono::steady_clock::time_point getNoBlockBreakUntil() = 0;
1460 virtual void setNoBlockBreakUntil(::std::chrono::steady_clock::time_point) = 0;
1463 virtual void setDictation(::std::string
const&) = 0;
1466 virtual void setNewDictationString(
bool) = 0;
1469 virtual ::GameModuleClient* getGameModule() = 0;
1472 virtual ::ClientHitDetectCoordinator& getHitEventCoordinator() = 0;
1475 virtual ::GameCallbacks& getGameCallbacks() = 0;
1478 virtual void setActiveFileStorageArea(::std::shared_ptr<::Core::FileStorageArea>) = 0;
1481 virtual void sendClientEnteredLevel() = 0;
1484 virtual ::HitDetectSystem* getHitDetectSystem() = 0;
1487 virtual bool isPlaying()
const = 0;
1490 virtual ::ClientInstanceState getClientInstanceState()
const = 0;
1493 virtual ::LatencyGraphDisplay* getLatencyGraphDisplay()
const = 0;
1496 virtual ::PlayerCapabilities::IClientController
const& getClientCapabilities()
const = 0;
1499 virtual ::cg::math::Rect<float>
1500 calculateViewPortModifiers(::SubClientId
const, uint64
const, ::SplitScreenDirection
const)
const = 0;
1503 virtual ::std::weak_ptr<::IClientInstance> getWeakPtrToThis() = 0;
1506 virtual ::ClientRequirementVerifier
const& getClientRequirementVerifier()
const = 0;
1509 virtual ::Bedrock::NotNullNonOwnerPtr<::FogDefinitionRegistry const> getFogDefinitionRegistry()
const = 0;
1512 virtual ::Bedrock::NotNullNonOwnerPtr<::FogDefinitionRegistry> getFogDefinitionRegistry() = 0;
1515 virtual ::Bedrock::NotNullNonOwnerPtr<::FogManager const> getFogManager()
const = 0;
1518 virtual ::Bedrock::NotNullNonOwnerPtr<::FogManager> getFogManager() = 0;
1521 virtual ::Bedrock::NotNullNonOwnerPtr<::ScreenLoadTimeTracker> getScreenLoadTimeTracker() = 0;
1524 virtual ::ItemRegistryRef getItemRegistry()
const = 0;
1527 virtual ::std::weak_ptr<::BlockTypeRegistry> getBlockRegistry()
const = 0;
1530 virtual ::Bedrock::NotNullNonOwnerPtr<::DisconnectionRequestHandler> getDisconnectionRequestHandler()
const = 0;
1533 virtual float getRemoteServerTimeMs()
const = 0;
1536 virtual void setRemoteServerTimeMs(
float) = 0;
1539 virtual float getRemoteServerNetworkTimeMs()
const = 0;
1542 virtual void setRemoteServerNetworkTimeMs(
float) = 0;
1545 virtual ::Bedrock::NonOwnerPointer<::ClientScriptManager> getClientScriptManager() = 0;
1548 virtual ::Scripting::ScriptEngine* getScriptingEngine() = 0;
1551 virtual ::Bedrock::NonOwnerPointer<::WorldTransferAgent>
const getWorldTransferAgent()
const = 0;
1554 virtual ::Bedrock::NotNullNonOwnerPtr<::PlayerReportHandler> getPlayerReportHandler() = 0;
1557 virtual void flagDisconnectionAndNotify(::Connection::DisconnectFailReason) = 0;
1563 virtual void setClientUpdateAndRenderThrottling(
bool,
int,
float) = 0;
1566 virtual bool isClientUpdateAndRenderThrottlingEnabled()
const = 0;
1569 virtual int getClientUpdateAndRenderThrottlingThreshold()
const = 0;
1572 virtual float getClientUpdateAndRenderThrottlingScalar()
const = 0;
1575 virtual bool isUserBanned()
const = 0;
1578 virtual void setupPauseManagers() = 0;
1581 virtual bool isEligibleForPauseFeature()
const = 0;
1584 virtual bool requestInGamePause(
bool) = 0;
1587 virtual void openContentLogHistory() = 0;
1590 virtual double getGameUpdateDurationInSeconds()
const = 0;