LeviLamina
Loading...
Searching...
No Matches
ClientInstance.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
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/SceneType.h"
14#include "mc/client/gui/StoreNavigationOrigin.h"
15#include "mc/client/gui/screens/controllers/InventoryTabIndex.h"
16#include "mc/client/gui/screens/controllers/MarketplacePassTabIndex.h"
17#include "mc/client/gui/screens/models/PlayScreenDefaultTab.h"
18#include "mc/client/options/SplitScreenDirection.h"
19#include "mc/client/persona/IPersonaClientProvider.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/common/SubClientId.h"
25#include "mc/deps/core/file/LevelStorageState.h"
26#include "mc/deps/core/file/PathBuffer.h"
27#include "mc/deps/core/file/StorageAreaStateListener.h"
28#include "mc/deps/core/threading/Async.h"
29#include "mc/deps/core/utility/NonOwnerPointer.h"
30#include "mc/deps/core/utility/UniqueOwnerPointer.h"
31#include "mc/deps/core_graphics/math/Rect.h"
32#include "mc/deps/game_refs/OwnerPtr.h"
33#include "mc/deps/game_refs/WeakRef.h"
34#include "mc/deps/input/InputMode.h"
35#include "mc/deps/input/PointerType.h"
36#include "mc/deps/input/enums/WYSIWYGState.h"
37#include "mc/deps/minecraft_renderer/renderer/TexturePtr.h"
38#include "mc/deps/renderer/MatrixStack.h"
39#include "mc/events/NetworkType.h"
40#include "mc/input/ClientPlayMode.h"
41#include "mc/network/connection/DisconnectFailReason.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"
49
50// auto generated forward declare list
51// clang-format off
52class AbstractScene;
53class Actor;
60class BlockSource;
63class CachedScenes;
64class CameraRegistry;
68class ClientLevel;
75class DateManager;
79class EDUSystems;
80class EntityContext;
81class EntitySystems;
82class FileDataRequest;
84class FogManager;
85class FontHandle;
88class GameRenderer;
89class GeometryGroup;
90class GuiData;
92class HitDetectSystem;
93class HitResult;
100class IMinecraftGame;
101class IOptionRegistry;
104class ISceneStack;
105class ITTSEventManager;
106class IUIRepository;
108class ItemRegistryRef;
109class ItemRenderer;
110class KeyboardManager;
113class Level;
114class LevelRenderer;
116class LightTexture;
118class LocalPlayer;
119class MarketplaceServicesManager;
120class Minecraft;
123class MobEffectsLayout;
124class MusicManager;
125class Option;
126class OptionRegistry;
128class PacketSender;
129class PersonaClient;
131class PixelCalc;
132class Player;
135class ProfanityContext;
137class SceneFactory;
138class ScreenContext;
140class ShaderColor;
141class SkinRepository;
142class SoundEngine;
143class StoreCatalogItem;
144class StoreCatalogRepository;
145class TaskGroup;
147class ToastManager;
148class TrialManager;
150class Vec2;
151class Vec3;
152class WeakEntityRef;
154struct ActorUniqueID;
159struct ListenerState;
161struct PacksInfoData;
163struct RawGameServerToken;
164struct ScreenshotOptions;
166struct SplitScreenInfo;
167namespace ApplicationSignal { class ClipboardCopy; }
168namespace ApplicationSignal { class ClipboardPasteRequest; }
169namespace Automation { class AutomationClient; }
170namespace Bedrock::Http { class Status; }
171namespace Bedrock::Profiling { struct IProfilingOrchestratorProvider; }
172namespace Core { class FileStorageArea; }
173namespace Core { class Path; }
174namespace Editor { class IEditorManager; }
175namespace Editor { class IEditorPlayer; }
176namespace OreUI { class ITelemetry; }
177namespace OreUI { class Router; }
178namespace OreUI { class SceneProvider; }
179namespace OreUI { class UIBlockThumbnailAtlasManager; }
180namespace PlayerCapabilities { struct IClientController; }
181namespace Realms { struct World; }
182namespace Scripting { class ScriptEngine; }
183namespace Settings { class IRegistry; }
184namespace Social { class GameConnectionInfo; }
185namespace Social { class IUserManager; }
186namespace Social { class MultiplayerServiceManager; }
187namespace Social { class User; }
188namespace World { class WorldSystem; }
189namespace mce { class Camera; }
190namespace mce { class Texture; }
191namespace mce { class TextureGroup; }
192namespace mce { struct ViewportInfo; }
193namespace ui { class ScreenTechStackSelector; }
194// clang-format on
195
196class ClientInstance : public ::IClientInstance,
199 public ::GameCallbacks,
200 public ::PlayerListener,
201 public ::std::enable_shared_from_this<::ClientInstance> {
202public:
203 // ClientInstance inner types declare
204 // clang-format off
208 struct mCreditsCallback;
209 // clang-format on
210
211 // ClientInstance inner types define
212 struct ClientRenderResources {
213 public:
214 // member variables
215 // NOLINTBEGIN
216 ::ll::TypedStorage<8, 8, ::mce::Texture*> mUITexture;
217 ::ll::TypedStorage<8, 32, ::mce::TexturePtr> mUICursorTexture;
218 // NOLINTEND
219 };
220
222 public:
223 // member variables
224 // NOLINTBEGIN
225 ::ll::UntypedStorage<8, 8> mUnkff7778;
226 ::ll::UntypedStorage<8, 8> mUnk241918;
227 ::ll::UntypedStorage<1, 1> mUnkb9c8a1;
228 ::ll::UntypedStorage<8, 8> mUnk4fdef3;
229 ::ll::UntypedStorage<8, 64> mUnk4fd828;
230 ::ll::UntypedStorage<8, 64> mUnk738e7f;
231 ::ll::UntypedStorage<8, 64> mUnk525e8f;
232 // NOLINTEND
233
234 public:
235 // prevent constructor by default
236 ClientDestroyBlockState& operator=(ClientDestroyBlockState const&);
237 ClientDestroyBlockState(ClientDestroyBlockState const&);
238 ClientDestroyBlockState();
239 };
240
242
244
245public:
246 LLAPI static bool tickDestroyBlock(::ClientInstance::ClientDestroyBlockState& destroyBlockState, bool advanceTime);
247
248 IMinecraftGame& getMinecraftGame() { return *mUnke2a76f.as<IMinecraftGame*>(); }
249
250public:
251 // member variables
252 // NOLINTBEGIN
385 // NOLINTEND
386
387public:
388 // prevent constructor by default
389 ClientInstance& operator=(ClientInstance const&);
392
393public:
394 // virtual functions
395 // NOLINTBEGIN
396 virtual ~ClientInstance() /*override*/ = default;
397
398 virtual void onInitMinecraftGame() /*override*/;
399
400 virtual void onDestroyMinecraftGame() /*override*/;
401
402 virtual void init(::ClientInstanceInitArguments&& args) /*override*/;
403
404 virtual void initSceneFactory(
405 ::std::unique_ptr<::SceneFactory> sceneFactory,
406 ::std::unique_ptr<::OreUI::SceneProvider> sceneProvider
407 ) /*override*/;
408
409 virtual void setUiRouter(::std::unique_ptr<::OreUI::Router> uiRouter) /*override*/;
410
411 virtual void initGraphics() /*override*/;
412
413 virtual void stop() /*override*/;
414
415 virtual void teardown() /*override*/;
416
417 virtual void preShutDown() /*override*/;
418
419 virtual void setGameConnectionInfo(::Social::GameConnectionInfo const& gameConnection) /*override*/;
420
421 virtual ::std::optional<::Social::GameConnectionInfo> getGameConnectionInfo() /*override*/;
422
423 virtual void onStartJoinGame(
424 bool isLocalServer,
425 ::std::string const& multiplayerCorrelationId,
426 ::std::string const& serverName,
427 ::std::string const& worldName,
428 ::NetworkType networkType,
429 ::Social::MultiplayerServiceIdentifier service,
431 ) /*override*/;
432
433 virtual void onCancelJoinGame() /*override*/;
434
435 virtual void requestLeaveGameAsync() /*override*/;
436
437 virtual void requestLeaveGame(bool switchScreen, bool sync) /*override*/;
438
439 virtual void stopPlayScreen() /*override*/;
440
441 virtual bool isLeaveGameDone() const /*override*/;
442
443 virtual void setupPlayScreenForLeaveGame() /*override*/;
444
445 virtual void preCacheOutOfGameViews() /*override*/;
446
447 virtual void resetPrimaryClient() /*override*/;
448
449 virtual void resetGameSession() /*override*/;
450
451 virtual void tick() /*override*/;
452
453 virtual void frameUpdate(::FrameUpdateContext& frameUpdateContext) /*override*/;
454
455 virtual void preFrameTick() /*override*/;
456
457 virtual bool update(bool isInitFinished) /*override*/;
458
459 virtual void endFrame() /*override*/;
460
461 virtual float getFrameAlpha() /*override*/;
462
463 virtual void startSubClientLateJoin(
464 bool hasXBLBroadcast,
465 ::std::unique_ptr<::GameModuleClient> gameModuleClient,
466 ::std::optional<::ConnectionContextInfo> primaryConnectionInfo
467 ) /*override*/;
468
469 virtual ::Bedrock::Threading::Async<::ClientGameSetupResult> setupClientGame(
470 bool joiningLocalServer,
472 ::std::unique_ptr<::GameModuleClient> gameModuleClient
473 ) /*override*/;
474
475 virtual ::BlockSource* getRegion() /*override*/;
476
477 virtual ::LocalPlayer* getLocalPlayer() const /*override*/;
478
479 virtual void setupPrimaryClientEditorManager() /*override*/;
480
481 virtual ::Bedrock::NonOwnerPointer<::Editor::IEditorPlayer> getLocalEditorPlayer() const /*override*/;
482
483 virtual ::Bedrock::NonOwnerPointer<::Editor::IEditorManager> getEditorManager() const /*override*/;
484
485 virtual bool isPlayerInEditor() const /*override*/;
486
487 virtual ::LocalPlayerChangedConnector getLocalPlayerChangedConnector() /*override*/;
488
489 virtual ::WeakEntityRef getLocalUser() const /*override*/;
490
491 virtual ::Actor* getCameraActor() const /*override*/;
492
493 virtual void setCameraActor(::Actor* cameraActor) /*override*/;
494
495 virtual ::ListenerState const* getListenerState() const /*override*/;
496
497 virtual ::Actor* getCameraTargetActor() const /*override*/;
498
499 virtual void setCameraTargetActor(::Actor* cameraTargetActor) /*override*/;
500
501 virtual ::WeakEntityRef getCameraEntity() const /*override*/;
502
503 virtual void getRawCameraEntities(::WeakEntityRef& cameraEntity, ::WeakEntityRef& cameraTargetEntity) const
504 /*override*/;
505
506 virtual void setRawCameraEntities(::WeakEntityRef cameraEntity, ::WeakEntityRef cameraTargetEntity) /*override*/;
507
508 virtual ::HitResult const& getLatestHitResult() const /*override*/;
509
510 virtual bool isLeavingGame() const /*override*/;
511
512 virtual bool isDestroyingGame() const /*override*/;
513
514 virtual bool isShuttingDown() const /*override*/;
515
516 virtual bool useLowFrequencyUIRender() const /*override*/;
517
518 virtual bool isSplitScreenActive() const /*override*/;
519
520 virtual bool isExitingLevel() const /*override*/;
521
522 virtual bool isInBedScreen() const /*override*/;
523
524 virtual bool isInDeathScreen() const /*override*/;
525
526 virtual bool isKeyboardEnabled() const /*override*/;
527
528 virtual bool hasCommands() const /*override*/;
529
530 virtual int getSplitScreenCount() const /*override*/;
531
532 virtual bool isShowingLoadingScreen() const /*override*/;
533
534 virtual bool shouldDisconnectOnAppSuspended() const /*override*/;
535
536 virtual bool isGamePlayTipsEnabled() const /*override*/;
537
538 virtual bool isPlatformNX() const /*override*/;
539
540 virtual bool isLocalSplitscreenWith(::ActorUniqueID const& id) const /*override*/;
541
542 virtual bool isValidCrossPlatformSkin(bool valueIfNull) const /*override*/;
543
544 virtual bool isSelectedSkinInitialized() const /*override*/;
545
546 virtual ::SplitScreenInfo getSplitScreenInfo() const /*override*/;
547
548 virtual bool getHandlingControllerDisconnect() /*override*/;
549
550 virtual void setOpenControllerDisconnectScreen(bool open) /*override*/;
551
552 virtual ::ClientPlayMode getClientPlayMode() const /*override*/;
553
554 virtual void setClientPlayMode(::ClientPlayMode const& mode) /*override*/;
555
556 virtual ::std::function<void()> getCreditsCallback() /*override*/;
557
558 virtual void setCreditsCallback(::std::function<void()> callback) /*override*/;
559
560 virtual void setupTransitionForCredits(::std::function<void()> callback) /*override*/;
561
562 virtual void refreshScreenSizeData() /*override*/;
563
564 virtual void onScreenSizeChanged(int width, int height) /*override*/;
565
566 virtual void onGuiScaleOffsetChanged() /*override*/;
567
568 virtual void onSafeZoneChanged() /*override*/;
569
570 virtual bool hasDismissedNewPlayerFlow() const /*override*/;
571
572 virtual void quit(::std::string const& src, ::std::string const& reason) /*override*/;
573
574 virtual ::IMinecraftGame& getMinecraftGame_DEPRECATED() const /*override*/;
575
576 virtual ::IClientInstances& getClientInstances() const /*override*/;
577
578 virtual ::World::WorldSystem& getWorldSystem() const /*override*/;
579
580 virtual bool isWorldSystemReady() const /*override*/;
581
582 virtual ::Bedrock::NotNullNonOwnerPtr<::Automation::AutomationClient> getAutomationClient() const /*override*/;
583
584 virtual ::Bedrock::NonOwnerPointer<::EDUSystems> getEDUSystems() /*override*/;
585
586 virtual ::Bedrock::NonOwnerPointer<::EDUSystems const> getEDUSystems() const /*override*/;
587
588 virtual ::IMinecraftEventing& getEventing() const /*override*/;
589
590 virtual ::IConnectionEventing& getConnectionEventing() const /*override*/;
591
592 virtual ::Bedrock::Profiling::IProfilingOrchestratorProvider& getProfilingOrchestratorProvider() const /*override*/;
593
594 virtual ::FontHandle getFontHandle() const /*override*/;
595
596 virtual ::FontHandle getRuneFontHandle() const /*override*/;
597
598 virtual ::FontHandle getUnicodeFontHandle() const /*override*/;
599
600 virtual ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup> getGeometryGroup() const /*override*/;
601
602 virtual ::Bedrock::NotNullNonOwnerPtr<::BlockCullingGroup> getBlockCullingGroup() const /*override*/;
603
604 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::MultiplayerServiceManager> getMultiplayerServiceManager() const
605 /*override*/;
606
607 virtual ::IResourcePackRepository& getResourcePackRepository() const /*override*/;
608
609 virtual ::ResourcePackManager& getResourcePackManager() const /*override*/;
610
611 virtual ::PackManifestFactory& getPackManifestFactory() /*override*/;
612
613 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> getKeyProvider() const /*override*/;
614
615 virtual ::PacksInfoData const& getHostSpecifiedPacks() const /*override*/;
616
617 virtual ::std::shared_ptr<::SkinRepository> getSkinRepository() const /*override*/;
618
619 virtual ::PersonaRepository& getPersonaRepository() const /*override*/;
620
621 virtual ::MarketplaceServicesManager& getMarketplaceServicesManager() const /*override*/;
622
623 virtual ::PersonaClient& getPersonaClient() const /*override*/;
624
625 virtual ::Bedrock::NotNullNonOwnerPtr<::StoreCatalogRepository> getStoreCatalogRepository() /*override*/;
626
627 virtual ::std::shared_ptr<::mce::TextureGroup> getTextureGroup() const /*override*/;
628
629 virtual ::Bedrock::NotNullNonOwnerPtr<::mce::TextureGroup> getStoreCacheTextures() const /*override*/;
630
631 virtual ::Bedrock::NotNullNonOwnerPtr<::MinecraftGraphics> getMinecraftGraphics() const /*override*/;
632
633 virtual ::Bedrock::NotNullNonOwnerPtr<::IUIRepository> getUIRepository() const /*override*/;
634
635 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> getUserManager() const /*override*/;
636
637 virtual ::Bedrock::NotNullNonOwnerPtr<::TrialManager> getTrialManager() const /*override*/;
638
639 virtual bool wantToQuit() const /*override*/;
640
641 virtual bool isPrimaryLevelCrossPlatformMultiplayer() const /*override*/;
642
643 virtual bool isPrimaryLevelMultiplayer() const /*override*/;
644
645 virtual bool isAdhocEnabled() const /*override*/;
646
647 virtual ::std::shared_ptr<::ActorAnimationGroup> getActorAnimationGroup() const /*override*/;
648
649 virtual bool isMarketplaceDisabled() const /*override*/;
650
651 virtual ::std::pair<::StoreErrorCodes, ::std::string> const getMarketplaceDisabledReasonWithErrorCode() const
652 /*override*/;
653
654 virtual void linkToOffer(::std::string const& productId, bool allowWhileInGame) /*override*/;
655
656 virtual void linkToPage(::std::string const& pageId) /*override*/;
657
658 virtual void linkTo3PServerOffers(::std::string const& pageId, ::std::string const& creatorName) /*override*/;
659
660 virtual void navigateToMarketplaceInventoryScreen(::InventoryTabIndex tabIndex) /*override*/;
661
662 virtual void navigateToStoreHomeScreen() /*override*/;
663
664 virtual void navigateToCoinPurchaseScreen(int neededCoins, ::std::function<void(bool, int)> callback) /*override*/;
665
666 virtual void
667 navigateToPurchaseOfferScreen(::StoreCatalogItem& item, ::StoreNavigationOrigin, bool const) /*override*/;
668
669 virtual void navigateToDressingRoomOfferScreen(::std::string const& offerId) /*override*/;
670
671 virtual bool navigateToProfileScreen(::std::string const&, bool const preventProgressScreen) /*override*/;
672
673 virtual void navigateToServersScreen(bool const calledFromHyperlink) /*override*/;
674
675 virtual void navigateToHowToPlayScreen(::std::string const& startTopic) /*override*/;
676
677 virtual void navigateToMarketplacePassPDPScreen(::MarketplacePassTabIndex tabIndex) /*override*/;
678
679 virtual void navigateToRealmsStoriesTransitionScreen(::Realms::World const& world) /*override*/;
680
681 virtual void tryPushLeaveGameScreen() /*override*/;
682
683 virtual void tryStartDayOneExperience() /*override*/;
684
685 virtual bool isReadyToRender() const /*override*/;
686
687 virtual void onDimensionChangedEvent() /*override*/;
688
689 virtual void onGameEventNotification(::ui::GameEventNotification notification) /*override*/;
690
691 virtual ::std::string getTopScreenName() const /*override*/;
692
693 virtual void setLeaveGameInProgressAsReadyToContinue() /*override*/;
694
695 virtual void stopDestroying() /*override*/;
696
697 virtual void onClientCreatedLevel(
698 ::std::pair<::std::unique_ptr<::Level>, ::OwnerPtr<::EntityContext>> levelEntity,
699 ::OwnerPtr<::EntityContext> userEntity
700 ) /*override*/;
701
702 virtual ::PlayerAuthentication& getPlayerAuthentication() /*override*/;
703
704 virtual void createPlayerAuthentication() /*override*/;
705
706 virtual void createPlayerAuthentication(uint64 clientRandomId) /*override*/;
707
708 virtual ::std::string getPlatformId() const /*override*/;
709
710 virtual ::std::string getPlatformOnlineId() const /*override*/;
711
712 virtual bool useController() const /*override*/;
713
714 virtual bool useTouchscreen() const /*override*/;
715
716 virtual bool getMouseGrabbed() const /*override*/;
717
718 virtual bool currentInputModeIsMouseAndKeyboard() const /*override*/;
719
720 virtual bool allowPicking() const /*override*/;
721
722 virtual bool isShowingMenu() const /*override*/;
723
724 virtual bool isShowingPauseScreen() const /*override*/;
725
726 virtual bool isShowingProgressScreen() const /*override*/;
727
728 virtual bool isShowingWorldProgressScreen() const /*override*/;
729
730 virtual bool isShowingRealmsProgressScreen() const /*override*/;
731
732 virtual bool isShowingDeathScreen() const /*override*/;
733
734 virtual bool isShowingServerForm() const /*override*/;
735
736 virtual bool isScreenReplaceable() const /*override*/;
737
738 virtual bool isInWorldAndNotShowingAnyMenuScreens() const /*override*/;
739
740 virtual bool isWorldActive() const /*override*/;
741
742 virtual bool isInRealm() /*override*/;
743
744 virtual bool readyForShutdown() const /*override*/;
745
746 virtual bool isPrimaryClient() const /*override*/;
747
748 virtual bool isEduMode() const /*override*/;
749
750 virtual bool isGamepadCursorEnabled() const /*override*/;
751
752 virtual bool isInControlCustomization() const /*override*/;
753
754 virtual ::Bedrock::NotNullNonOwnerPtr<::Minecraft> getServerData() /*override*/;
755
756 virtual ::Bedrock::NotNullNonOwnerPtr<::Minecraft const> getServerData() const /*override*/;
757
758 virtual ::ClientLevel* getLevel() /*override*/;
759
760 virtual ::ClientLevel const* getLevel() const /*override*/;
761
762 virtual bool hasLevel() const /*override*/;
763
764 virtual bool isPreGame() const /*override*/;
765
766 virtual bool isInMultiplayerGame() const /*override*/;
767
768 virtual bool isMultiPlayerClient() const /*override*/;
769
770 virtual ::IOptionRegistry& getOptions() /*override*/;
771
772 virtual ::IOptionRegistry const& getOptions() const /*override*/;
773
774 virtual ::IReadWriteOptions const& getReadWriteOptions() const /*override*/;
775
776 virtual ::std::shared_ptr<::OptionRegistry> getOptionsPtr() /*override*/;
777
778 virtual ::std::shared_ptr<::OptionRegistry const> const getOptionsPtr() const /*override*/;
779
780 virtual ::std::shared_ptr<::Social::User> const& getUser() const /*override*/;
781
782 virtual ::std::shared_ptr<::Settings::IRegistry> getSettingsRegistry() /*override*/;
783
784 virtual ::Option const& getShowLearningPromptsOption() const /*override*/;
785
786 virtual ::Option& getShowControlTipsOption() /*override*/;
787
788 virtual ::Option& getShowControlTipsOverrideOption() /*override*/;
789
790 virtual double getControlTipsTimeElapsed() const /*override*/;
791
792 virtual void setControlTipsTimeElapsedStart() /*override*/;
793
794 virtual ::GameRenderer& getGameRenderer() const /*override*/;
795
796 virtual ::LevelRenderer* getLevelRenderer() const /*override*/;
797
798 virtual ::LevelRendererCameraProxy* getLevelRendererCameraProxy() const /*override*/;
799
800 virtual ::Bedrock::NonOwnerPointer<::CameraRegistry> getCameraRegistry() /*override*/;
801
802 virtual ::Bedrock::NonOwnerPointer<::CameraRegistry const> getCameraRegistry() const /*override*/;
803
804 virtual ::Bedrock::NonOwnerPointer<::EntitySystems> getCameraSystems() /*override*/;
805
806 virtual ::LightTexture* getLightTexture() /*override*/;
807
808 virtual void setupLevelRendering(::ClientLevel& level, ::WeakEntityRef cameraTargetEntity) /*override*/;
809
810 virtual ::mce::ViewportInfo const& getViewportInfo() const /*override*/;
811
812 virtual void setViewportInfo(::mce::ViewportInfo const& viewportInfo) /*override*/;
813
814 virtual ::Vec2 getNormalizedViewportSize() const /*override*/;
815
816 virtual void updateChunkRadius() /*override*/;
817
818 virtual void setUITexture(::mce::Texture* tex) /*override*/;
819
820 virtual ::mce::Texture* getUITexture() /*override*/;
821
822 virtual void setLevelTexture(::mce::Texture* tex) /*override*/;
823
824 virtual ::mce::Texture* getLevelTexture() /*override*/;
825
826 virtual void setUICursorTexture(::mce::TexturePtr tex) /*override*/;
827
828 virtual ::mce::TexturePtr getUICursorTexture() const /*override*/;
829
830 virtual ::mce::Camera& getCamera() /*override*/;
831
832 virtual ::ShaderColor& getShaderColor() /*override*/;
833
834 virtual ::ShaderColor& getDarkShaderColor() /*override*/;
835
836 virtual void clearGraphicsCache() /*override*/;
837
838 virtual void
839 getNormalizedUICursorTransform(::MatrixStack::MatrixStackRef& matrix, float cursorHalfSizeTexels) /*override*/;
840
841 virtual bool shouldRenderUICursor() const /*override*/;
842
843 virtual bool getRenderPlayerModel() const /*override*/;
844
845 virtual ::DeferredLighting& getDeferredLighting() /*override*/;
846
847 virtual float getGuiScale() const /*override*/;
848
849 virtual ::Option const& getGuiScaleOption() const /*override*/;
850
851 virtual int getGuiScaleOffset() const /*override*/;
852
853 virtual void setGuiScaleOffset(int guiScale) /*override*/;
854
855 virtual void renderImGui(::ScreenContext& screenContext, bool drawMenuBar) /*override*/;
856
857 virtual ::Bedrock::NotNullNonOwnerPtr<::GuiData> getGuiData() /*override*/;
858
859 virtual ::Bedrock::NotNullNonOwnerPtr<::GuiData const> getGuiData() const /*override*/;
860
861 virtual ::GuidedFlowManager& getGuidedFlowManager() /*override*/;
862
863 virtual ::PixelCalc const& getDpadScale() const /*override*/;
864
865 virtual ::Bedrock::NotNullNonOwnerPtr<::DateManager const> getDateManager() const /*override*/;
866
867 virtual void addOverrideHoursToDateTime(uint const hoursToAdd) /*override*/;
868
869 virtual ::ToastManager& getToastManager() /*override*/;
870
871 virtual ::ClipboardProxy<::ApplicationSignal::ClipboardCopy, ::ApplicationSignal::ClipboardPasteRequest>&
872 getClipboardManager() /*override*/;
873
874 virtual ::AbstractScene* getTopScene() /*override*/;
875
876 virtual ::AbstractScene const* getTopScene() const /*override*/;
877
878 virtual ::AbstractScene* getActiveScene() /*override*/;
879
880 virtual ::AbstractScene const* getActiveScene() const /*override*/;
881
882 virtual ::SceneFactory& getSceneFactory() const /*override*/;
883
884 virtual ::OreUI::SceneProvider& getSceneProvider() const /*override*/;
885
886 virtual ::ui::ScreenTechStackSelector& getScreenTechStackSelector() /*override*/;
887
888 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack const> getClientSceneStack() const /*override*/;
889
890 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> getClientSceneStack() /*override*/;
891
892 virtual ::OreUI::Router& getClientUIRouter() const /*override*/;
893
894 virtual ::ISceneStack& getMainSceneStackInterface() /*override*/;
895
896 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> getMainSceneStack() /*override*/;
897
898 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack const> getMainSceneStack() const /*override*/;
899
900 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack const> getCurrentSceneStack() const /*override*/;
901
902 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> getCurrentSceneStack() /*override*/;
903
904 virtual ::OreUI::Router& getCurrentUIRouter() /*override*/;
905
906 virtual ::OreUI::Router const& getCurrentUIRouter() const /*override*/;
907
908 virtual ::OreUI::ITelemetry& getOreUITelemetry() /*override*/;
909
910 virtual ::WeakRef<::OreUI::UIBlockThumbnailAtlasManager> getOreUIBlockThumbnailAtlasManager() const /*override*/;
911
912 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> prepareSceneFor(
913 ::ui::SceneType const sceneTypeToFind,
914 ::std::function<::std::shared_ptr<::AbstractScene>()> createScreenCallback
915 ) /*override*/;
916
917 virtual ::CachedScenes& getCachedScenes() /*override*/;
918
919 virtual ::std::string getScreenName() const /*override*/;
920
921 virtual ::std::string getScreenTelemetry() const /*override*/;
922
923 virtual ::ui::SceneType getTopSceneType() const /*override*/;
924
925 virtual ::MobEffectsLayout& getMobEffectsLayout() /*override*/;
926
927 virtual ::std::string emoticonifyText(::std::string const& text) const /*override*/;
928
929 virtual ::std::string emoticonifyText(::std::string const& text, bool isGameTip) /*override*/;
930
931 virtual void onMobEffectsChange() /*override*/;
932
933 virtual void setUISize(int w, int h) /*override*/;
934
935 virtual void forEachVisibleScreen(::brstd::function_ref<void(::AbstractScene&)> callback) /*override*/;
936
937 virtual void forEachScreen(::brstd::function_ref<bool(::AbstractScene&)> callback, bool topDown) /*override*/;
938
939 virtual void forEachScreenConst(::brstd::function_ref<bool(::AbstractScene const&)> callback, bool topDown) const
940 /*override*/;
941
942 virtual bool updateSceneStack() /*override*/;
943
944 virtual void forEachAlwaysAcceptInputScreen(
945 ::std::function<void(::AbstractScene&)> callback,
946 ::AbstractScene const* ignoreScreen
947 ) /*override*/;
948
949 virtual void forEachAlwaysAcceptInputScreenWithTop(::std::function<void(::AbstractScene&)> callback) /*override*/;
950
951 virtual void showPlayerProfile(::std::string const& xuid, ::std::string const& platformId) /*override*/;
952
953 virtual bool isInGameInputEnabled() const /*override*/;
954
955 virtual void setInGameInputEnabled(bool isEnabled) /*override*/;
956
957 virtual ::Vec2 getSafeZoneScale() const /*override*/;
958
959 virtual void verifySkinApproval(
960 ::std::function<void(::std::string)> const& notApprovedCallback,
961 ::std::function<void()> const& approvedCallback
962 ) const /*override*/;
963
964 virtual ::InputMode getCurrentInputMode() const /*override*/;
965
966 virtual bool isTouchGameplayAllowed() const /*override*/;
967
968 virtual ::Bedrock::NonOwnerPointer<::MinecraftInputHandler> getMinecraftInput() const /*override*/;
969
970 virtual ::KeyboardManager& getKeyboardManager() /*override*/;
971
972 virtual void setLastPointerLocation(float x, float y, float z) /*override*/;
973
974 virtual void clearTouchPointerLocations() /*override*/;
975
976 virtual void clearTouchPointerLocation(int id) /*override*/;
977
978 virtual void updateTouchPointerLocation(int id, float x, float y) /*override*/;
979
980 virtual ::Vec3 getLastPointerLocation() /*override*/;
981
982 virtual ::Vec2 getTouchPointerLocation(int id) const /*override*/;
983
984 virtual void updateActionPointerId(int id) /*override*/;
985
986 virtual int getActionPointerId() const /*override*/;
987
988 virtual bool shouldUseLastPointerLocationOnFocusChange() /*override*/;
989
990 virtual bool currentScreenShouldStealMouse() /*override*/;
991
992 virtual ::BuildActionIntention& getInProgressBAI() const /*override*/;
993
994 virtual ::PacketSender& getPacketSender() /*override*/;
995
996 virtual ::ClientNetworkSystem& getClientNetworkSystem() /*override*/;
997
998 virtual ::ClientNetworkSystem const& getClientNetworkSystem() const /*override*/;
999
1000 virtual ::glm::vec2 getGamepadCursorPosition() const /*override*/;
1001
1002 virtual void updateControlOptionState(uint id, bool active) /*override*/;
1003
1004 virtual void clearActiveControlOptions() /*override*/;
1005
1006 virtual ::std::set<uint> const& getActiveControlOptions() const /*override*/;
1007
1008 virtual ::std::vector<::OptionID> getActiveOptionIDs(::ControlOptionType controlOptionType) const /*override*/;
1009
1010 virtual void setNumberOfActiveConfigs(int numberOfActiveConfigs) /*override*/;
1011
1012 virtual int getNumberOfActiveConfigs() const /*override*/;
1013
1014 virtual bool isNoConfigSelected() const /*override*/;
1015
1016 virtual void setNumberOfEnabledConfigs(int numberOfEnabledConfigs) /*override*/;
1017
1018 virtual int getNumberOfEnabledConfigs() const /*override*/;
1019
1020 virtual void setWYSIWYGState(::WYSIWYGState wysiwygState) /*override*/;
1021
1022 virtual ::WYSIWYGState getWYSIWYGState() const /*override*/;
1023
1024 virtual void setOtherConfigsExistInThisCategory(bool otherConfigsExistInThisCategory) /*override*/;
1025
1026 virtual bool getOtherConfigsExistInThisCategory() const /*override*/;
1027
1028 virtual void setMoveTurnInput(::std::unique_ptr<::ClientMoveInputHandler> pClientMoveInputHandler) /*override*/;
1029
1030 virtual void setupPersistentControls(::InputMode currentMode) /*override*/;
1031
1032 virtual void resetPlayerMovement() /*override*/;
1033
1034 virtual void suspendPredictedMovement() /*override*/;
1035
1036 virtual void onClientInputInitComplete() /*override*/;
1037
1038 virtual void setClientInputHandler(::std::unique_ptr<::ClientInputHandler> pClientInputHandler) /*override*/;
1039
1040 virtual ::ClientInputHandler* getInput() const /*override*/;
1041
1042 virtual int getControllerId() const /*override*/;
1043
1044 virtual bool hasConnectedController() const /*override*/;
1045
1046 virtual ::SubClientId getClientSubId() const /*override*/;
1047
1048 virtual void setSuspendInput(bool suspendInput) /*override*/;
1049
1050 virtual void setSuspendDirectionalInput(bool suspendDirectionalInput) /*override*/;
1051
1052 virtual void setDisableInput(bool disableInput) /*override*/;
1053
1054 virtual void grabMouse() /*override*/;
1055
1056 virtual void releaseMouse() /*override*/;
1057
1058 virtual void refocusMouse(bool lostMouse) /*override*/;
1059
1060 virtual void setMouseType(::Bedrock::Input::PointerType type) /*override*/;
1061
1062 virtual void resetBai(int baiFlags) /*override*/;
1063
1064 virtual void clearInProgressBAI() /*override*/;
1065
1066 virtual ::Bedrock::NotNullNonOwnerPtr<::SoundEngine> getSoundEngine() const /*override*/;
1067
1068 virtual ::MusicManager const* getMusicManager() const /*override*/;
1069
1070 virtual ::MusicManager* getMusicManagerNonConst() const /*override*/;
1071
1072 virtual void play(::std::string const& name, ::Vec3 const& pos, float volume, float pitch) /*override*/;
1073
1074 virtual void playUI(::std::string const& name, float volume, float pitch) /*override*/;
1075
1076 virtual void muteAudio() /*override*/;
1077
1078 virtual void unMuteAudio() /*override*/;
1079
1080 virtual void fadeOutMusic() const /*override*/;
1081
1082 virtual ::TaskGroup& getTaskGroup() /*override*/;
1083
1084 virtual void onFullVanillaPackOnStack() /*override*/;
1085
1086 virtual bool isFullVanillaPackOnStack() const /*override*/;
1087
1088 virtual void onPlayerLoaded(::Player& player) /*override*/;
1089
1090 virtual void setClientGameMode(::GameType gameType) /*override*/;
1091
1092 virtual void resetToDefaultGameMode() /*override*/;
1093
1094 virtual ::IGameConnectionListener& getGameConnectionListener() /*override*/;
1095
1096 virtual void connectToThirdPartyServer(::std::string const& ipAddress, int port) /*override*/;
1097
1098 virtual void startExternalNetworkWorld(
1099 ::Social::GameConnectionInfo connection,
1100 ::std::string const& serverName,
1102 ) /*override*/;
1103
1104 virtual bool isReadyToReconnect() const /*override*/;
1105
1106 virtual bool checkForPiracy() /*override*/;
1107
1108 virtual void updateChatFilterStatus(::ProfanityContext& profanityContext) /*override*/;
1109
1110 virtual void updateControllerHandling() /*override*/;
1111
1112 virtual void onPlayerDestruction(::Player& player) /*override*/;
1113
1114 virtual void
1115 setBehaviorCommandCallback(::std::function<void(::std::string const&, ::BehaviorStatus)> callback) /*override*/;
1116
1117 virtual void setBehaviorCommandStatus(::std::string const& treeName, ::BehaviorStatus status) /*override*/;
1118
1119 virtual void setConnectGamepadScreenActive(bool active) /*override*/;
1120
1121 virtual ::Bedrock::Threading::Async<::Core::PathBuffer<::std::string>>
1122 requestScreenshot(::ScreenshotOptions& screenshotOptions) /*override*/;
1123
1124 virtual ::Bedrock::NotNullNonOwnerPtr<::DevConsoleLogger> getDevConsoleLogger() const /*override*/;
1125
1126 virtual ::std::shared_ptr<::FileDataRequest> requestImageFromUrl(
1127 ::std::string const& imageUrl,
1128 ::std::function<void(::Bedrock::Http::Status, ::Core::Path const&, uint64)> callback
1129 ) /*override*/;
1130
1131 virtual void setActiveFileStorageArea(::std::shared_ptr<::Core::FileStorageArea> storageArea) /*override*/;
1132
1133 virtual void onExtendDiskSpace(
1134 bool const bSet,
1135 ::std::weak_ptr<::Core::FileStorageArea> const& storageAreaWeakPtr,
1136 uint64 freeSpace,
1137 ::std::function<void()> onHandledEventCallback
1138 ) /*override*/;
1139
1140 virtual void onLowDiskSpace(bool const bSet, uint64 freeSpace) /*override*/;
1141
1142 virtual void onOutOfDiskSpace(bool const bSet, uint64 freeSpace) /*override*/;
1143
1144 virtual void onCriticalDiskError(bool const bSet, ::Core::LevelStorageState const& errorCode) /*override*/;
1145
1146 virtual void onLevelCorrupt() /*override*/;
1147
1148 virtual void onGameModeChanged() /*override*/;
1149
1150 virtual void onBeforeSimTick() /*override*/;
1151
1152 virtual void onTick(int nTick, int maxTick) /*override*/;
1153
1154 virtual void onInternetUpdate() /*override*/;
1155
1156 virtual void onGameSessionReset() /*override*/;
1157
1158 virtual void onLevelExit() /*override*/;
1159
1160 virtual void onRequestResourceReload() /*override*/;
1161
1162 virtual void updateScreens() /*override*/;
1163
1164 virtual void initializeRenderResources() /*override*/;
1165
1166 virtual void postInitRenderResources() /*override*/;
1167
1168 virtual void onAppSuspended() /*override*/;
1169
1170 virtual void onAppResumed() /*override*/;
1171
1172 virtual void onActiveResourcePacksChanged(
1173 ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup> const& entityResourceDefGroup
1174 ) /*override*/;
1175
1176 virtual void reloadEntityRenderers(
1177 ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup> const& actorResourceDefinitionGroup
1178 ) /*override*/;
1179
1180 virtual ::BlockTessellator& getBlockTessellator() /*override*/;
1181
1182 virtual ::BlockActorRenderDispatcher& getBlockEntityRenderDispatcher() /*override*/;
1183
1184 virtual ::std::shared_ptr<::ActorRenderDispatcher> getEntityRenderDispatcher() /*override*/;
1185
1186 virtual ::ActorBlockRenderer& getEntityBlockRenderer() /*override*/;
1187
1188 virtual ::ItemInHandRenderer* getItemInHandRenderer() /*override*/;
1189
1190 virtual ::ItemRenderer* getItemRenderer() /*override*/;
1191
1192 virtual ::HudIconActorRenderer* getHudIconActorRenderer() /*override*/;
1193
1194 virtual ::std::deque<::std::string>& getSentMessageHistory() /*override*/;
1195
1196 virtual ::std::deque<::std::string>& getDevConsoleMessageHistory() /*override*/;
1197
1198 virtual ::Bedrock::NotNullNonOwnerPtr<::ProfanityContext> getProfanityContext() const /*override*/;
1199
1200 virtual void initTTSClient(::std::shared_ptr<::TextToSpeechClient> textToSpeechClient) /*override*/;
1201
1202 virtual ::std::shared_ptr<::TextToSpeechClient> getTTSClient() /*override*/;
1203
1204 virtual ::std::shared_ptr<::TextToSpeechClient const> getTTSClient() const /*override*/;
1205
1206 virtual ::std::shared_ptr<::ITTSEventManager> getTTSEventManager() /*override*/;
1207
1208 virtual void addTTSMessage(
1209 ::std::string const& message,
1210 ::ProfanityFilterContext profanityFilterContext,
1211 bool interruptible,
1212 ::std::string const& interruptibleId,
1213 bool required,
1214 bool disregardAppFocus
1215 ) /*override*/;
1216
1217 virtual void initCommands() /*override*/;
1218
1219 virtual uint getUserId() const /*override*/;
1220
1221 virtual bool isPrimaryUser() const /*override*/;
1222
1223 virtual double getServerConnectionTime() const /*override*/;
1224
1225 virtual void setServerPingTime(::std::chrono::milliseconds pingTime) /*override*/;
1226
1227 virtual ::std::chrono::milliseconds getServerPingTime() const /*override*/;
1228
1229 virtual void setDefaultPlayscreenTab(::PlayScreenDefaultTab defaultTab) /*override*/;
1230
1231 virtual void setClientInstanceState(::ClientInstanceState const& newstate) /*override*/;
1232
1233 virtual void setUIEventCoordinator(::Bedrock::UniqueOwnerPointer<::UIEventCoordinator>&& coordinator) /*override*/;
1234
1235 virtual ::Bedrock::NotNullNonOwnerPtr<::UIEventCoordinator> getUIEventCoordinator() /*override*/;
1236
1237 virtual ::Bedrock::NotNullNonOwnerPtr<::ClientInstanceEventCoordinator> getEventCoordinator() /*override*/;
1238
1239 virtual ::ClientNetworkEventCoordinator& getClientNetworkEventCoordinator() /*override*/;
1240
1241 virtual ::ClientScriptEventCoordinator& getClientScriptEventCoordinator() /*override*/;
1242
1243 virtual ::std::chrono::steady_clock::time_point getNoBlockBreakUntil() /*override*/;
1244
1245 virtual void setNoBlockBreakUntil(::std::chrono::steady_clock::time_point timePoint) /*override*/;
1246
1247 virtual ::GameCallbacks& getGameCallbacks() /*override*/;
1248
1249 virtual ::GameModuleClient* getGameModule() /*override*/;
1250
1251 virtual ::ClientHitDetectCoordinator& getHitEventCoordinator() /*override*/;
1252
1253 virtual void sendClientEnteredLevel() /*override*/;
1254
1255 virtual ::HitDetectSystem* getHitDetectSystem() /*override*/;
1256
1257 virtual bool isPlaying() const /*override*/;
1258
1259 virtual ::ClientInstanceState getClientInstanceState() const /*override*/;
1260
1261 virtual ::LatencyGraphDisplay* getLatencyGraphDisplay() const /*override*/;
1262
1263 virtual ::PlayerCapabilities::IClientController const& getClientCapabilities() const /*override*/;
1264
1265 virtual ::cg::math::Rect<float> calculateViewPortModifiers(
1266 ::SubClientId const clientId,
1267 uint64 const clientCount,
1268 ::SplitScreenDirection const splitScreenConfiguration
1269 ) const /*override*/;
1270
1271 virtual ::std::weak_ptr<::IClientInstance> getWeakPtrToThis() /*override*/;
1272
1273 virtual ::ClientRequirementVerifier const& getClientRequirementVerifier() const /*override*/;
1274
1275 virtual ::Bedrock::NotNullNonOwnerPtr<::FogDefinitionRegistry const> getFogDefinitionRegistry() const /*override*/;
1276
1277 virtual ::Bedrock::NotNullNonOwnerPtr<::FogDefinitionRegistry> getFogDefinitionRegistry() /*override*/;
1278
1279 virtual ::Bedrock::NotNullNonOwnerPtr<::FogManager const> getFogManager() const /*override*/;
1280
1281 virtual ::Bedrock::NotNullNonOwnerPtr<::FogManager> getFogManager() /*override*/;
1282
1283 virtual ::Bedrock::NotNullNonOwnerPtr<::ScreenLoadTimeTracker> getScreenLoadTimeTracker() /*override*/;
1284
1285 virtual ::ItemRegistryRef getItemRegistry() const /*override*/;
1286
1287 virtual ::Bedrock::NotNullNonOwnerPtr<::DisconnectionRequestHandler> getDisconnectionRequestHandler() const
1288 /*override*/;
1289
1290 virtual float getRemoteServerTimeMs() const /*override*/;
1291
1292 virtual void setRemoteServerTimeMs(float time) /*override*/;
1293
1294 virtual float getRemoteServerNetworkTimeMs() const /*override*/;
1295
1296 virtual void setRemoteServerNetworkTimeMs(float time) /*override*/;
1297
1298 virtual ::Bedrock::NonOwnerPointer<::ClientScriptManager> getClientScriptManager() /*override*/;
1299
1300 virtual ::Scripting::ScriptEngine* getScriptingEngine() /*override*/;
1301
1302 virtual ::Bedrock::NonOwnerPointer<::WorldTransferAgent> const getWorldTransferAgent() const /*override*/;
1303
1304 virtual ::Bedrock::NotNullNonOwnerPtr<::PlayerReportHandler> getPlayerReportHandler() /*override*/;
1305
1306 virtual ::Bedrock::NonOwnerPointer<::LinkedAssetValidator> getLinkedAssetValidator() /*override*/;
1307
1308 virtual void flagDisconnectionAndNotify(::Connection::DisconnectFailReason disconnectReason) /*override*/;
1309
1310 virtual void flagDisconnectionAndNotifyWithParams(::DisconnectionScreenParams const& params) /*override*/;
1311
1312 virtual void disconnectSubClient(::Connection::DisconnectFailReason disconnectReason) /*override*/;
1313
1314 virtual void setClientUpdateAndRenderThrottling(bool enabled, int threshold, float scalar) /*override*/;
1315
1316 virtual bool isClientUpdateAndRenderThrottlingEnabled() const /*override*/;
1317
1318 virtual int getClientUpdateAndRenderThrottlingThreshold() const /*override*/;
1319
1320 virtual float getClientUpdateAndRenderThrottlingScalar() const /*override*/;
1321
1322 virtual bool isUserBanned() const /*override*/;
1323
1324 virtual bool isEligibleForPauseFeature() const /*override*/;
1325
1326 virtual void setupPauseManagers() /*override*/;
1327
1328 virtual bool requestInGamePause(bool status) /*override*/;
1329
1330 virtual void openContentLogHistory() /*override*/;
1331
1332 virtual double getGameUpdateDurationInSeconds() const /*override*/;
1333
1334 virtual ::std::optional<::ConnectionContextInfo> getConnectionContextInfo() const /*override*/;
1335
1336 virtual ::Bedrock::NonOwnerPointer<::PersonaClient> tryGetPersonaClient() const /*override*/;
1337 // NOLINTEND
1338
1339public:
1340 // member functions
1341 // NOLINTBEGIN
1342 MCAPI explicit ClientInstance(::ClientInstanceArguments&& args);
1343
1344 MCAPI ::std::unique_ptr<::LegacyClientNetworkHandler>
1345 _createNetworkHandler(::PlayerAuthenticationType authType, ::RawGameServerToken&& token);
1346
1347 MCAPI bool _getIsConnectedToApplicationLayer() const;
1348
1349 MCAPI bool _isEditorModeOrInEditorWorld() const;
1350
1351 MCAPI bool _isShowingScreen(::std::string_view screenName) const;
1352
1353 MCAPI void _joinWorldInProgressSubclient(::std::optional<::ConnectionContextInfo> primaryConnectionInfo);
1354
1355 MCAPI void _leaveGameOnUnrecoverableError(
1356 ::Connection::DisconnectFailReason reason,
1357 ::std::string const& telemetryMessage,
1358 ::std::string const& errorDescriptionOverride
1359 );
1360
1361 MCAPI void _perspectiveOptionChanged(::Option const&);
1362
1363 MCAPI void _requestLeaveGameImpl(bool const switchScreen, bool const sync);
1364
1365 MCAPI void _startDestroyingGame();
1366
1367 MCAPI void _startLeaveGame();
1368
1369 MCAPI void _startWorldPrimaryClient(::PlayerAuthenticationType authType, ::RawGameServerToken&& token);
1370
1371 MCAPI void
1372 _tickBuildAction(::HitResult const& solidHitResult_, ::HitResult const& liquidHitResult_, bool advanceTime);
1373
1374 MCAPI void _updateScreenSizeVariables(::Vec2 const& totalScreenSize, ::Vec2 const& safeZone);
1375
1376 MCAPI void fireEventDiskStatus(::DiskStatus status, ::Core::LevelStorageState errorCode);
1377
1378 MCAPI void flagDisconnectionAndNotifyWithTarget(
1379 ::DisconnectionScreenParams const& params,
1380 ::Connection::UIReturnTarget uiReturnTarget
1381 );
1382 // NOLINTEND
1383
1384public:
1385 // constructor thunks
1386 // NOLINTBEGIN
1387 MCAPI void* $ctor(::ClientInstanceArguments&& args);
1388 // NOLINTEND
1389
1390public:
1391 // virtual function thunks
1392 // NOLINTBEGIN
1393 MCAPI void $onInitMinecraftGame();
1394
1395 MCAPI void $onDestroyMinecraftGame();
1396
1397 MCAPI void $init(::ClientInstanceInitArguments&& args);
1398
1399 MCAPI void $initSceneFactory(
1400 ::std::unique_ptr<::SceneFactory> sceneFactory,
1401 ::std::unique_ptr<::OreUI::SceneProvider> sceneProvider
1402 );
1403
1404 MCAPI void $setUiRouter(::std::unique_ptr<::OreUI::Router> uiRouter);
1405
1406 MCAPI void $initGraphics();
1407
1408 MCFOLD void $stop();
1409
1410 MCAPI void $teardown();
1411
1412 MCAPI void $preShutDown();
1413
1414 MCAPI void $setGameConnectionInfo(::Social::GameConnectionInfo const& gameConnection);
1415
1416 MCAPI ::std::optional<::Social::GameConnectionInfo> $getGameConnectionInfo();
1417
1418 MCAPI void $onStartJoinGame(
1419 bool isLocalServer,
1420 ::std::string const& multiplayerCorrelationId,
1421 ::std::string const& serverName,
1422 ::std::string const& worldName,
1423 ::NetworkType networkType,
1424 ::Social::MultiplayerServiceIdentifier service,
1426 );
1427
1428 MCAPI void $onCancelJoinGame();
1429
1430 MCAPI void $requestLeaveGameAsync();
1431
1432 MCAPI void $requestLeaveGame(bool switchScreen, bool sync);
1433
1434 MCAPI void $stopPlayScreen();
1435
1436 MCAPI bool $isLeaveGameDone() const;
1437
1438 MCAPI void $setupPlayScreenForLeaveGame();
1439
1440 MCAPI void $preCacheOutOfGameViews();
1441
1442 MCAPI void $resetPrimaryClient();
1443
1444 MCAPI void $resetGameSession();
1445
1446 MCFOLD void $tick();
1447
1448 MCAPI void $frameUpdate(::FrameUpdateContext& frameUpdateContext);
1449
1450 MCAPI void $preFrameTick();
1451
1452 MCAPI bool $update(bool isInitFinished);
1453
1454 MCFOLD void $endFrame();
1455
1456 MCAPI float $getFrameAlpha();
1457
1458 MCAPI void $startSubClientLateJoin(
1459 bool hasXBLBroadcast,
1460 ::std::unique_ptr<::GameModuleClient> gameModuleClient,
1461 ::std::optional<::ConnectionContextInfo> primaryConnectionInfo
1462 );
1463
1464 MCAPI ::Bedrock::Threading::Async<::ClientGameSetupResult> $setupClientGame(
1465 bool joiningLocalServer,
1466 ::ServerSupportedAuthenticationTypes supportedAuth,
1467 ::std::unique_ptr<::GameModuleClient> gameModuleClient
1468 );
1469
1470 MCAPI ::BlockSource* $getRegion();
1471
1472 MCAPI ::LocalPlayer* $getLocalPlayer() const;
1473
1474 MCAPI void $setupPrimaryClientEditorManager();
1475
1476 MCAPI ::Bedrock::NonOwnerPointer<::Editor::IEditorPlayer> $getLocalEditorPlayer() const;
1477
1478 MCAPI ::Bedrock::NonOwnerPointer<::Editor::IEditorManager> $getEditorManager() const;
1479
1480 MCAPI bool $isPlayerInEditor() const;
1481
1482 MCAPI ::LocalPlayerChangedConnector $getLocalPlayerChangedConnector();
1483
1484 MCAPI ::WeakEntityRef $getLocalUser() const;
1485
1486 MCAPI ::Actor* $getCameraActor() const;
1487
1488 MCAPI void $setCameraActor(::Actor* cameraActor);
1489
1490 MCAPI ::ListenerState const* $getListenerState() const;
1491
1492 MCAPI ::Actor* $getCameraTargetActor() const;
1493
1494 MCAPI void $setCameraTargetActor(::Actor* cameraTargetActor);
1495
1496 MCAPI ::WeakEntityRef $getCameraEntity() const;
1497
1498 MCAPI void $getRawCameraEntities(::WeakEntityRef& cameraEntity, ::WeakEntityRef& cameraTargetEntity) const;
1499
1500 MCAPI void $setRawCameraEntities(::WeakEntityRef cameraEntity, ::WeakEntityRef cameraTargetEntity);
1501
1502 MCAPI ::HitResult const& $getLatestHitResult() const;
1503
1504 MCAPI bool $isLeavingGame() const;
1505
1506 MCAPI bool $isDestroyingGame() const;
1507
1508 MCAPI bool $isShuttingDown() const;
1509
1510 MCAPI bool $useLowFrequencyUIRender() const;
1511
1512 MCAPI bool $isSplitScreenActive() const;
1513
1514 MCAPI bool $isExitingLevel() const;
1515
1516 MCAPI bool $isInBedScreen() const;
1517
1518 MCAPI bool $isInDeathScreen() const;
1519
1520 MCAPI bool $isKeyboardEnabled() const;
1521
1522 MCAPI bool $hasCommands() const;
1523
1524 MCAPI int $getSplitScreenCount() const;
1525
1526 MCAPI bool $isShowingLoadingScreen() const;
1527
1528 MCFOLD bool $shouldDisconnectOnAppSuspended() const;
1529
1530 MCAPI bool $isGamePlayTipsEnabled() const;
1531
1532 MCFOLD bool $isPlatformNX() const;
1533
1534 MCAPI bool $isLocalSplitscreenWith(::ActorUniqueID const& id) const;
1535
1536 MCAPI bool $isValidCrossPlatformSkin(bool valueIfNull) const;
1537
1538 MCAPI bool $isSelectedSkinInitialized() const;
1539
1540 MCAPI ::SplitScreenInfo $getSplitScreenInfo() const;
1541
1542 MCAPI bool $getHandlingControllerDisconnect();
1543
1544 MCAPI void $setOpenControllerDisconnectScreen(bool open);
1545
1546 MCAPI ::ClientPlayMode $getClientPlayMode() const;
1547
1548 MCAPI void $setClientPlayMode(::ClientPlayMode const& mode);
1549
1550 MCAPI ::std::function<void()> $getCreditsCallback();
1551
1552 MCAPI void $setCreditsCallback(::std::function<void()> callback);
1553
1554 MCAPI void $setupTransitionForCredits(::std::function<void()> callback);
1555
1556 MCAPI void $refreshScreenSizeData();
1557
1558 MCAPI void $onScreenSizeChanged(int width, int height);
1559
1560 MCAPI void $onGuiScaleOffsetChanged();
1561
1562 MCAPI void $onSafeZoneChanged();
1563
1564 MCAPI bool $hasDismissedNewPlayerFlow() const;
1565
1566 MCAPI void $quit(::std::string const& src, ::std::string const& reason);
1567
1568 MCAPI ::IMinecraftGame& $getMinecraftGame_DEPRECATED() const;
1569
1570 MCAPI ::IClientInstances& $getClientInstances() const;
1571
1572 MCAPI ::World::WorldSystem& $getWorldSystem() const;
1573
1574 MCAPI bool $isWorldSystemReady() const;
1575
1576 MCAPI ::Bedrock::NotNullNonOwnerPtr<::Automation::AutomationClient> $getAutomationClient() const;
1577
1578 MCAPI ::Bedrock::NonOwnerPointer<::EDUSystems> $getEDUSystems();
1579
1580 MCAPI ::Bedrock::NonOwnerPointer<::EDUSystems const> $getEDUSystems() const;
1581
1582 MCAPI ::IMinecraftEventing& $getEventing() const;
1583
1584 MCAPI ::IConnectionEventing& $getConnectionEventing() const;
1585
1586 MCAPI ::Bedrock::Profiling::IProfilingOrchestratorProvider& $getProfilingOrchestratorProvider() const;
1587
1588 MCAPI ::FontHandle $getFontHandle() const;
1589
1590 MCAPI ::FontHandle $getRuneFontHandle() const;
1591
1592 MCAPI ::FontHandle $getUnicodeFontHandle() const;
1593
1594 MCAPI ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup> $getGeometryGroup() const;
1595
1596 MCAPI ::Bedrock::NotNullNonOwnerPtr<::BlockCullingGroup> $getBlockCullingGroup() const;
1597
1598 MCAPI ::Bedrock::NotNullNonOwnerPtr<::Social::MultiplayerServiceManager> $getMultiplayerServiceManager() const;
1599
1600 MCAPI ::IResourcePackRepository& $getResourcePackRepository() const;
1601
1602 MCAPI ::ResourcePackManager& $getResourcePackManager() const;
1603
1604 MCAPI ::PackManifestFactory& $getPackManifestFactory();
1605
1606 MCAPI ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> $getKeyProvider() const;
1607
1608 MCAPI ::PacksInfoData const& $getHostSpecifiedPacks() const;
1609
1610 MCAPI ::std::shared_ptr<::SkinRepository> $getSkinRepository() const;
1611
1612 MCAPI ::PersonaRepository& $getPersonaRepository() const;
1613
1614 MCAPI ::MarketplaceServicesManager& $getMarketplaceServicesManager() const;
1615
1616 MCAPI ::PersonaClient& $getPersonaClient() const;
1617
1618 MCAPI ::Bedrock::NotNullNonOwnerPtr<::StoreCatalogRepository> $getStoreCatalogRepository();
1619
1620 MCAPI ::std::shared_ptr<::mce::TextureGroup> $getTextureGroup() const;
1621
1622 MCAPI ::Bedrock::NotNullNonOwnerPtr<::mce::TextureGroup> $getStoreCacheTextures() const;
1623
1624 MCAPI ::Bedrock::NotNullNonOwnerPtr<::MinecraftGraphics> $getMinecraftGraphics() const;
1625
1626 MCAPI ::Bedrock::NotNullNonOwnerPtr<::IUIRepository> $getUIRepository() const;
1627
1628 MCAPI ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> $getUserManager() const;
1629
1630 MCAPI ::Bedrock::NotNullNonOwnerPtr<::TrialManager> $getTrialManager() const;
1631
1632 MCAPI bool $wantToQuit() const;
1633
1634 MCAPI bool $isPrimaryLevelCrossPlatformMultiplayer() const;
1635
1636 MCAPI bool $isPrimaryLevelMultiplayer() const;
1637
1638 MCAPI bool $isAdhocEnabled() const;
1639
1640 MCAPI ::std::shared_ptr<::ActorAnimationGroup> $getActorAnimationGroup() const;
1641
1642 MCAPI bool $isMarketplaceDisabled() const;
1643
1644 MCAPI ::std::pair<::StoreErrorCodes, ::std::string> const $getMarketplaceDisabledReasonWithErrorCode() const;
1645
1646 MCAPI void $linkToOffer(::std::string const& productId, bool allowWhileInGame);
1647
1648 MCAPI void $linkToPage(::std::string const& pageId);
1649
1650 MCAPI void $linkTo3PServerOffers(::std::string const& pageId, ::std::string const& creatorName);
1651
1652 MCAPI void $navigateToMarketplaceInventoryScreen(::InventoryTabIndex tabIndex);
1653
1654 MCAPI void $navigateToStoreHomeScreen();
1655
1656 MCAPI void $navigateToCoinPurchaseScreen(int neededCoins, ::std::function<void(bool, int)> callback);
1657
1658 MCAPI void $navigateToPurchaseOfferScreen(::StoreCatalogItem& item, ::StoreNavigationOrigin, bool const);
1659
1660 MCAPI void $navigateToDressingRoomOfferScreen(::std::string const& offerId);
1661
1662 MCAPI bool $navigateToProfileScreen(::std::string const&, bool const preventProgressScreen);
1663
1664 MCAPI void $navigateToServersScreen(bool const calledFromHyperlink);
1665
1666 MCAPI void $navigateToHowToPlayScreen(::std::string const& startTopic);
1667
1668 MCAPI void $navigateToMarketplacePassPDPScreen(::MarketplacePassTabIndex tabIndex);
1669
1670 MCAPI void $navigateToRealmsStoriesTransitionScreen(::Realms::World const& world);
1671
1672 MCAPI void $tryPushLeaveGameScreen();
1673
1674 MCAPI void $tryStartDayOneExperience();
1675
1676 MCAPI bool $isReadyToRender() const;
1677
1678 MCAPI void $onDimensionChangedEvent();
1679
1680 MCAPI void $onGameEventNotification(::ui::GameEventNotification notification);
1681
1682 MCAPI ::std::string $getTopScreenName() const;
1683
1684 MCAPI void $setLeaveGameInProgressAsReadyToContinue();
1685
1686 MCAPI void $stopDestroying();
1687
1688 MCAPI void $onClientCreatedLevel(
1689 ::std::pair<::std::unique_ptr<::Level>, ::OwnerPtr<::EntityContext>> levelEntity,
1690 ::OwnerPtr<::EntityContext> userEntity
1691 );
1692
1693 MCAPI ::PlayerAuthentication& $getPlayerAuthentication();
1694
1695 MCAPI void $createPlayerAuthentication();
1696
1697 MCAPI void $createPlayerAuthentication(uint64 clientRandomId);
1698
1699 MCAPI ::std::string $getPlatformId() const;
1700
1701 MCAPI ::std::string $getPlatformOnlineId() const;
1702
1703 MCAPI bool $useController() const;
1704
1705 MCAPI bool $useTouchscreen() const;
1706
1707 MCAPI bool $getMouseGrabbed() const;
1708
1709 MCAPI bool $currentInputModeIsMouseAndKeyboard() const;
1710
1711 MCAPI bool $allowPicking() const;
1712
1713 MCAPI bool $isShowingMenu() const;
1714
1715 MCAPI bool $isShowingPauseScreen() const;
1716
1717 MCAPI bool $isShowingProgressScreen() const;
1718
1719 MCAPI bool $isShowingWorldProgressScreen() const;
1720
1721 MCAPI bool $isShowingRealmsProgressScreen() const;
1722
1723 MCAPI bool $isShowingDeathScreen() const;
1724
1725 MCAPI bool $isShowingServerForm() const;
1726
1727 MCAPI bool $isScreenReplaceable() const;
1728
1729 MCAPI bool $isInWorldAndNotShowingAnyMenuScreens() const;
1730
1731 MCAPI bool $isWorldActive() const;
1732
1733 MCAPI bool $isInRealm();
1734
1735 MCAPI bool $readyForShutdown() const;
1736
1737 MCAPI bool $isPrimaryClient() const;
1738
1739 MCAPI bool $isEduMode() const;
1740
1741 MCAPI bool $isGamepadCursorEnabled() const;
1742
1743 MCAPI bool $isInControlCustomization() const;
1744
1745 MCAPI ::Bedrock::NotNullNonOwnerPtr<::Minecraft> $getServerData();
1746
1747 MCAPI ::Bedrock::NotNullNonOwnerPtr<::Minecraft const> $getServerData() const;
1748
1749 MCAPI ::ClientLevel* $getLevel();
1750
1751 MCAPI ::ClientLevel const* $getLevel() const;
1752
1753 MCAPI bool $hasLevel() const;
1754
1755 MCAPI bool $isPreGame() const;
1756
1757 MCAPI bool $isInMultiplayerGame() const;
1758
1759 MCAPI bool $isMultiPlayerClient() const;
1760
1761 MCAPI ::IOptionRegistry& $getOptions();
1762
1763 MCAPI ::IOptionRegistry const& $getOptions() const;
1764
1765 MCAPI ::IReadWriteOptions const& $getReadWriteOptions() const;
1766
1767 MCAPI ::std::shared_ptr<::OptionRegistry> $getOptionsPtr();
1768
1769 MCAPI ::std::shared_ptr<::OptionRegistry const> const $getOptionsPtr() const;
1770
1771 MCAPI ::std::shared_ptr<::Social::User> const& $getUser() const;
1772
1773 MCAPI ::std::shared_ptr<::Settings::IRegistry> $getSettingsRegistry();
1774
1775 MCAPI ::Option const& $getShowLearningPromptsOption() const;
1776
1777 MCAPI ::Option& $getShowControlTipsOption();
1778
1779 MCAPI ::Option& $getShowControlTipsOverrideOption();
1780
1781 MCAPI double $getControlTipsTimeElapsed() const;
1782
1783 MCAPI void $setControlTipsTimeElapsedStart();
1784
1785 MCAPI ::GameRenderer& $getGameRenderer() const;
1786
1787 MCAPI ::LevelRenderer* $getLevelRenderer() const;
1788
1789 MCAPI ::LevelRendererCameraProxy* $getLevelRendererCameraProxy() const;
1790
1791 MCAPI ::Bedrock::NonOwnerPointer<::CameraRegistry> $getCameraRegistry();
1792
1793 MCAPI ::Bedrock::NonOwnerPointer<::CameraRegistry const> $getCameraRegistry() const;
1794
1795 MCAPI ::Bedrock::NonOwnerPointer<::EntitySystems> $getCameraSystems();
1796
1797 MCAPI ::LightTexture* $getLightTexture();
1798
1799 MCAPI void $setupLevelRendering(::ClientLevel& level, ::WeakEntityRef cameraTargetEntity);
1800
1801 MCAPI ::mce::ViewportInfo const& $getViewportInfo() const;
1802
1803 MCAPI void $setViewportInfo(::mce::ViewportInfo const& viewportInfo);
1804
1805 MCAPI ::Vec2 $getNormalizedViewportSize() const;
1806
1807 MCAPI void $updateChunkRadius();
1808
1809 MCAPI void $setUITexture(::mce::Texture* tex);
1810
1811 MCAPI ::mce::Texture* $getUITexture();
1812
1813 MCAPI void $setLevelTexture(::mce::Texture* tex);
1814
1815 MCFOLD ::mce::Texture* $getLevelTexture();
1816
1817 MCAPI void $setUICursorTexture(::mce::TexturePtr tex);
1818
1819 MCAPI ::mce::TexturePtr $getUICursorTexture() const;
1820
1821 MCAPI ::mce::Camera& $getCamera();
1822
1823 MCAPI ::ShaderColor& $getShaderColor();
1824
1825 MCAPI ::ShaderColor& $getDarkShaderColor();
1826
1827 MCAPI void $clearGraphicsCache();
1828
1829 MCAPI void $getNormalizedUICursorTransform(::MatrixStack::MatrixStackRef& matrix, float cursorHalfSizeTexels);
1830
1831 MCAPI bool $shouldRenderUICursor() const;
1832
1833 MCAPI bool $getRenderPlayerModel() const;
1834
1835 MCAPI ::DeferredLighting& $getDeferredLighting();
1836
1837 MCAPI float $getGuiScale() const;
1838
1839 MCAPI ::Option const& $getGuiScaleOption() const;
1840
1841 MCAPI int $getGuiScaleOffset() const;
1842
1843 MCAPI void $setGuiScaleOffset(int guiScale);
1844
1845 MCFOLD void $renderImGui(::ScreenContext& screenContext, bool drawMenuBar);
1846
1847 MCAPI ::Bedrock::NotNullNonOwnerPtr<::GuiData> $getGuiData();
1848
1849 MCAPI ::Bedrock::NotNullNonOwnerPtr<::GuiData const> $getGuiData() const;
1850
1851 MCAPI ::GuidedFlowManager& $getGuidedFlowManager();
1852
1853 MCAPI ::PixelCalc const& $getDpadScale() const;
1854
1855 MCAPI ::Bedrock::NotNullNonOwnerPtr<::DateManager const> $getDateManager() const;
1856
1857 MCAPI void $addOverrideHoursToDateTime(uint const hoursToAdd);
1858
1859 MCAPI ::ToastManager& $getToastManager();
1860
1861 MCAPI ::ClipboardProxy<::ApplicationSignal::ClipboardCopy, ::ApplicationSignal::ClipboardPasteRequest>&
1862 $getClipboardManager();
1863
1864 MCAPI ::AbstractScene* $getTopScene();
1865
1866 MCAPI ::AbstractScene const* $getTopScene() const;
1867
1868 MCAPI ::AbstractScene* $getActiveScene();
1869
1870 MCAPI ::AbstractScene const* $getActiveScene() const;
1871
1872 MCAPI ::SceneFactory& $getSceneFactory() const;
1873
1874 MCAPI ::OreUI::SceneProvider& $getSceneProvider() const;
1875
1876 MCAPI ::ui::ScreenTechStackSelector& $getScreenTechStackSelector();
1877
1878 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ISceneStack const> $getClientSceneStack() const;
1879
1880 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> $getClientSceneStack();
1881
1882 MCAPI ::OreUI::Router& $getClientUIRouter() const;
1883
1884 MCAPI ::ISceneStack& $getMainSceneStackInterface();
1885
1886 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> $getMainSceneStack();
1887
1888 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ISceneStack const> $getMainSceneStack() const;
1889
1890 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ISceneStack const> $getCurrentSceneStack() const;
1891
1892 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> $getCurrentSceneStack();
1893
1894 MCAPI ::OreUI::Router& $getCurrentUIRouter();
1895
1896 MCAPI ::OreUI::Router const& $getCurrentUIRouter() const;
1897
1898 MCAPI ::OreUI::ITelemetry& $getOreUITelemetry();
1899
1900 MCAPI ::WeakRef<::OreUI::UIBlockThumbnailAtlasManager> $getOreUIBlockThumbnailAtlasManager() const;
1901
1902 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> $prepareSceneFor(
1903 ::ui::SceneType const sceneTypeToFind,
1904 ::std::function<::std::shared_ptr<::AbstractScene>()> createScreenCallback
1905 );
1906
1907 MCAPI ::CachedScenes& $getCachedScenes();
1908
1909 MCAPI ::std::string $getScreenName() const;
1910
1911 MCAPI ::std::string $getScreenTelemetry() const;
1912
1913 MCAPI ::ui::SceneType $getTopSceneType() const;
1914
1915 MCAPI ::MobEffectsLayout& $getMobEffectsLayout();
1916
1917 MCAPI ::std::string $emoticonifyText(::std::string const& text) const;
1918
1919 MCAPI ::std::string $emoticonifyText(::std::string const& text, bool isGameTip);
1920
1921 MCAPI void $onMobEffectsChange();
1922
1923 MCAPI void $setUISize(int w, int h);
1924
1925 MCAPI void $forEachVisibleScreen(::brstd::function_ref<void(::AbstractScene&)> callback);
1926
1927 MCAPI void $forEachScreen(::brstd::function_ref<bool(::AbstractScene&)> callback, bool topDown);
1928
1929 MCAPI void $forEachScreenConst(::brstd::function_ref<bool(::AbstractScene const&)> callback, bool topDown) const;
1930
1931 MCAPI bool $updateSceneStack();
1932
1933 MCAPI void $forEachAlwaysAcceptInputScreen(
1934 ::std::function<void(::AbstractScene&)> callback,
1935 ::AbstractScene const* ignoreScreen
1936 );
1937
1938 MCAPI void $forEachAlwaysAcceptInputScreenWithTop(::std::function<void(::AbstractScene&)> callback);
1939
1940 MCAPI void $showPlayerProfile(::std::string const& xuid, ::std::string const& platformId);
1941
1942 MCAPI bool $isInGameInputEnabled() const;
1943
1944 MCAPI void $setInGameInputEnabled(bool isEnabled);
1945
1946 MCAPI ::Vec2 $getSafeZoneScale() const;
1947
1948 MCAPI void $verifySkinApproval(
1949 ::std::function<void(::std::string)> const& notApprovedCallback,
1950 ::std::function<void()> const& approvedCallback
1951 ) const;
1952
1953 MCAPI ::InputMode $getCurrentInputMode() const;
1954
1955 MCAPI bool $isTouchGameplayAllowed() const;
1956
1957 MCAPI ::Bedrock::NonOwnerPointer<::MinecraftInputHandler> $getMinecraftInput() const;
1958
1959 MCFOLD ::KeyboardManager& $getKeyboardManager();
1960
1961 MCAPI void $setLastPointerLocation(float x, float y, float z);
1962
1963 MCAPI void $clearTouchPointerLocations();
1964
1965 MCAPI void $clearTouchPointerLocation(int id);
1966
1967 MCAPI void $updateTouchPointerLocation(int id, float x, float y);
1968
1969 MCAPI ::Vec3 $getLastPointerLocation();
1970
1971 MCAPI ::Vec2 $getTouchPointerLocation(int id) const;
1972
1973 MCAPI void $updateActionPointerId(int id);
1974
1975 MCAPI int $getActionPointerId() const;
1976
1977 MCAPI bool $shouldUseLastPointerLocationOnFocusChange();
1978
1979 MCAPI bool $currentScreenShouldStealMouse();
1980
1981 MCAPI ::BuildActionIntention& $getInProgressBAI() const;
1982
1983 MCAPI ::PacketSender& $getPacketSender();
1984
1985 MCAPI ::ClientNetworkSystem& $getClientNetworkSystem();
1986
1987 MCAPI ::ClientNetworkSystem const& $getClientNetworkSystem() const;
1988
1989 MCAPI ::glm::vec2 $getGamepadCursorPosition() const;
1990
1991 MCAPI void $updateControlOptionState(uint id, bool active);
1992
1993 MCAPI void $clearActiveControlOptions();
1994
1995 MCAPI ::std::set<uint> const& $getActiveControlOptions() const;
1996
1997 MCAPI ::std::vector<::OptionID> $getActiveOptionIDs(::ControlOptionType controlOptionType) const;
1998
1999 MCAPI void $setNumberOfActiveConfigs(int numberOfActiveConfigs);
2000
2001 MCAPI int $getNumberOfActiveConfigs() const;
2002
2003 MCAPI bool $isNoConfigSelected() const;
2004
2005 MCAPI void $setNumberOfEnabledConfigs(int numberOfEnabledConfigs);
2006
2007 MCAPI int $getNumberOfEnabledConfigs() const;
2008
2009 MCAPI void $setWYSIWYGState(::WYSIWYGState wysiwygState);
2010
2011 MCAPI ::WYSIWYGState $getWYSIWYGState() const;
2012
2013 MCAPI void $setOtherConfigsExistInThisCategory(bool otherConfigsExistInThisCategory);
2014
2015 MCAPI bool $getOtherConfigsExistInThisCategory() const;
2016
2017 MCAPI void $setMoveTurnInput(::std::unique_ptr<::ClientMoveInputHandler> pClientMoveInputHandler);
2018
2019 MCAPI void $setupPersistentControls(::InputMode currentMode);
2020
2021 MCAPI void $resetPlayerMovement();
2022
2023 MCAPI void $suspendPredictedMovement();
2024
2025 MCAPI void $onClientInputInitComplete();
2026
2027 MCAPI void $setClientInputHandler(::std::unique_ptr<::ClientInputHandler> pClientInputHandler);
2028
2029 MCAPI ::ClientInputHandler* $getInput() const;
2030
2031 MCAPI int $getControllerId() const;
2032
2033 MCAPI bool $hasConnectedController() const;
2034
2035 MCAPI ::SubClientId $getClientSubId() const;
2036
2037 MCAPI void $setSuspendInput(bool suspendInput);
2038
2039 MCAPI void $setSuspendDirectionalInput(bool suspendDirectionalInput);
2040
2041 MCAPI void $setDisableInput(bool disableInput);
2042
2043 MCAPI void $grabMouse();
2044
2045 MCAPI void $releaseMouse();
2046
2047 MCAPI void $refocusMouse(bool lostMouse);
2048
2049 MCAPI void $setMouseType(::Bedrock::Input::PointerType type);
2050
2051 MCAPI void $resetBai(int baiFlags);
2052
2053 MCAPI void $clearInProgressBAI();
2054
2055 MCAPI ::Bedrock::NotNullNonOwnerPtr<::SoundEngine> $getSoundEngine() const;
2056
2057 MCAPI ::MusicManager const* $getMusicManager() const;
2058
2059 MCAPI ::MusicManager* $getMusicManagerNonConst() const;
2060
2061 MCAPI void $play(::std::string const& name, ::Vec3 const& pos, float volume, float pitch);
2062
2063 MCAPI void $playUI(::std::string const& name, float volume, float pitch);
2064
2065 MCAPI void $muteAudio();
2066
2067 MCAPI void $unMuteAudio();
2068
2069 MCAPI void $fadeOutMusic() const;
2070
2071 MCAPI ::TaskGroup& $getTaskGroup();
2072
2073 MCAPI void $onFullVanillaPackOnStack();
2074
2075 MCAPI bool $isFullVanillaPackOnStack() const;
2076
2077 MCAPI void $onPlayerLoaded(::Player& player);
2078
2079 MCAPI void $setClientGameMode(::GameType gameType);
2080
2081 MCAPI void $resetToDefaultGameMode();
2082
2083 MCAPI ::IGameConnectionListener& $getGameConnectionListener();
2084
2085 MCAPI void $connectToThirdPartyServer(::std::string const& ipAddress, int port);
2086
2087 MCAPI void $startExternalNetworkWorld(
2088 ::Social::GameConnectionInfo connection,
2089 ::std::string const& serverName,
2091 );
2092
2093 MCAPI bool $isReadyToReconnect() const;
2094
2095 MCAPI bool $checkForPiracy();
2096
2097 MCAPI void $updateChatFilterStatus(::ProfanityContext& profanityContext);
2098
2099 MCAPI void $updateControllerHandling();
2100
2101 MCAPI void $onPlayerDestruction(::Player& player);
2102
2103 MCAPI void $setBehaviorCommandCallback(::std::function<void(::std::string const&, ::BehaviorStatus)> callback);
2104
2105 MCAPI void $setBehaviorCommandStatus(::std::string const& treeName, ::BehaviorStatus status);
2106
2107 MCAPI void $setConnectGamepadScreenActive(bool active);
2108
2109 MCAPI ::Bedrock::Threading::Async<::Core::PathBuffer<::std::string>>
2110 $requestScreenshot(::ScreenshotOptions& screenshotOptions);
2111
2112 MCAPI ::Bedrock::NotNullNonOwnerPtr<::DevConsoleLogger> $getDevConsoleLogger() const;
2113
2114 MCAPI ::std::shared_ptr<::FileDataRequest> $requestImageFromUrl(
2115 ::std::string const& imageUrl,
2116 ::std::function<void(::Bedrock::Http::Status, ::Core::Path const&, uint64)> callback
2117 );
2118
2119 MCAPI void $setActiveFileStorageArea(::std::shared_ptr<::Core::FileStorageArea> storageArea);
2120
2121 MCAPI void $onExtendDiskSpace(
2122 bool const bSet,
2123 ::std::weak_ptr<::Core::FileStorageArea> const& storageAreaWeakPtr,
2124 uint64 freeSpace,
2125 ::std::function<void()> onHandledEventCallback
2126 );
2127
2128 MCAPI void $onLowDiskSpace(bool const bSet, uint64 freeSpace);
2129
2130 MCAPI void $onOutOfDiskSpace(bool const bSet, uint64 freeSpace);
2131
2132 MCAPI void $onCriticalDiskError(bool const bSet, ::Core::LevelStorageState const& errorCode);
2133
2134 MCAPI void $onLevelCorrupt();
2135
2136 MCAPI void $onGameModeChanged();
2137
2138 MCAPI void $onBeforeSimTick();
2139
2140 MCAPI void $onTick(int nTick, int maxTick);
2141
2142 MCAPI void $onInternetUpdate();
2143
2144 MCAPI void $onGameSessionReset();
2145
2146 MCAPI void $onLevelExit();
2147
2148 MCFOLD void $onRequestResourceReload();
2149
2150 MCAPI void $updateScreens();
2151
2152 MCAPI void $initializeRenderResources();
2153
2154 MCAPI void $postInitRenderResources();
2155
2156 MCAPI void $onAppSuspended();
2157
2158 MCAPI void $onAppResumed();
2159
2160 MCAPI void $onActiveResourcePacksChanged(
2161 ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup> const& entityResourceDefGroup
2162 );
2163
2164 MCAPI void $reloadEntityRenderers(
2165 ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup> const& actorResourceDefinitionGroup
2166 );
2167
2168 MCAPI ::BlockTessellator& $getBlockTessellator();
2169
2170 MCAPI ::BlockActorRenderDispatcher& $getBlockEntityRenderDispatcher();
2171
2172 MCAPI ::std::shared_ptr<::ActorRenderDispatcher> $getEntityRenderDispatcher();
2173
2174 MCAPI ::ActorBlockRenderer& $getEntityBlockRenderer();
2175
2176 MCAPI ::ItemInHandRenderer* $getItemInHandRenderer();
2177
2178 MCAPI ::ItemRenderer* $getItemRenderer();
2179
2180 MCAPI ::HudIconActorRenderer* $getHudIconActorRenderer();
2181
2182 MCAPI ::std::deque<::std::string>& $getSentMessageHistory();
2183
2184 MCAPI ::std::deque<::std::string>& $getDevConsoleMessageHistory();
2185
2186 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ProfanityContext> $getProfanityContext() const;
2187
2188 MCAPI void $initTTSClient(::std::shared_ptr<::TextToSpeechClient> textToSpeechClient);
2189
2190 MCAPI ::std::shared_ptr<::TextToSpeechClient> $getTTSClient();
2191
2192 MCAPI ::std::shared_ptr<::TextToSpeechClient const> $getTTSClient() const;
2193
2194 MCAPI ::std::shared_ptr<::ITTSEventManager> $getTTSEventManager();
2195
2196 MCAPI void $addTTSMessage(
2197 ::std::string const& message,
2198 ::ProfanityFilterContext profanityFilterContext,
2199 bool interruptible,
2200 ::std::string const& interruptibleId,
2201 bool required,
2202 bool disregardAppFocus
2203 );
2204
2205 MCAPI void $initCommands();
2206
2207 MCAPI uint $getUserId() const;
2208
2209 MCAPI bool $isPrimaryUser() const;
2210
2211 MCAPI double $getServerConnectionTime() const;
2212
2213 MCAPI void $setServerPingTime(::std::chrono::milliseconds pingTime);
2214
2215 MCAPI ::std::chrono::milliseconds $getServerPingTime() const;
2216
2217 MCAPI void $setDefaultPlayscreenTab(::PlayScreenDefaultTab defaultTab);
2218
2219 MCAPI void $setClientInstanceState(::ClientInstanceState const& newstate);
2220
2221 MCAPI void $setUIEventCoordinator(::Bedrock::UniqueOwnerPointer<::UIEventCoordinator>&& coordinator);
2222
2223 MCAPI ::Bedrock::NotNullNonOwnerPtr<::UIEventCoordinator> $getUIEventCoordinator();
2224
2225 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ClientInstanceEventCoordinator> $getEventCoordinator();
2226
2227 MCAPI ::ClientNetworkEventCoordinator& $getClientNetworkEventCoordinator();
2228
2229 MCAPI ::ClientScriptEventCoordinator& $getClientScriptEventCoordinator();
2230
2231 MCAPI ::std::chrono::steady_clock::time_point $getNoBlockBreakUntil();
2232
2233 MCAPI void $setNoBlockBreakUntil(::std::chrono::steady_clock::time_point timePoint);
2234
2235 MCFOLD ::GameCallbacks& $getGameCallbacks();
2236
2237 MCAPI ::GameModuleClient* $getGameModule();
2238
2239 MCAPI ::ClientHitDetectCoordinator& $getHitEventCoordinator();
2240
2241 MCAPI void $sendClientEnteredLevel();
2242
2243 MCAPI ::HitDetectSystem* $getHitDetectSystem();
2244
2245 MCAPI bool $isPlaying() const;
2246
2247 MCFOLD ::ClientInstanceState $getClientInstanceState() const;
2248
2249 MCAPI ::LatencyGraphDisplay* $getLatencyGraphDisplay() const;
2250
2251 MCAPI ::PlayerCapabilities::IClientController const& $getClientCapabilities() const;
2252
2253 MCAPI ::cg::math::Rect<float> $calculateViewPortModifiers(
2254 ::SubClientId const clientId,
2255 uint64 const clientCount,
2256 ::SplitScreenDirection const splitScreenConfiguration
2257 ) const;
2258
2259 MCAPI ::std::weak_ptr<::IClientInstance> $getWeakPtrToThis();
2260
2261 MCAPI ::ClientRequirementVerifier const& $getClientRequirementVerifier() const;
2262
2263 MCAPI ::Bedrock::NotNullNonOwnerPtr<::FogDefinitionRegistry const> $getFogDefinitionRegistry() const;
2264
2265 MCAPI ::Bedrock::NotNullNonOwnerPtr<::FogDefinitionRegistry> $getFogDefinitionRegistry();
2266
2267 MCAPI ::Bedrock::NotNullNonOwnerPtr<::FogManager const> $getFogManager() const;
2268
2269 MCAPI ::Bedrock::NotNullNonOwnerPtr<::FogManager> $getFogManager();
2270
2271 MCAPI ::Bedrock::NotNullNonOwnerPtr<::ScreenLoadTimeTracker> $getScreenLoadTimeTracker();
2272
2273 MCAPI ::ItemRegistryRef $getItemRegistry() const;
2274
2275 MCAPI ::Bedrock::NotNullNonOwnerPtr<::DisconnectionRequestHandler> $getDisconnectionRequestHandler() const;
2276
2277 MCAPI float $getRemoteServerTimeMs() const;
2278
2279 MCAPI void $setRemoteServerTimeMs(float time);
2280
2281 MCAPI float $getRemoteServerNetworkTimeMs() const;
2282
2283 MCAPI void $setRemoteServerNetworkTimeMs(float time);
2284
2285 MCAPI ::Bedrock::NonOwnerPointer<::ClientScriptManager> $getClientScriptManager();
2286
2287 MCAPI ::Scripting::ScriptEngine* $getScriptingEngine();
2288
2289 MCAPI ::Bedrock::NonOwnerPointer<::WorldTransferAgent> const $getWorldTransferAgent() const;
2290
2291 MCAPI ::Bedrock::NotNullNonOwnerPtr<::PlayerReportHandler> $getPlayerReportHandler();
2292
2293 MCAPI ::Bedrock::NonOwnerPointer<::LinkedAssetValidator> $getLinkedAssetValidator();
2294
2295 MCAPI void $flagDisconnectionAndNotify(::Connection::DisconnectFailReason disconnectReason);
2296
2297 MCAPI void $flagDisconnectionAndNotifyWithParams(::DisconnectionScreenParams const& params);
2298
2299 MCAPI void $disconnectSubClient(::Connection::DisconnectFailReason disconnectReason);
2300
2301 MCAPI void $setClientUpdateAndRenderThrottling(bool enabled, int threshold, float scalar);
2302
2303 MCAPI bool $isClientUpdateAndRenderThrottlingEnabled() const;
2304
2305 MCAPI int $getClientUpdateAndRenderThrottlingThreshold() const;
2306
2307 MCAPI float $getClientUpdateAndRenderThrottlingScalar() const;
2308
2309 MCAPI bool $isUserBanned() const;
2310
2311 MCAPI bool $isEligibleForPauseFeature() const;
2312
2313 MCAPI void $setupPauseManagers();
2314
2315 MCAPI bool $requestInGamePause(bool status);
2316
2317 MCAPI void $openContentLogHistory();
2318
2319 MCAPI double $getGameUpdateDurationInSeconds() const;
2320
2321 MCAPI ::std::optional<::ConnectionContextInfo> $getConnectionContextInfo() const;
2322
2323 MCAPI ::Bedrock::NonOwnerPointer<::PersonaClient> $tryGetPersonaClient() const;
2324 // NOLINTEND
2325};
Definition AbstractScene.h:5
Definition ActorAnimationGroup.h:22
Definition ActorBlockRenderer.h:5
Definition ActorRenderDispatcher.h:5
Definition ActorResourceDefinitionGroup.h:5
Definition Actor.h:113
Definition ClipboardCopy.h:7
Definition ClipboardPasteRequest.h:7
Definition AutomationClient.h:26
Definition Status.h:7
Definition BlockActorRenderDispatcher.h:5
Definition BlockCullingGroup.h:5
Definition BlockSource.h:71
Definition BlockTessellator.h:5
Definition BuildActionIntention.h:5
Definition CachedScenes.h:5
Definition CameraRegistry.h:5
Definition ClientHitDetectCoordinator.h:5
Definition ClientInputHandler.h:5
Definition ClientInstanceEventCoordinator.h:5
Definition ClientInstance.h:5
Definition ClientLevel.h:5
Definition ClientMoveInputHandler.h:5
Definition ClientNetworkEventCoordinator.h:5
Definition ClientNetworkSystem.h:46
Definition ClientRequirementVerifier.h:5
Definition ClientScriptEventCoordinator.h:5
Definition ClientScriptManager.h:5
Definition ClipboardProxy.h:6
Definition FileStorageArea.h:30
Definition Path.h:11
Definition StorageAreaStateListener.h:15
Definition DateManager.h:14
Definition DeferredLighting.h:5
Definition DevConsoleLogger.h:5
Definition DisconnectionRequestHandler.h:5
Definition EDUSystems.h:25
Definition IEditorManager.h:25
Definition IEditorPlayer.h:17
Definition EntityContext.h:15
Definition EntitySystems.h:25
Definition FileDataRequest.h:5
Definition FogDefinitionRegistry.h:5
Definition FogManager.h:5
Definition FontHandle.h:5
Definition FrameUpdateContext.h:5
Definition GameCallbacks.h:5
Definition GameModuleClient.h:5
Definition GameRenderer.h:5
Definition GeometryGroup.h:5
Definition GuiData.h:5
Definition GuidedFlowManager.h:5
Definition HitDetectSystem.h:5
Definition HitResult.h:18
Definition HudIconActorRenderer.h:5
Definition IClientInstance.h:5
Definition IClientInstances.h:5
Definition IConnectionEventing.h:10
Definition IContentKeyProvider.h:13
Definition IGameConnectionListener.h:5
Definition IMinecraftEventing.h:147
Definition IMinecraftGame.h:5
Definition IOptionRegistry.h:5
Definition IPersonaClientProvider.h:5
Definition IReadWriteOptions.h:5
Definition IResourcePackRepository.h:35
Definition ISceneStack.h:5
Definition ITTSEventManager.h:5
Definition IUIRepository.h:5
Definition ItemInHandRenderer.h:5
Definition ItemRegistryRef.h:41
Definition ItemRenderer.h:5
Definition KeyboardManager.h:5
Definition LatencyGraphDisplay.h:5
Definition LegacyClientNetworkHandler.h:5
Definition LevelRendererCameraProxy.h:5
Definition LevelRenderer.h:5
Definition Level.h:254
Definition LightTexture.h:5
Definition LinkedAssetValidator.h:8
Definition LocalPlayer.h:5
Definition MatrixStack.h:5
Definition MinecraftGraphics.h:5
Definition MinecraftInputHandler.h:5
Definition Minecraft.h:59
Definition MobEffectsLayout.h:5
Definition MusicManager.h:5
Definition OptionRegistry.h:5
Definition Option.h:22
Definition ITelemetry.h:7
Definition Router.h:7
Definition SceneProvider.h:7
Definition UIBlockThumbnailAtlasManager.h:7
Definition OwnerPtr.h:7
Definition PackManifestFactory.h:21
Definition PacketSender.h:17
Definition Path.h:16
Definition PersonaClient.h:5
Definition PersonaRepository.h:5
Definition PixelCalc.h:5
Definition PlayerAuthentication.h:5
Definition PlayerListener.h:5
Definition PlayerReportHandler.h:5
Definition Player.h:129
Definition ProfanityContext.h:5
Definition ResourcePackManager.h:36
Definition SceneFactory.h:5
Definition ScreenContext.h:5
Definition ScreenLoadTimeTracker.h:5
Definition ScriptEngine.h:21
Definition IRegistry.h:7
Definition ShaderColor.h:5
Definition SkinRepository.h:5
Definition GameConnectionInfo.h:24
Definition IUserManager.h:7
Definition MultiplayerServiceManager.h:7
Definition User.h:7
Definition SoundEngine.h:5
Definition TaskGroup.h:86
Definition TextToSpeechClient.h:5
Definition ToastManager.h:5
Definition TrialManager.h:5
Definition UIEventCoordinator.h:5
Definition Vec2.h:5
Definition Vec3.h:10
Definition WeakEntityRef.h:14
Definition WeakRef.h:8
Definition WorldTransferAgent.h:5
Definition WorldSystem.h:7
Definition Camera.h:7
Definition TextureGroup.h:7
Definition Texture.h:7
Definition ScreenTechStackSelector.h:7
STL namespace.
Definition ActorUniqueID.h:5
Definition IProfilingOrchestratorProvider.h:7
Definition ClientInstanceArguments.h:5
Definition ClientInstanceInitArguments.h:5
Definition ClientInstance.h:16
Definition ClientInstance.h:14
Definition ClientInstance.h:241
Definition ClientInstance.h:243
Definition ConnectionContextInfo.h:5
Definition DisconnectionScreenParams.h:5
Definition ListenerState.h:5
Definition LocalPlayerChangedConnector.h:5
Definition PacksInfoData.h:14
Definition IClientController.h:7
Definition PlayerJoinWorldContext.h:5
Definition RawGameServerToken.h:8
Definition World.h:7
Definition ScreenshotOptions.h:5
Definition ServerSupportedAuthenticationTypes.h:5
Definition SplitScreenInfo.h:5
Definition context.h:5
Definition Alias.h:14
Definition ViewportInfo.h:7