3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/certificates/identity/PlayerAuthenticationType.h"
7#include "mc/client/game/ClientGameSetupResult.h"
8#include "mc/client/game/ClientInstanceState.h"
9#include "mc/client/game/ControlOptionType.h"
10#include "mc/client/game/DiskStatus.h"
11#include "mc/client/game/IClientInstance.h"
12#include "mc/client/gui/GameEventNotification.h"
13#include "mc/client/gui/MousePointerType.h"
14#include "mc/client/gui/SceneType.h"
15#include "mc/client/gui/StoreNavigationOrigin.h"
16#include "mc/client/gui/screens/controllers/InventoryTabIndex.h"
17#include "mc/client/gui/screens/controllers/MarketplacePassTabIndex.h"
18#include "mc/client/gui/screens/models/PlayScreenDefaultTab.h"
19#include "mc/client/options/SplitScreenDirection.h"
20#include "mc/client/social/MultiplayerServiceIdentifier.h"
21#include "mc/client/social/connection/UIReturnTarget.h"
22#include "mc/client/store/StoreErrorCodes.h"
23#include "mc/client/util/ClipboardProxy.h"
24#include "mc/client/world/JoinServerWorldResult.h"
25#include "mc/common/SubClientId.h"
26#include "mc/deps/core/file/LevelStorageState.h"
27#include "mc/deps/core/file/PathBuffer.h"
28#include "mc/deps/core/file/StorageAreaStateListener.h"
29#include "mc/deps/core/threading/Async.h"
30#include "mc/deps/core/utility/NonOwnerPointer.h"
31#include "mc/deps/core/utility/UniqueOwnerPointer.h"
32#include "mc/deps/core_graphics/math/Rect.h"
33#include "mc/deps/game_refs/OwnerPtr.h"
34#include "mc/deps/game_refs/WeakRef.h"
35#include "mc/deps/input/InputMode.h"
36#include "mc/deps/input/enums/WYSIWYGState.h"
37#include "mc/deps/renderer/MatrixStack.h"
38#include "mc/events/NetworkType.h"
39#include "mc/input/ClientPlayMode.h"
40#include "mc/network/connection/DisconnectFailReason.h"
41#include "mc/network/connection/DisconnectionStage.h"
42#include "mc/options/option_types/OptionID.h"
43#include "mc/platform/brstd/function_ref.h"
44#include "mc/util/ProfanityFilterContext.h"
45#include "mc/world/GameCallbacks.h"
46#include "mc/world/actor/bhave/BehaviorStatus.h"
47#include "mc/world/actor/player/PlayerListener.h"
48#include "mc/world/level/GameType.h"
143struct MarketplaceServicesManager;
163struct StoreCatalogItem;
164struct StoreCatalogRepository;
172namespace Bedrock::Http {
class Status; }
174namespace Core {
class Path; }
179namespace OreUI {
struct Router; }
182namespace Realms {
struct World; }
187namespace Social {
struct User; }
189namespace mce {
class Camera; }
190namespace mce {
class Texture; }
201 public ::std::enable_shared_from_this<::ClientInstance> {
214 ::ll::UntypedStorage<8, 8> mUnk9600de;
215 ::ll::UntypedStorage<8, 32> mUnkc84d55;
220 ClientRenderResources& operator=(ClientRenderResources
const&);
221 ClientRenderResources(ClientRenderResources
const&);
222 ClientRenderResources();
408 ClientInstance& operator=(ClientInstance
const&);
409 ClientInstance(ClientInstance
const&);
415 virtual ~ClientInstance() ;
417 virtual void onInitMinecraftGame() ;
419 virtual void onDestroyMinecraftGame() ;
423 virtual void initSceneFactory(
424 ::std::unique_ptr<::SceneFactory> sceneFactory,
425 ::std::unique_ptr<::OreUI::SceneProvider> sceneProvider
428 virtual void setUiRouter(::std::unique_ptr<::OreUI::Router> uiRouter) ;
430 virtual void initGraphics() ;
432 virtual void stop() ;
434 virtual void teardown() ;
436 virtual void preShutDown() ;
440 virtual ::std::optional<::Social::GameConnectionInfo> getGameConnectionInfo() ;
442 virtual void onStartJoinGame(
443 bool isJoiningLocalServer,
444 ::std::string
const& multiplayerCorrelationId,
445 ::std::string
const& serverName,
446 ::std::string
const& worldName,
447 ::NetworkType networkTypeOverride,
448 ::Social::MultiplayerServiceIdentifier service,
449 bool isServerTransfer
452 virtual void onCancelJoinGame() ;
454 virtual void requestLeaveGameAsync() ;
456 virtual void requestLeaveGame(
bool switchScreen,
bool sync) ;
458 virtual void stopPlayScreen() ;
460 virtual bool isLeaveGameDone() const ;
462 virtual
void setupPlayScreenForLeaveGame() ;
464 virtual
void preCacheOutOfGameViews() ;
466 virtual
void resetPrimaryClient() ;
468 virtual
void resetGameSession() ;
470 virtual
void tick() ;
474 virtual
void preFrameTick() ;
476 virtual
bool update(
bool isInWorld) ;
478 virtual
void endFrame() ;
480 virtual
float getFrameAlpha() ;
482 virtual
void startSubClientLateJoin(
483 bool hasXBLBroadcast,
488 virtual ::Bedrock::Threading::Async<::ClientGameSetupResult>
489 setupClientGame(
bool joiningLocalServer, ::
std::unique_ptr<::
GameModuleClient> gameModuleClient) ;
495 virtual
void setupPrimaryClientEditorManager() ;
497 virtual ::Bedrock::NonOwnerPointer<::Editor::IEditorPlayer> getLocalEditorPlayer() const ;
499 virtual ::Bedrock::NonOwnerPointer<::Editor::IEditorManager> getEditorManager() const ;
501 virtual
bool isPlayerInEditor() const ;
507 virtual ::
Actor* getCameraActor() const ;
509 virtual
void setCameraActor(::
Actor* cameraActor) ;
513 virtual ::
Actor* getCameraTargetActor() const ;
515 virtual
void setCameraTargetActor(::
Actor* cameraTargetActor) ;
524 virtual ::
HitResult const& getLatestHitResult() const ;
526 virtual
bool isLeavingGame() const ;
528 virtual
bool isDestroyingGame() const ;
530 virtual
bool isShuttingDown() const ;
532 virtual
bool useLowFrequencyUIRender() const ;
534 virtual
bool isSplitScreenActive() const ;
536 virtual
bool isExitingLevel() const ;
538 virtual
bool isInBedScreen() const ;
540 virtual
bool isInDeathScreen() const ;
542 virtual
bool isKeyboardEnabled() const ;
544 virtual
bool hasCommands() const ;
546 virtual
int getSplitScreenCount() const ;
548 virtual
bool isShowingLoadingScreen() const ;
550 virtual
bool shouldDisconnectOnAppSuspended() const ;
552 virtual
bool isGamePlayTipsEnabled() const ;
554 virtual
bool isPlatformNX() const ;
556 virtual
bool isLocalSplitscreenWith(::
ActorUniqueID const&
id) const ;
558 virtual
bool isValidCrossPlatformSkin() const ;
560 virtual
bool isCurrentSkinPlatformLocked() const ;
562 virtual
bool isSelectedSkinInitialized() const ;
566 virtual
int getCurrentMaxGUIScaleIndex() const ;
568 virtual
bool getHandlingControllerDisconnect() ;
570 virtual
void setOpenControllerDisconnectScreen(
bool open) ;
572 virtual ::ClientPlayMode getClientPlayMode() const ;
574 virtual
void setClientPlayMode(::ClientPlayMode const& mode) ;
576 virtual ::
std::function<
void()> getCreditsCallback() ;
578 virtual
void setCreditsCallback(::
std::function<
void()> callback) ;
580 virtual
void setupTransitionForCredits(::
std::function<
void()> callback) ;
582 virtual
void refreshScreenSizeData() ;
584 virtual
void onScreenSizeChanged(
int width,
int height,
float forcedGuiScale) ;
586 virtual
void onGuiScaleOffsetChanged() ;
588 virtual
void onSafeZoneChanged() ;
590 virtual
bool hasDismissedNewPlayerFlow() const ;
592 virtual
void quit(::
std::
string const& src, ::
std::
string const& reason) ;
598 virtual ::World::WorldSystem& getWorldSystem() const ;
600 virtual
bool isWorldSystemReady() const ;
602 virtual ::Bedrock::NotNullNonOwnerPtr<::Automation::AutomationClient> getAutomationClient() const ;
604 virtual ::Bedrock::NonOwnerPointer<::
EDUSystems> getEDUSystems() ;
606 virtual ::Bedrock::NonOwnerPointer<::
EDUSystems const> getEDUSystems() const ;
614 virtual ::
FontHandle getRuneFontHandle() const ;
616 virtual ::
FontHandle getUnicodeFontHandle() const ;
618 virtual ::Bedrock::NotNullNonOwnerPtr<::
GeometryGroup> getGeometryGroup() const ;
620 virtual ::Bedrock::NotNullNonOwnerPtr<::
BlockCullingGroup> getBlockCullingGroup() const ;
622 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::MultiplayerServiceManager> getMultiplayerServiceManager() const
631 virtual ::Bedrock::NotNullNonOwnerPtr<::
IContentKeyProvider const> getKeyProvider() const ;
633 virtual ::
PacksInfoData const& getHostSpecifiedPacks() const ;
639 virtual ::MarketplaceServicesManager& getMarketplaceServicesManager() const ;
643 virtual ::Bedrock::NotNullNonOwnerPtr<::StoreCatalogRepository> getStoreCatalogRepository() ;
645 virtual ::
std::shared_ptr<::mce::TextureGroup> getTextureGroup() const ;
647 virtual ::Bedrock::NotNullNonOwnerPtr<::mce::TextureGroup> getStoreCacheTextures() const ;
649 virtual ::Bedrock::NotNullNonOwnerPtr<::
MinecraftGraphics> getMinecraftGraphics() const ;
651 virtual ::Bedrock::NotNullNonOwnerPtr<::
IUIRepository> getUIRepository() const ;
653 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> getUserManager() const ;
655 virtual ::Bedrock::NotNullNonOwnerPtr<::
TrialManager> getTrialManager() const ;
657 virtual
bool wantToQuit() const ;
659 virtual
bool isPrimaryLevelCrossPlatformMultiplayer() const ;
661 virtual
bool isPrimaryLevelMultiplayer() const ;
663 virtual
bool isAdhocEnabled() const ;
667 virtual
bool isMarketplaceDisabled() const ;
669 virtual ::
std::pair<::StoreErrorCodes, ::
std::
string> const getMarketplaceDisabledReasonWithErrorCode() const
672 virtual
void linkToOffer(::
std::
string const& productId,
bool allowWhileInGame) ;
674 virtual
void linkToPage(::
std::
string const& pageId) ;
676 virtual
void linkTo3PServerOffers(::
std::
string const& pageId, ::
std::
string const& creatorName) ;
678 virtual
void navigateToMarketplaceInventoryScreen(::InventoryTabIndex tabIndex) ;
680 virtual
void navigateToStoreHomeScreen() ;
682 virtual
void navigateToCoinPurchaseScreen(
int neededCoins, ::
std::function<
void(
bool,
int)> callback) ;
685 navigateToPurchaseOfferScreen(::StoreCatalogItem& item, ::StoreNavigationOrigin,
bool const) ;
687 virtual
void navigateToDressingRoomOfferScreen(::
std::
string const& offerId) ;
689 virtual
bool navigateToProfileScreen(::
std::
string const&,
bool const preventProgressScreen) ;
691 virtual
void navigateToServersScreen(
bool const calledFromHyperlink) ;
693 virtual
void navigateToHowToPlayScreen(::
std::
string const& startTopic) ;
695 virtual
void navigateToGatheringInfoScreen(
bool autoConnect) ;
697 virtual
void navigateToMarketplacePassPDPScreen(::MarketplacePassTabIndex tabIndex) ;
699 virtual
void navigateToRealmsStoriesTransitionScreen(::Realms::World const& world) ;
701 virtual
void tryPushLeaveGameScreen() ;
703 virtual
void tryStartDayOneExperience() ;
705 virtual
bool isReadyToRender() const ;
707 virtual
void onDimensionChangedEvent() ;
709 virtual
void onGameEventNotification(::ui::GameEventNotification notification) ;
711 virtual ::
std::
string getTopScreenName() const ;
713 virtual
void setLeaveGameInProgressAsReadyToContinue() ;
715 virtual
void stopDestroying() ;
717 virtual
void onClientCreatedLevel(
724 virtual
void createPlayerAuthentication() ;
726 virtual
void createPlayerAuthentication(uint64 clientRandomId) ;
728 virtual ::
std::
string getPlatformId() const ;
730 virtual ::
std::
string getPlatformOnlineId() const ;
732 virtual
bool useController() const ;
734 virtual
bool useTouchscreen() const ;
736 virtual
bool getMouseGrabbed() const ;
738 virtual
bool currentInputModeIsMouseAndKeyboard() const ;
740 virtual
bool allowPicking() const ;
742 virtual
bool isShowingMenu() const ;
744 virtual
bool isShowingPauseScreen() const ;
746 virtual
bool isShowingProgressScreen() const ;
748 virtual
bool isShowingWorldProgressScreen() const ;
750 virtual
bool isShowingRealmsProgressScreen() const ;
752 virtual
bool isShowingDeathScreen() const ;
754 virtual
bool isShowingServerForm() const ;
756 virtual
bool isScreenReplaceable() const ;
758 virtual
bool isInWorldAndNotShowingAnyMenuScreens() const ;
760 virtual
bool isWorldActive() const ;
762 virtual
bool isInRealm() ;
764 virtual
bool readyForShutdown() const ;
766 virtual
bool isPrimaryClient() const ;
768 virtual
bool isEduMode() const ;
770 virtual
bool isGamepadCursorEnabled() const ;
772 virtual
bool isInControlCustomization() const ;
774 virtual ::Bedrock::NotNullNonOwnerPtr<::
Minecraft> getServerData() ;
776 virtual ::Bedrock::NotNullNonOwnerPtr<::
Minecraft const> getServerData() const ;
782 virtual
bool hasLevel() const ;
784 virtual
bool isPreGame() const ;
786 virtual
bool isInMultiplayerGame() const ;
788 virtual
bool isMultiPlayerClient() const ;
792 virtual ::
IOptions const& getOptions() const ;
794 virtual ::
std::shared_ptr<::
Options> getOptionsPtr() ;
796 virtual ::
std::shared_ptr<::
Options const> const getOptionsPtr() const ;
798 virtual ::
std::shared_ptr<::Social::User> const& getUser() const ;
802 virtual ::
Option const& getShowLearningPromptsOption() const ;
804 virtual ::
Option& getShowControlTipsOption() ;
806 virtual ::
Option& getShowControlTipsOverrideOption() ;
808 virtual
double getControlTipsTimeElapsed() const ;
810 virtual
void setControlTipsTimeElapsedStart() ;
818 virtual ::Bedrock::NonOwnerPointer<::
CameraRegistry> getCameraRegistry() ;
820 virtual ::Bedrock::NonOwnerPointer<::
CameraRegistry const> getCameraRegistry() const ;
822 virtual ::Bedrock::NonOwnerPointer<::
EntitySystems> getCameraSystems() ;
828 virtual ::mce::ViewportInfo const& getViewportInfo() const ;
830 virtual
void setViewportInfo(::mce::ViewportInfo const& viewportInfo) ;
832 virtual ::
Vec2 getNormalizedViewportSize() const ;
834 virtual
void updateChunkRadius() ;
836 virtual
void setUITexture(::mce::Texture* tex) ;
838 virtual ::mce::Texture* getUITexture() ;
840 virtual
void setLevelTexture(::mce::Texture* tex) ;
842 virtual ::mce::Texture* getLevelTexture() ;
844 virtual
void setUICursorTexture(::mce::TexturePtr tex) ;
846 virtual ::mce::TexturePtr getUICursorTexture() const ;
848 virtual ::mce::Camera& getCamera() ;
854 virtual
void clearGraphicsCache() ;
857 getNormalizedUICursorTransform(::
MatrixStack::MatrixStackRef& matrix,
float cursorHalfSizeTexels) ;
859 virtual
bool shouldRenderUICursor() const ;
861 virtual
bool getRenderPlayerModel() const ;
865 virtual
float getGuiScale() const ;
867 virtual ::
Option const& getGuiScaleOption() const ;
869 virtual
int getGuiScaleOffset() const ;
871 virtual
void setGuiScaleOffset(
int guiScale) ;
873 virtual
void renderImGui(::
ScreenContext& screenContext,
bool drawMenuBar) ;
875 virtual ::Bedrock::NotNullNonOwnerPtr<::
GuiData> getGuiData() ;
877 virtual ::Bedrock::NotNullNonOwnerPtr<::
GuiData const> getGuiData() const ;
881 virtual ::
PixelCalc const& getDpadScale() const ;
883 virtual ::Bedrock::NotNullNonOwnerPtr<::
DateManager const> getDateManager() const ;
885 virtual
void addOverrideHoursToDateTime(uint const hoursToAdd) ;
889 virtual ::
ClipboardProxy<::ApplicationSignal::ClipboardCopy, ::ApplicationSignal::ClipboardPasteRequest>&
890 getClipboardManager() ;
902 virtual ::OreUI::SceneProvider& getSceneProvider() const ;
904 virtual ::ui::ScreenTechStackSelector& getScreenTechStackSelector() ;
906 virtual ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack const> getClientSceneStack() const ;
908 virtual ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack> getClientSceneStack() ;
910 virtual ::OreUI::Router& getClientUIRouter() const ;
912 virtual ::
ISceneStack& getMainSceneStackInterface() ;
914 virtual ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack> getMainSceneStack() ;
916 virtual ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack const> getMainSceneStack() const ;
918 virtual ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack const> getCurrentSceneStack() const ;
920 virtual ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack> getCurrentSceneStack() ;
922 virtual ::OreUI::Router& getCurrentUIRouter() ;
924 virtual ::OreUI::Router const& getCurrentUIRouter() const ;
926 virtual ::OreUI::ITelemetry& getOreUITelemetry() ;
928 virtual ::
WeakRef<::OreUI::UIBlockThumbnailAtlasManager> getOreUIBlockThumbnailAtlasManager() const ;
930 virtual ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack> prepareSceneFor(
931 ::ui::SceneType const sceneTypeToFind,
937 virtual ::
std::
string getScreenName() const ;
939 virtual ::
std::
string getScreenTelemetry() const ;
941 virtual ::ui::SceneType getTopSceneType() const ;
945 virtual ::
std::
string emoticonifyText(::
std::
string const& text) const ;
947 virtual ::
std::
string emoticonifyText(::
std::
string const& text,
bool isGameTip) ;
949 virtual
void onMobEffectsChange() ;
951 virtual
void setUISizeAndScale(
int w,
int h,
float forcedGuiScale) ;
953 virtual
void forEachVisibleScreen(::brstd::function_ref<
void(::
AbstractScene&)> callback) ;
955 virtual
void forEachScreen(::brstd::function_ref<
bool(::
AbstractScene&)> callback,
bool topDown) ;
957 virtual
void forEachScreenConst(::brstd::function_ref<
bool(::
AbstractScene const&)> callback,
bool topDown) const
960 virtual
bool updateSceneStack() ;
962 virtual
void forEachAlwaysAcceptInputScreen(
967 virtual
void forEachAlwaysAcceptInputScreenWithTop(::
std::function<
void(::
AbstractScene&)> callback) ;
969 virtual
void showPlayerProfile(::
std::
string const& xuid, ::
std::
string const& platformId) ;
971 virtual
bool isInGameInputEnabled() const ;
973 virtual
void setInGameInputEnabled(
bool isEnabled) ;
975 virtual ::
Vec2 getSafeZoneScale() const ;
977 virtual
void verifySkinApproval(
978 ::
std::
string const& serverType,
979 ::
std::function<
void(::
std::
string)> const& notApprovedCallback,
980 ::
std::function<
void()> const& approvedCallback
983 virtual ::InputMode getCurrentInputMode() const ;
985 virtual
bool isTouchGameplayAllowed() const ;
991 virtual
void setLastPointerLocation(
float x,
float y,
float z) ;
993 virtual
void clearTouchPointerLocations() ;
995 virtual
void clearTouchPointerLocation(
int id) ;
997 virtual
void updateTouchPointerLocation(
int id,
float x,
float y) ;
999 virtual ::
Vec3 getLastPointerLocation() ;
1001 virtual ::
Vec2 getTouchPointerLocation(
int id) const ;
1003 virtual
void updateActionPointerId(
int id) ;
1005 virtual
int getActionPointerId() const ;
1007 virtual
bool shouldUseLastPointerLocationOnFocusChange() ;
1009 virtual
bool currentScreenShouldStealMouse() ;
1019 virtual ::glm::vec2 getGamepadCursorPosition() const ;
1021 virtual
void updateControlOptionState(uint
id,
bool active) ;
1023 virtual
void clearActiveControlOptions() ;
1025 virtual ::
std::set<uint> const& getActiveControlOptions() const ;
1027 virtual ::
std::vector<::OptionID> getActiveOptionIDs(::ControlOptionType controlOptionType) const ;
1029 virtual
void setNumberOfActiveConfigs(
int numberOfActiveConfigs) ;
1031 virtual
int getNumberOfActiveConfigs() const ;
1033 virtual
bool isNoConfigSelected() const ;
1035 virtual
void setNumberOfEnabledConfigs(
int numberOfEnabledConfigs) ;
1037 virtual
int getNumberOfEnabledConfigs() const ;
1039 virtual
void setWYSIWYGState(::WYSIWYGState wysiwygState) ;
1041 virtual ::WYSIWYGState getWYSIWYGState() const ;
1043 virtual
void setOtherConfigsExistInThisCategory(
bool otherConfigsExistInThisCategory) ;
1045 virtual
bool getOtherConfigsExistInThisCategory() const ;
1049 virtual
void setupPersistentControls(::InputMode currentMode) ;
1051 virtual
void resetPlayerMovement() ;
1053 virtual
void suspendPredictedMovement() ;
1055 virtual
void onClientInputInitComplete() ;
1061 virtual
int getControllerId() const ;
1063 virtual
bool hasConnectedController() const ;
1065 virtual ::SubClientId getClientSubId() const ;
1067 virtual
void setSuspendInput(
bool suspendInput) ;
1069 virtual
void setSuspendDirectionalInput(
bool suspendDirectionalInput) ;
1071 virtual
void setDisableInput(
bool disableInput) ;
1073 virtual
void grabMouse() ;
1075 virtual
void releaseMouse() ;
1077 virtual
void refocusMouse(
bool lostMouse) ;
1079 virtual
void setMouseType(::ui::MousePointerType type) ;
1081 virtual
void resetBai(
int baiFlags) ;
1083 virtual
void clearInProgressBAI() ;
1085 virtual ::Bedrock::NotNullNonOwnerPtr<::
SoundEngine> getSoundEngine() const ;
1087 virtual ::
MusicManager const* getMusicManager() const ;
1089 virtual ::
MusicManager* getMusicManagerNonConst() const ;
1091 virtual
void play(::
std::
string const& name, ::
Vec3 const& pos,
float volume,
float pitch) ;
1093 virtual
void playUI(::
std::
string const& name,
float volume,
float pitch) ;
1095 virtual
void muteAudio() ;
1097 virtual
void unMuteAudio() ;
1099 virtual
void fadeOutMusic() const ;
1103 virtual
void onFullVanillaPackOnStack() ;
1105 virtual
bool isFullVanillaPackOnStack() const ;
1107 virtual
void onPlayerLoaded(::
Player& player) ;
1109 virtual
void setClientGameMode(::GameType gameType) ;
1111 virtual
void resetToDefaultGameMode() ;
1115 virtual
void connectToThirdPartyServer(::
std::
string const& ipAddress,
int port) ;
1117 virtual
void startExternalNetworkWorld(
1118 ::Social::GameConnectionInfo connection,
1119 ::
std::
string const& serverName,
1123 virtual
void connectToExperience(
1126 ::
std::function<
void(::World::JoinServerWorldResult)> onErrorCallback
1129 virtual
bool isReadyToReconnect() const ;
1131 virtual
bool checkForPiracy() ;
1133 virtual
void updateChatFilterStatus(::
ProfanityContext& profanityContext) ;
1135 virtual
void updateControllerHandling() ;
1137 virtual
void onPlayerDestruction(::
Player& player) ;
1140 setBehaviorCommandCallback(::
std::function<
void(::
std::
string const&, ::BehaviorStatus)> callback) ;
1142 virtual
void setBehaviorCommandStatus(::
std::
string const& treeName, ::BehaviorStatus status) ;
1144 virtual
void setConnectGamepadScreenActive(
bool active) ;
1146 virtual ::Bedrock::Threading::Async<::Core::PathBuffer<::
std::
string>>
1149 virtual ::Bedrock::NotNullNonOwnerPtr<::
DevConsoleLogger> getDevConsoleLogger() const ;
1152 ::
std::
string const& imageUrl,
1153 ::
std::function<
void(::Bedrock::Http::Status, ::Core::
Path const&, uint64)> callback
1156 virtual
void setActiveFileStorageArea(::
std::shared_ptr<::Core::FileStorageArea> storageArea) ;
1158 virtual
void onExtendDiskSpace(
1160 ::
std::weak_ptr<::Core::FileStorageArea> const& storageAreaWeakPtr,
1162 ::
std::function<
void()> onHandledEventCallback
1165 virtual
void onLowDiskSpace(
bool const bSet) ;
1167 virtual
void onOutOfDiskSpace(
bool const bSet) ;
1169 virtual
void onCriticalDiskError(
bool const bSet, ::Core::LevelStorageState const& errorCode) ;
1171 virtual
void onLevelCorrupt() ;
1173 virtual
void onGameModeChanged() ;
1175 virtual
void onBeforeSimTick() ;
1177 virtual
void onTick(
int nTick,
int maxTick) ;
1179 virtual
void onInternetUpdate() ;
1181 virtual
void onGameSessionReset() ;
1183 virtual
void onLevelExit() ;
1185 virtual
void onRequestResourceReload() ;
1187 virtual
void updateScreens() ;
1189 virtual
void initializeRenderResources() ;
1191 virtual
void postInitRenderResources() ;
1193 virtual
void onAppSuspended() ;
1195 virtual
void onAppSuspensionDisconnect() ;
1197 virtual
void onAppResumed() ;
1199 virtual
void onActiveResourcePacksChanged(
1203 virtual
void reloadEntityRenderers(
1221 virtual ::
std::deque<::
std::
string>& getSentMessageHistory() ;
1223 virtual ::
std::deque<::
std::
string>& getDevConsoleMessageHistory() ;
1225 virtual ::Bedrock::NotNullNonOwnerPtr<::
ProfanityContext> getProfanityContext() const ;
1235 virtual
void addTTSMessage(
1236 ::
std::
string const& message,
1237 ::ProfanityFilterContext profanityFilterContext,
1239 ::
std::
string const& interruptibleId,
1241 bool disregardAppFocus
1244 virtual
void initCommands() ;
1246 virtual uint getUserId() const ;
1248 virtual
bool isPrimaryUser() const ;
1250 virtual
double getServerConnectionTime() const ;
1252 virtual
void setServerPingTime(
int pingTime) ;
1254 virtual
int getServerPingTime() const ;
1256 virtual
void setDefaultPlayscreenTab(::PlayScreenDefaultTab defaultTab) ;
1258 virtual
void setClientInstanceState(::ClientInstanceState const& newstate) ;
1260 virtual
void setUIEventCoordinator(::Bedrock::UniqueOwnerPointer<::
UIEventCoordinator>&& coordinator) ;
1262 virtual ::Bedrock::NotNullNonOwnerPtr<::
UIEventCoordinator> getUIEventCoordinator() ;
1270 virtual ::
std::chrono::steady_clock::time_point getNoBlockBreakUntil() ;
1272 virtual
void setNoBlockBreakUntil(::
std::chrono::steady_clock::time_point timePoint) ;
1280 virtual
void sendClientEnteredLevel() ;
1284 virtual
bool isPlaying() const ;
1286 virtual ::ClientInstanceState getClientInstanceState() const ;
1290 virtual ::PlayerCapabilities::IClientController const& getClientCapabilities() const ;
1292 virtual ::cg::math::Rect<
float> calculateViewPortModifiers(
1293 ::SubClientId const clientId,
1294 uint64 const clientCount,
1295 ::SplitScreenDirection const splitScreenConfiguration
1302 virtual ::Bedrock::NotNullNonOwnerPtr<::
FogDefinitionRegistry const> getFogDefinitionRegistry() const ;
1306 virtual ::Bedrock::NotNullNonOwnerPtr<::
FogManager const> getFogManager() const ;
1308 virtual ::Bedrock::NotNullNonOwnerPtr<::
FogManager> getFogManager() ;
1317 virtual
float getRemoteServerTimeMs() const ;
1319 virtual
void setRemoteServerTimeMs(
float time) ;
1321 virtual
float getRemoteServerNetworkTimeMs() const ;
1323 virtual
void setRemoteServerNetworkTimeMs(
float time) ;
1327 virtual ::Scripting::ScriptEngine* getScriptingEngine() ;
1329 virtual ::Bedrock::NonOwnerPointer<::
WorldTransferAgent> const getWorldTransferAgent() const ;
1335 virtual
void flagDisconnectionAndNotify(::Connection::DisconnectFailReason disconnectReason) ;
1339 virtual
void disconnectSubClient(::Connection::DisconnectFailReason disconnectReason) ;
1341 virtual
void setClientUpdateAndRenderThrottling(
bool enabled,
int threshold,
float scalar) ;
1343 virtual
bool isClientUpdateAndRenderThrottlingEnabled() const ;
1345 virtual
int getClientUpdateAndRenderThrottlingThreshold() const ;
1347 virtual
float getClientUpdateAndRenderThrottlingScalar() const ;
1349 virtual
bool isUserBanned() const ;
1351 virtual
bool isEligibleForPauseFeature() const ;
1353 virtual
void setupPauseManagers() ;
1355 virtual
bool requestInGamePause(
bool status) ;
1357 virtual
void openContentLogHistory() ;
1359 virtual
double getGameUpdateDurationInSeconds() const ;
1372 ::PlayerAuthenticationType authType,
1377 MCAPI
void _createSkinRepositoryClientInterface();
1379 MCAPI
void _finishDestroyingGame();
1384 MCAPI
bool _getIsConnectedToApplicationLayer() const;
1386 MCAPI
void _handleDisconnectionScreenRequests();
1388 MCAPI
void _handlePossibleControllerDisconnect(
bool isInitFinished);
1390 MCAPI
void _initSceneStack();
1392 MCAPI
bool _isEditorModeOrInEditorWorld() const;
1394 MCAPI
bool _isInEditorTestWorld() const;
1396 MCAPI
bool _isShowingScreen(::
std::string_view screenName) const;
1398 MCAPI ::
std::optional<
bool> _isUsingTurn() const;
1403 MCAPI
void _leaveGameOnUnrecoverableError(
1404 ::Connection::DisconnectFailReason reason,
1405 ::
std::
string const& telemetryMessage,
1406 ::
std::
string const& errorDescriptionOverride
1409 MCAPI
void _navigateToSDLCharacterCreatorOffer(::
std::
string const& productId);
1411 MCAPI
void _notifyTelemetryClientCanceledJoinAttempt();
1413 MCAPI
void _notifyTelemetryClientStartedJoinAttempt();
1415 MCAPI
void _notifyTelemetryClientSuccessfullyEnteredWorld();
1417 MCAPI
void _notifyTelemetryOfFlaggedDisconnect(
1418 ::Connection::DisconnectFailReason failReason,
1419 ::
std::
string const& titleMessage,
1420 ::
std::
string const& errorMessage,
1421 ::
std::
string const& codeword
1424 MCAPI
void _perspectiveOptionChanged(::
Option const&);
1426 MCAPI
void _requestLeaveGameImpl(
bool switchScreen,
bool sync);
1428 MCAPI
void _startDestroyingGame();
1430 MCAPI
void _startExternalNetworkWorld(
1431 ::Social::GameConnectionInfo connection,
1432 ::
std::
string const& serverName,
1433 bool isServerTransfer
1436 MCAPI
void _startLeaveGame();
1438 MCAPI
void _startWorldPrimaryClient(
1439 ::PlayerAuthenticationType authType,
1444 MCAPI
void _startWorldSubClient(
1445 ::PlayerAuthenticationType authType,
1451 _tickBuildAction(::
HitResult const& solidHitResult_, ::
HitResult const& liquidHitResult_,
bool advanceTime);
1453 MCAPI
void _updateScreenSizeVariables(::
Vec2 const& totalScreenSize, ::
Vec2 const& safeZone,
float forcedGuiScale);
1455 MCAPI
void fireEventDiskStatus(::DiskStatus status, ::Core::LevelStorageState errorCode);
1457 MCAPI
void flagDisconnectionAndNotifyWithTarget(
1459 ::Connection::UIReturnTarget uiReturnTarget
1484 MCAPI
void $onInitMinecraftGame();
1486 MCAPI
void $onDestroyMinecraftGame();
1490 MCAPI
void $initSceneFactory(
1492 ::
std::unique_ptr<::OreUI::SceneProvider> sceneProvider
1495 MCAPI
void $setUiRouter(::
std::unique_ptr<::OreUI::Router> uiRouter);
1497 MCAPI
void $initGraphics();
1499 MCFOLD
void $stop();
1501 MCAPI
void $teardown();
1503 MCAPI
void $preShutDown();
1505 MCAPI
void $setGameConnectionInfo(::Social::GameConnectionInfo const& gameConnection);
1507 MCAPI ::
std::optional<::Social::GameConnectionInfo> $getGameConnectionInfo();
1509 MCAPI
void $onStartJoinGame(
1510 bool isJoiningLocalServer,
1511 ::
std::
string const& multiplayerCorrelationId,
1512 ::
std::
string const& serverName,
1513 ::
std::
string const& worldName,
1514 ::NetworkType networkTypeOverride,
1515 ::Social::MultiplayerServiceIdentifier service,
1516 bool isServerTransfer
1519 MCAPI
void $onCancelJoinGame();
1521 MCAPI
void $requestLeaveGameAsync();
1523 MCAPI
void $requestLeaveGame(
bool switchScreen,
bool sync);
1525 MCAPI
void $stopPlayScreen();
1527 MCAPI
bool $isLeaveGameDone() const;
1529 MCAPI
void $setupPlayScreenForLeaveGame();
1531 MCAPI
void $preCacheOutOfGameViews();
1533 MCAPI
void $resetPrimaryClient();
1535 MCAPI
void $resetGameSession();
1537 MCFOLD
void $tick();
1541 MCAPI
void $preFrameTick();
1543 MCAPI
bool $update(
bool isInWorld);
1545 MCFOLD
void $endFrame();
1547 MCAPI
float $getFrameAlpha();
1549 MCAPI
void $startSubClientLateJoin(
1550 bool hasXBLBroadcast,
1555 MCAPI ::Bedrock::Threading::Async<::ClientGameSetupResult>
1556 $setupClientGame(
bool joiningLocalServer, ::
std::unique_ptr<::
GameModuleClient> gameModuleClient);
1562 MCAPI
void $setupPrimaryClientEditorManager();
1564 MCAPI ::Bedrock::NonOwnerPointer<::Editor::IEditorPlayer> $getLocalEditorPlayer() const;
1566 MCAPI ::Bedrock::NonOwnerPointer<::Editor::IEditorManager> $getEditorManager() const;
1568 MCAPI
bool $isPlayerInEditor() const;
1574 MCAPI ::
Actor* $getCameraActor() const;
1576 MCAPI
void $setCameraActor(::
Actor* cameraActor);
1580 MCAPI ::
Actor* $getCameraTargetActor() const;
1582 MCAPI
void $setCameraTargetActor(::
Actor* cameraTargetActor);
1590 MCAPI ::
HitResult const& $getLatestHitResult() const;
1592 MCAPI
bool $isLeavingGame() const;
1594 MCAPI
bool $isDestroyingGame() const;
1596 MCAPI
bool $isShuttingDown() const;
1598 MCAPI
bool $useLowFrequencyUIRender() const;
1600 MCAPI
bool $isSplitScreenActive() const;
1602 MCAPI
bool $isExitingLevel() const;
1604 MCAPI
bool $isInBedScreen() const;
1606 MCAPI
bool $isInDeathScreen() const;
1608 MCAPI
bool $isKeyboardEnabled() const;
1610 MCAPI
bool $hasCommands() const;
1612 MCAPI
int $getSplitScreenCount() const;
1614 MCAPI
bool $isShowingLoadingScreen() const;
1616 MCFOLD
bool $shouldDisconnectOnAppSuspended() const;
1618 MCAPI
bool $isGamePlayTipsEnabled() const;
1620 MCAPI
bool $isPlatformNX() const;
1622 MCAPI
bool $isLocalSplitscreenWith(::
ActorUniqueID const&
id) const;
1624 MCAPI
bool $isValidCrossPlatformSkin() const;
1626 MCAPI
bool $isCurrentSkinPlatformLocked() const;
1628 MCAPI
bool $isSelectedSkinInitialized() const;
1632 MCAPI
int $getCurrentMaxGUIScaleIndex() const;
1634 MCAPI
bool $getHandlingControllerDisconnect();
1636 MCAPI
void $setOpenControllerDisconnectScreen(
bool open);
1638 MCAPI ::ClientPlayMode $getClientPlayMode() const;
1640 MCAPI
void $setClientPlayMode(::ClientPlayMode const& mode);
1642 MCAPI ::
std::function<
void()> $getCreditsCallback();
1644 MCAPI
void $setCreditsCallback(::
std::function<
void()> callback);
1646 MCAPI
void $setupTransitionForCredits(::
std::function<
void()> callback);
1648 MCAPI
void $refreshScreenSizeData();
1650 MCAPI
void $onScreenSizeChanged(
int width,
int height,
float forcedGuiScale);
1652 MCAPI
void $onGuiScaleOffsetChanged();
1654 MCAPI
void $onSafeZoneChanged();
1656 MCAPI
bool $hasDismissedNewPlayerFlow() const;
1658 MCAPI
void $quit(::
std::
string const& src, ::
std::
string const& reason);
1664 MCAPI ::World::WorldSystem& $getWorldSystem() const;
1666 MCAPI
bool $isWorldSystemReady() const;
1668 MCAPI ::Bedrock::NotNullNonOwnerPtr<::Automation::AutomationClient> $getAutomationClient() const;
1670 MCAPI ::Bedrock::NonOwnerPointer<::
EDUSystems> $getEDUSystems();
1672 MCAPI ::Bedrock::NonOwnerPointer<::
EDUSystems const> $getEDUSystems() const;
1680 MCAPI ::
FontHandle $getRuneFontHandle() const;
1682 MCAPI ::
FontHandle $getUnicodeFontHandle() const;
1684 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
GeometryGroup> $getGeometryGroup() const;
1686 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
BlockCullingGroup> $getBlockCullingGroup() const;
1688 MCAPI ::Bedrock::NotNullNonOwnerPtr<::Social::MultiplayerServiceManager> $getMultiplayerServiceManager() const;
1698 MCAPI ::
PacksInfoData const& $getHostSpecifiedPacks() const;
1704 MCAPI ::MarketplaceServicesManager& $getMarketplaceServicesManager() const;
1708 MCAPI ::Bedrock::NotNullNonOwnerPtr<::StoreCatalogRepository> $getStoreCatalogRepository();
1710 MCAPI ::
std::shared_ptr<::mce::TextureGroup> $getTextureGroup() const;
1712 MCAPI ::Bedrock::NotNullNonOwnerPtr<::mce::TextureGroup> $getStoreCacheTextures() const;
1714 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
MinecraftGraphics> $getMinecraftGraphics() const;
1716 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
IUIRepository> $getUIRepository() const;
1718 MCAPI ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> $getUserManager() const;
1720 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
TrialManager> $getTrialManager() const;
1722 MCAPI
bool $wantToQuit() const;
1724 MCAPI
bool $isPrimaryLevelCrossPlatformMultiplayer() const;
1726 MCAPI
bool $isPrimaryLevelMultiplayer() const;
1728 MCAPI
bool $isAdhocEnabled() const;
1732 MCAPI
bool $isMarketplaceDisabled() const;
1734 MCAPI ::
std::pair<::StoreErrorCodes, ::
std::
string> const $getMarketplaceDisabledReasonWithErrorCode() const;
1736 MCAPI
void $linkToOffer(::
std::
string const& productId,
bool allowWhileInGame);
1738 MCAPI
void $linkToPage(::
std::
string const& pageId);
1740 MCAPI
void $linkTo3PServerOffers(::
std::
string const& pageId, ::
std::
string const& creatorName);
1742 MCAPI
void $navigateToMarketplaceInventoryScreen(::InventoryTabIndex tabIndex);
1744 MCAPI
void $navigateToStoreHomeScreen();
1746 MCAPI
void $navigateToCoinPurchaseScreen(
int neededCoins, ::
std::function<
void(
bool,
int)> callback);
1748 MCAPI
void $navigateToPurchaseOfferScreen(::StoreCatalogItem& item, ::StoreNavigationOrigin,
bool const);
1750 MCAPI
void $navigateToDressingRoomOfferScreen(::
std::
string const& offerId);
1752 MCAPI
bool $navigateToProfileScreen(::
std::
string const&,
bool const preventProgressScreen);
1754 MCAPI
void $navigateToServersScreen(
bool const calledFromHyperlink);
1756 MCAPI
void $navigateToHowToPlayScreen(::
std::
string const& startTopic);
1758 MCAPI
void $navigateToGatheringInfoScreen(
bool autoConnect);
1760 MCAPI
void $navigateToMarketplacePassPDPScreen(::MarketplacePassTabIndex tabIndex);
1762 MCAPI
void $navigateToRealmsStoriesTransitionScreen(::Realms::World const& world);
1764 MCAPI
void $tryPushLeaveGameScreen();
1766 MCAPI
void $tryStartDayOneExperience();
1768 MCAPI
bool $isReadyToRender() const;
1770 MCAPI
void $onDimensionChangedEvent();
1772 MCAPI
void $onGameEventNotification(::ui::GameEventNotification notification);
1774 MCAPI ::
std::
string $getTopScreenName() const;
1776 MCAPI
void $setLeaveGameInProgressAsReadyToContinue();
1778 MCAPI
void $stopDestroying();
1780 MCAPI
void $onClientCreatedLevel(
1787 MCAPI
void $createPlayerAuthentication();
1789 MCAPI
void $createPlayerAuthentication(uint64 clientRandomId);
1791 MCAPI ::
std::
string $getPlatformId() const;
1793 MCAPI ::
std::
string $getPlatformOnlineId() const;
1795 MCAPI
bool $useController() const;
1797 MCAPI
bool $useTouchscreen() const;
1799 MCAPI
bool $getMouseGrabbed() const;
1801 MCAPI
bool $currentInputModeIsMouseAndKeyboard() const;
1803 MCAPI
bool $allowPicking() const;
1805 MCAPI
bool $isShowingMenu() const;
1807 MCAPI
bool $isShowingPauseScreen() const;
1809 MCAPI
bool $isShowingProgressScreen() const;
1811 MCAPI
bool $isShowingWorldProgressScreen() const;
1813 MCAPI
bool $isShowingRealmsProgressScreen() const;
1815 MCAPI
bool $isShowingDeathScreen() const;
1817 MCAPI
bool $isShowingServerForm() const;
1819 MCAPI
bool $isScreenReplaceable() const;
1821 MCAPI
bool $isInWorldAndNotShowingAnyMenuScreens() const;
1823 MCAPI
bool $isWorldActive() const;
1825 MCAPI
bool $isInRealm();
1827 MCAPI
bool $readyForShutdown() const;
1829 MCAPI
bool $isPrimaryClient() const;
1831 MCAPI
bool $isEduMode() const;
1833 MCFOLD
bool $isGamepadCursorEnabled() const;
1835 MCAPI
bool $isInControlCustomization() const;
1837 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::
Minecraft> $getServerData();
1839 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::
Minecraft const> $getServerData() const;
1845 MCAPI
bool $hasLevel() const;
1847 MCAPI
bool $isPreGame() const;
1849 MCAPI
bool $isInMultiplayerGame() const;
1851 MCAPI
bool $isMultiPlayerClient() const;
1855 MCFOLD ::
IOptions const& $getOptions() const;
1857 MCAPI ::
std::shared_ptr<::
Options> $getOptionsPtr();
1859 MCAPI ::
std::shared_ptr<::
Options const> const $getOptionsPtr() const;
1861 MCAPI ::
std::shared_ptr<::Social::User> const& $getUser() const;
1865 MCAPI ::
Option const& $getShowLearningPromptsOption() const;
1867 MCAPI ::
Option& $getShowControlTipsOption();
1869 MCAPI ::
Option& $getShowControlTipsOverrideOption();
1871 MCAPI
double $getControlTipsTimeElapsed() const;
1873 MCAPI
void $setControlTipsTimeElapsedStart();
1881 MCAPI ::Bedrock::NonOwnerPointer<::
CameraRegistry> $getCameraRegistry();
1883 MCAPI ::Bedrock::NonOwnerPointer<::
CameraRegistry const> $getCameraRegistry() const;
1885 MCAPI ::Bedrock::NonOwnerPointer<::
EntitySystems> $getCameraSystems();
1891 MCAPI ::mce::ViewportInfo const& $getViewportInfo() const;
1893 MCAPI
void $setViewportInfo(::mce::ViewportInfo const& viewportInfo);
1895 MCAPI ::
Vec2 $getNormalizedViewportSize() const;
1897 MCAPI
void $updateChunkRadius();
1899 MCAPI
void $setUITexture(::mce::Texture* tex);
1901 MCAPI ::mce::Texture* $getUITexture();
1903 MCAPI
void $setLevelTexture(::mce::Texture* tex);
1905 MCAPI ::mce::Texture* $getLevelTexture();
1907 MCAPI
void $setUICursorTexture(::mce::TexturePtr tex);
1909 MCAPI ::mce::TexturePtr $getUICursorTexture() const;
1911 MCAPI ::mce::Camera& $getCamera();
1917 MCAPI
void $clearGraphicsCache();
1919 MCAPI
void $getNormalizedUICursorTransform(::
MatrixStack::MatrixStackRef& matrix,
float cursorHalfSizeTexels);
1921 MCFOLD
bool $shouldRenderUICursor() const;
1923 MCAPI
bool $getRenderPlayerModel() const;
1927 MCAPI
float $getGuiScale() const;
1929 MCAPI ::
Option const& $getGuiScaleOption() const;
1931 MCAPI
int $getGuiScaleOffset() const;
1933 MCAPI
void $setGuiScaleOffset(
int guiScale);
1935 MCFOLD
void $renderImGui(::
ScreenContext& screenContext,
bool drawMenuBar);
1937 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::
GuiData> $getGuiData();
1939 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::
GuiData const> $getGuiData() const;
1943 MCAPI ::
PixelCalc const& $getDpadScale() const;
1945 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
DateManager const> $getDateManager() const;
1947 MCAPI
void $addOverrideHoursToDateTime(uint const hoursToAdd);
1951 MCAPI ::
ClipboardProxy<::ApplicationSignal::ClipboardCopy, ::ApplicationSignal::ClipboardPasteRequest>&
1952 $getClipboardManager();
1964 MCAPI ::OreUI::SceneProvider& $getSceneProvider() const;
1966 MCAPI ::ui::ScreenTechStackSelector& $getScreenTechStackSelector();
1968 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack const> $getClientSceneStack() const;
1970 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack> $getClientSceneStack();
1972 MCAPI ::OreUI::Router& $getClientUIRouter() const;
1974 MCAPI ::
ISceneStack& $getMainSceneStackInterface();
1976 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack> $getMainSceneStack();
1978 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack const> $getMainSceneStack() const;
1980 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack const> $getCurrentSceneStack() const;
1982 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack> $getCurrentSceneStack();
1984 MCFOLD ::OreUI::Router& $getCurrentUIRouter();
1986 MCFOLD ::OreUI::Router const& $getCurrentUIRouter() const;
1988 MCAPI ::OreUI::ITelemetry& $getOreUITelemetry();
1990 MCAPI ::
WeakRef<::OreUI::UIBlockThumbnailAtlasManager> $getOreUIBlockThumbnailAtlasManager() const;
1992 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
ISceneStack> $prepareSceneFor(
1993 ::ui::SceneType const sceneTypeToFind,
1999 MCAPI ::
std::
string $getScreenName() const;
2001 MCAPI ::
std::
string $getScreenTelemetry() const;
2003 MCAPI ::ui::SceneType $getTopSceneType() const;
2007 MCAPI ::
std::
string $emoticonifyText(::
std::
string const& text) const;
2009 MCAPI ::
std::
string $emoticonifyText(::
std::
string const& text,
bool isGameTip);
2011 MCAPI
void $onMobEffectsChange();
2013 MCAPI
void $setUISizeAndScale(
int w,
int h,
float forcedGuiScale);
2015 MCAPI
void $forEachVisibleScreen(::brstd::function_ref<
void(::
AbstractScene&)> callback);
2017 MCAPI
void $forEachScreen(::brstd::function_ref<
bool(::
AbstractScene&)> callback,
bool topDown);
2019 MCAPI
void $forEachScreenConst(::brstd::function_ref<
bool(::
AbstractScene const&)> callback,
bool topDown) const;
2021 MCAPI
bool $updateSceneStack();
2023 MCAPI
void $forEachAlwaysAcceptInputScreen(
2028 MCAPI
void $forEachAlwaysAcceptInputScreenWithTop(::
std::function<
void(::
AbstractScene&)> callback);
2030 MCAPI
void $showPlayerProfile(::
std::
string const& xuid, ::
std::
string const& platformId);
2032 MCAPI
bool $isInGameInputEnabled() const;
2034 MCAPI
void $setInGameInputEnabled(
bool isEnabled);
2036 MCAPI ::
Vec2 $getSafeZoneScale() const;
2038 MCAPI
void $verifySkinApproval(
2039 ::
std::
string const& serverType,
2040 ::
std::function<
void(::
std::
string)> const& notApprovedCallback,
2041 ::
std::function<
void()> const& approvedCallback
2044 MCAPI ::InputMode $getCurrentInputMode() const;
2046 MCAPI
bool $isTouchGameplayAllowed() const;
2052 MCAPI
void $setLastPointerLocation(
float x,
float y,
float z);
2054 MCAPI
void $clearTouchPointerLocations();
2056 MCAPI
void $clearTouchPointerLocation(
int id);
2058 MCAPI
void $updateTouchPointerLocation(
int id,
float x,
float y);
2060 MCAPI ::
Vec3 $getLastPointerLocation();
2062 MCAPI ::
Vec2 $getTouchPointerLocation(
int id) const;
2064 MCAPI
void $updateActionPointerId(
int id);
2066 MCAPI
int $getActionPointerId() const;
2068 MCAPI
bool $shouldUseLastPointerLocationOnFocusChange();
2070 MCAPI
bool $currentScreenShouldStealMouse();
2080 MCAPI ::glm::vec2 $getGamepadCursorPosition() const;
2082 MCAPI
void $updateControlOptionState(uint
id,
bool active);
2084 MCAPI
void $clearActiveControlOptions();
2086 MCAPI ::
std::set<uint> const& $getActiveControlOptions() const;
2088 MCAPI ::
std::vector<::OptionID> $getActiveOptionIDs(::ControlOptionType controlOptionType) const;
2090 MCAPI
void $setNumberOfActiveConfigs(
int numberOfActiveConfigs);
2092 MCAPI
int $getNumberOfActiveConfigs() const;
2094 MCAPI
bool $isNoConfigSelected() const;
2096 MCAPI
void $setNumberOfEnabledConfigs(
int numberOfEnabledConfigs);
2098 MCAPI
int $getNumberOfEnabledConfigs() const;
2100 MCAPI
void $setWYSIWYGState(::WYSIWYGState wysiwygState);
2102 MCAPI ::WYSIWYGState $getWYSIWYGState() const;
2104 MCAPI
void $setOtherConfigsExistInThisCategory(
bool otherConfigsExistInThisCategory);
2106 MCAPI
bool $getOtherConfigsExistInThisCategory() const;
2110 MCAPI
void $setupPersistentControls(::InputMode currentMode);
2112 MCAPI
void $resetPlayerMovement();
2114 MCAPI
void $suspendPredictedMovement();
2116 MCAPI
void $onClientInputInitComplete();
2122 MCAPI
int $getControllerId() const;
2124 MCAPI
bool $hasConnectedController() const;
2126 MCAPI ::SubClientId $getClientSubId() const;
2128 MCAPI
void $setSuspendInput(
bool suspendInput);
2130 MCAPI
void $setSuspendDirectionalInput(
bool suspendDirectionalInput);
2132 MCAPI
void $setDisableInput(
bool disableInput);
2134 MCAPI
void $grabMouse();
2136 MCAPI
void $releaseMouse();
2138 MCAPI
void $refocusMouse(
bool lostMouse);
2140 MCAPI
void $setMouseType(::ui::MousePointerType type);
2142 MCAPI
void $resetBai(
int baiFlags);
2144 MCAPI
void $clearInProgressBAI();
2146 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
SoundEngine> $getSoundEngine() const;
2150 MCAPI ::
MusicManager* $getMusicManagerNonConst() const;
2152 MCAPI
void $play(::
std::
string const& name, ::
Vec3 const& pos,
float volume,
float pitch);
2154 MCAPI
void $playUI(::
std::
string const& name,
float volume,
float pitch);
2156 MCAPI
void $muteAudio();
2158 MCAPI
void $unMuteAudio();
2160 MCAPI
void $fadeOutMusic() const;
2164 MCAPI
void $onFullVanillaPackOnStack();
2166 MCAPI
bool $isFullVanillaPackOnStack() const;
2168 MCAPI
void $onPlayerLoaded(::
Player& player);
2170 MCAPI
void $setClientGameMode(::GameType gameType);
2172 MCAPI
void $resetToDefaultGameMode();
2176 MCAPI
void $connectToThirdPartyServer(::
std::
string const& ipAddress,
int port);
2178 MCAPI
void $startExternalNetworkWorld(
2179 ::Social::GameConnectionInfo connection,
2180 ::
std::
string const& serverName,
2184 MCAPI
void $connectToExperience(
2187 ::
std::function<
void(::World::JoinServerWorldResult)> onErrorCallback
2190 MCAPI
bool $isReadyToReconnect() const;
2192 MCAPI
bool $checkForPiracy();
2196 MCAPI
void $updateControllerHandling();
2198 MCAPI
void $onPlayerDestruction(::
Player& player);
2200 MCAPI
void $setBehaviorCommandCallback(::
std::function<
void(::
std::
string const&, ::BehaviorStatus)> callback);
2202 MCAPI
void $setBehaviorCommandStatus(::
std::
string const& treeName, ::BehaviorStatus status);
2204 MCAPI
void $setConnectGamepadScreenActive(
bool active);
2206 MCAPI ::Bedrock::Threading::Async<::Core::PathBuffer<::
std::
string>>
2209 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
DevConsoleLogger> $getDevConsoleLogger() const;
2212 ::
std::
string const& imageUrl,
2213 ::
std::function<
void(::Bedrock::Http::Status, ::Core::
Path const&, uint64)> callback
2216 MCAPI
void $setActiveFileStorageArea(::
std::shared_ptr<::Core::FileStorageArea> storageArea);
2218 MCAPI
void $onExtendDiskSpace(
2220 ::
std::weak_ptr<::Core::FileStorageArea> const& storageAreaWeakPtr,
2222 ::
std::function<
void()> onHandledEventCallback
2225 MCAPI
void $onLowDiskSpace(
bool const bSet);
2227 MCAPI
void $onOutOfDiskSpace(
bool const bSet);
2229 MCAPI
void $onCriticalDiskError(
bool const bSet, ::Core::LevelStorageState const& errorCode);
2231 MCAPI
void $onLevelCorrupt();
2233 MCAPI
void $onGameModeChanged();
2235 MCAPI
void $onBeforeSimTick();
2237 MCAPI
void $onTick(
int nTick,
int maxTick);
2239 MCAPI
void $onInternetUpdate();
2241 MCAPI
void $onGameSessionReset();
2243 MCAPI
void $onLevelExit();
2245 MCFOLD
void $onRequestResourceReload();
2247 MCAPI
void $updateScreens();
2249 MCAPI
void $initializeRenderResources();
2251 MCAPI
void $postInitRenderResources();
2253 MCAPI
void $onAppSuspended();
2255 MCAPI
void $onAppSuspensionDisconnect();
2257 MCAPI
void $onAppResumed();
2259 MCAPI
void $onActiveResourcePacksChanged(
2263 MCAPI
void $reloadEntityRenderers(
2281 MCAPI ::
std::deque<::
std::
string>& $getSentMessageHistory();
2283 MCAPI ::
std::deque<::
std::
string>& $getDevConsoleMessageHistory();
2285 MCAPI ::Bedrock::NotNullNonOwnerPtr<::
ProfanityContext> $getProfanityContext() const;
2295 MCAPI
void $addTTSMessage(
2296 ::
std::
string const& message,
2297 ::ProfanityFilterContext profanityFilterContext,
2299 ::
std::
string const& interruptibleId,
2301 bool disregardAppFocus
2304 MCAPI
void $initCommands();
2306 MCAPI uint $getUserId() const;
2308 MCAPI
bool $isPrimaryUser() const;
2310 MCAPI
double $getServerConnectionTime() const;
2312 MCAPI
void $setServerPingTime(
int pingTime);
2314 MCAPI
int $getServerPingTime() const;
2316 MCAPI
void $setDefaultPlayscreenTab(::PlayScreenDefaultTab defaultTab);
2318 MCAPI
void $setClientInstanceState(::ClientInstanceState const& newstate);
2320 MCAPI
void $setUIEventCoordinator(::Bedrock::UniqueOwnerPointer<::
UIEventCoordinator>&& coordinator);
2330 MCAPI ::
std::chrono::steady_clock::time_point $getNoBlockBreakUntil();
2332 MCAPI
void $setNoBlockBreakUntil(::
std::chrono::steady_clock::time_point timePoint);
2340 MCAPI
void $sendClientEnteredLevel();
2344 MCAPI
bool $isPlaying() const;
2346 MCFOLD ::ClientInstanceState $getClientInstanceState() const;
2350 MCAPI ::PlayerCapabilities::IClientController const& $getClientCapabilities() const;
2352 MCAPI ::cg::math::Rect<
float> $calculateViewPortModifiers(
2353 ::SubClientId const clientId,
2354 uint64 const clientCount,
2355 ::SplitScreenDirection const splitScreenConfiguration
2362 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::
FogDefinitionRegistry const> $getFogDefinitionRegistry() const;
2366 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::
FogManager const> $getFogManager() const;
2368 MCFOLD ::Bedrock::NotNullNonOwnerPtr<::
FogManager> $getFogManager();
2376 MCAPI
float $getRemoteServerTimeMs() const;
2378 MCAPI
void $setRemoteServerTimeMs(
float time);
2380 MCAPI
float $getRemoteServerNetworkTimeMs() const;
2382 MCAPI
void $setRemoteServerNetworkTimeMs(
float time);
2386 MCAPI ::Scripting::ScriptEngine* $getScriptingEngine();
2388 MCAPI ::Bedrock::NonOwnerPointer<::
WorldTransferAgent> const $getWorldTransferAgent() const;
2394 MCAPI
void $flagDisconnectionAndNotify(::Connection::DisconnectFailReason disconnectReason);
2398 MCAPI
void $disconnectSubClient(::Connection::DisconnectFailReason disconnectReason);
2400 MCAPI
void $setClientUpdateAndRenderThrottling(
bool enabled,
int threshold,
float scalar);
2402 MCAPI
bool $isClientUpdateAndRenderThrottlingEnabled() const;
2404 MCAPI
int $getClientUpdateAndRenderThrottlingThreshold() const;
2406 MCAPI
float $getClientUpdateAndRenderThrottlingScalar() const;
2408 MCAPI
bool $isUserBanned() const;
2410 MCAPI
bool $isEligibleForPauseFeature() const;
2412 MCAPI
void $setupPauseManagers();
2414 MCAPI
bool $requestInGamePause(
bool status);
2416 MCAPI
void $openContentLogHistory();
2418 MCAPI
double $getGameUpdateDurationInSeconds() const;
Definition AbstractScene.h:5
Definition ActorAnimationGroup.h:26
Definition ActorRenderDispatcher.h:5
Definition ClipboardCopy.h:16
Definition ClipboardPasteRequest.h:10
Definition AutomationClient.h:26
Definition BlockSource.h:68
Definition BuildActionIntention.h:5
Definition ClientHitDetectCoordinator.h:13
Definition ClientInstanceEventCoordinator.h:16
Definition ClientInstance.h:5
static MCAPI void ** $vftableForIClientInstance()
static MCAPI void ** $vftableForPlayerListener()
static MCAPI void ** $vftableForStorageAreaStateListener()
static MCAPI void ** $vftableForGameCallbacks()
Definition ClientNetworkEventCoordinator.h:13
Definition ClientNetworkSystem.h:39
Definition ClientScriptEventCoordinator.h:13
Definition ClipboardProxy.h:6
Definition FileStorageArea.h:26
Definition StorageAreaStateListener.h:16
Definition DateManager.h:14
Definition EDUSystems.h:25
Definition IEditorManager.h:25
Definition IEditorPlayer.h:16
Definition EntityContext.h:16
Definition EntitySystems.h:25
Definition FontHandle.h:5
Definition GameCallbacks.h:5
Definition GameModuleClient.h:5
Definition GameRenderer.h:5
Definition HitResult.h:17
Definition IClientInstance.h:5
Definition IClientInstances.h:5
Definition IConnectionEventing.h:10
Definition IContentKeyProvider.h:13
Definition IMinecraftEventing.h:137
Definition IMinecraftGame.h:5
Definition IResourcePackRepository.h:34
Definition ISceneStack.h:5
Definition ItemInHandRenderer.h:5
Definition ItemRegistryRef.h:36
Definition ItemRenderer.h:5
Definition KeyboardManager.h:5
Definition LegacyClientNetworkHandler.h:5
Definition LegacyMultiplayerToken.h:14
Definition LevelRendererCameraProxy.h:5
Definition LevelRenderer.h:5
Definition LightTexture.h:5
Definition LinkedAssetValidator.h:8
Definition MatrixStack.h:10
Definition MinecraftGraphics.h:5
Definition Minecraft.h:60
Definition SceneProvider.h:7
Definition PackManifestFactory.h:20
Definition PacketSender.h:17
Definition PlayerListener.h:10
Definition ResourcePackManager.h:29
Definition ScreenContext.h:5
Definition ScriptEngine.h:21
Definition ShaderColor.h:5
Definition GameConnectionInfo.h:21
Definition IUserManager.h:34
Definition TaskGroup.h:53
Definition UIEventCoordinator.h:13
Definition WeakEntityRef.h:14
Definition TextureGroup.h:7
Definition TexturePtr.h:19
Definition ActorBlockRenderer.h:5
Definition ActorResourceDefinitionGroup.h:5
Definition ActorUniqueID.h:5
Definition BlockActorRenderDispatcher.h:5
Definition BlockCullingGroup.h:5
Definition BlockTessellator.h:5
Definition CachedScenes.h:5
Definition CameraRegistry.h:5
Definition ClientInstanceArguments.h:5
Definition ClientInstanceInitArguments.h:5
Definition ClientInstance.h:16
MCAPI ~ClientDestroyBlockState()
Definition ClientInstance.h:14
MCAPI ~ClientRenderResources()
Definition ClientRequirementVerifier.h:5
Definition ClientScriptManager.h:5
Definition DeferredLighting.h:5
Definition DevConsoleLogger.h:5
Definition DisconnectionErrorDetails.h:5
Definition DisconnectionRequestHandler.h:5
Definition DisconnectionScreenParams.h:9
Definition ExperienceConnectionData.h:5
Definition FileDataRequest.h:5
Definition FogDefinitionRegistry.h:5
Definition FogManager.h:5
Definition FrameUpdateContext.h:5
Definition GeometryGroup.h:5
Definition GuidedFlowManager.h:5
Definition HitDetectSystem.h:5
Definition HudIconActorRenderer.h:5
Definition IGameConnectionListener.h:5
Definition ISettingsRegistry.h:5
Definition ITTSEventManager.h:5
Definition IUIRepository.h:5
Definition LatencyGraphDisplay.h:5
Definition ListenerState.h:5
Definition LocalPlayerChangedConnector.h:5
Definition LocalPlayer.h:5
Definition MobEffectsLayout.h:5
Definition MultiPlayerLevel.h:5
Definition MusicManager.h:5
Definition ITelemetry.h:7
Definition UIBlockThumbnailAtlasManager.h:7
Definition PacksInfoData.h:14
Definition PersonaRepository.h:5
Definition PlayerAuthentication.h:5
Definition IClientController.h:7
Definition PlayerJoinWorldTelemetryInfo.h:5
Definition PlayerReportHandler.h:5
Definition ProfanityContext.h:5
Definition ProgressHandler.h:5
Definition RawGameServerToken.h:8
Definition SceneFactory.h:5
Definition ScreenLoadTimeTracker.h:5
Definition ScreenshotOptions.h:5
Definition SkinRepositoryClientInterface.h:5
Definition SkinRepository.h:5
Definition MultiplayerServiceManager.h:7
Definition SoundEngine.h:5
Definition SplitScreenInfo.h:5
Definition TextToSpeechClient.h:5
Definition ToastManager.h:5
Definition TrialManager.h:5
Definition WorldTransferAgent.h:5
Definition WorldSystem.h:7
Definition ViewportInfo.h:7
Definition ScreenTechStackSelector.h:7