LeviLamina
Loading...
Searching...
No Matches
IMinecraftGame.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/game/DeferredTaskCategory.h"
7#include "mc/client/game/IClientInstances.h"
8#include "mc/client/game/IGameEventNotifier.h"
9#include "mc/client/game/IGameServerShutdown.h"
10#include "mc/client/game/IGameServerStartup.h"
11#include "mc/client/game/INetworkGameConnector.h"
12#include "mc/client/game/ISplitScreenChangedPublisher.h"
13#include "mc/client/game/IWorldTransfer.h"
14#include "mc/client/gui/GameEventNotification.h"
15#include "mc/client/social/UserPlatformConnectionResult.h"
16#include "mc/common/IMinecraftApp.h"
17#include "mc/common/SubClientId.h"
18#include "mc/deps/application/app_extensions/AppExtensionsOwner.h"
19#include "mc/deps/core/file/PathBuffer.h"
20#include "mc/deps/core/islands/AppIsland.h"
21#include "mc/deps/core/threading/Async.h"
22#include "mc/deps/core/threading/DeferredTasksManager.h"
23#include "mc/deps/core/utility/EnableNonOwnerReferences.h"
24#include "mc/deps/core/utility/NonOwnerPointer.h"
25#include "mc/deps/input/InputMode.h"
26#include "mc/deps/input/PointerType.h"
27#include "mc/events/NetworkType.h"
28#include "mc/platform/MultiplayerLockedContext.h"
29#include "mc/sound/MusicRepeatMode.h"
30
31// auto generated forward declare list
32// clang-format off
39class ChunkSource;
41class ClubsService;
44class ContentIdentity;
47class DateManager;
50class EDUSystems;
51class EmoticonManager;
52class EntityContext;
55class FontHandle;
56class GameRenderer;
58class GeometryGroup;
60class GuiData;
61class IApp;
62class IClientInstance;
65class IContentManager;
67class IDlcValidation;
68class IEntitlementManager;
70class IGameModuleApp;
71class ILevelListCache;
73class IOfferRepository;
75class ISceneStack;
77class IThirdPartyServerRepository;
79class IUIRepository;
80class ItemRegistryRef;
81class LevelDbEnv;
82class LevelLoader;
83class LevelSettings;
86class LocalPlayer;
87class MarketplaceServicesManager;
90class MusicManager;
91class NewPlayerSystem;
92class OptionRegistry;
98class PersonaService;
99class PixelCalc;
100class Player;
102class ProfanityContext;
103class RealmsAPI;
108class SceneFactory;
110class SeasonsRenderer;
111class ServerInstance;
113class ServiceDrivenImageRepository;
114class ServicesManager;
115class SkinRepository;
116class SoundEngine;
117class StoreCatalogRepository;
119class TextToIconMapper;
120class TextureAtlas;
122class TrialManager;
124class Vec3;
126struct ActorUniqueID;
129struct ScreenshotOptions;
130namespace Bedrock::PubSub { class Subscription; }
131namespace ClientBlockPipeline { class SchematicsRepository; }
132namespace Core { class FilePathManager; }
133namespace OreUI { class DataProviderManager_DEPRECATED; }
134namespace OreUI { class IResourceAllowList; }
135namespace OreUI { class Router; }
136namespace Parties { class PartySystem; }
137namespace Progress { class ProgressTips; }
138namespace Realms { class ContentService; }
139namespace Realms { class GenericRequestServiceHandler; }
140namespace Realms { class RealmsServices; }
141namespace Realms { class RealmsSystem; }
142namespace Realms { class SubscriptionService; }
143namespace Realms { struct World; }
144namespace Social { class GameConnectionInfo; }
145namespace Social { class IUserManager; }
146namespace Social { class MultiplayerServiceManager; }
147namespace Social { class PresenceManager; }
148namespace Social { class SocialSystem; }
149namespace Social { class User; }
150namespace World { class WorldSystem; }
151namespace mce { class TextureGroup; }
152namespace mce { class UUID; }
153// clang-format on
154
157 public ::IMinecraftApp,
161 public ::IClientInstances,
162 public ::IWorldTransfer,
165 public ::IGameEventNotifier {
166public:
167 // virtual functions
168 // NOLINTBEGIN
169 virtual void initialize() = 0;
170
171 virtual ~IMinecraftGame() /*override*/;
172
173 virtual void update() = 0;
174
175 virtual ::AppSystemRegistry& getAppSystemRegistry() = 0;
176
177 virtual ::EntityContext& getEntity() const = 0;
178
179 virtual void logoffAllSubclients() = 0;
180
181 virtual void buildTreatmentPackStack(bool fireEvents) const = 0;
182
183 virtual void queueSubclientRemoval(::SubClientId subid) = 0;
184
185 virtual ::std::shared_ptr<::mce::TextureGroup> getTextureGroup() const = 0;
186
187 virtual ::Bedrock::NotNullNonOwnerPtr<::ResourceLoadManager> getResourceLoadManager() = 0;
188
189 virtual void handleReloadUIDefinitions() = 0;
190
191 virtual ::Bedrock::NotNullNonOwnerPtr<::IUIDefRepository> getUIDefRepo() const = 0;
192
193 virtual bool canActivateKeyboard() = 0;
194
195 virtual void releaseClientSubId(::SubClientId subid) = 0;
196
197 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentTierManager const> getContentTierManager() const = 0;
198
199 virtual ::Bedrock::NotNullNonOwnerPtr<::DevConsoleLogger> getDevConsoleLogger() const = 0;
200
201 virtual void setDisableInputForAllOtherClients(int id, bool disableStatus) = 0;
202
203 virtual ::DeferredTasksManager<::DeferredTaskCategory>& getDeferredTasks() = 0;
204
205 virtual bool shouldShowRatingsPrompt() const = 0;
206
207 virtual ::Bedrock::NotNullNonOwnerPtr<::ServerInstanceEventCoordinator> getServerInstanceEventCoordinator() = 0;
208
209 virtual bool isHostingLocalDedicatedServer() const = 0;
210
211 virtual bool isLeaveGameDone() const = 0;
212
213 virtual void destroyGame() = 0;
214
215 virtual bool isInGame() const = 0;
216
217 virtual void startLeaveGame() = 0;
218
219 virtual bool isAudioInitialized() const = 0;
220
221 virtual ::MusicManager const* getMusicManager() const = 0;
222
223 virtual ::MusicManager* getMusicManagerNonConst() const = 0;
224
225 virtual ::Bedrock::NotNullNonOwnerPtr<::SoundEngine> getSoundEngine() const = 0;
226
227 virtual ::Bedrock::NotNullNonOwnerPtr<::ITextBoxController> getTextBoxController() = 0;
228
229 virtual void openPauseMenu() = 0;
230
231 virtual void setIsInGame(bool isInGame) = 0;
232
233 virtual void createClientItemRegistry() = 0;
234
235 virtual bool hasNetworkPrivileges(bool onlyWifiAllowed) = 0;
236
237 virtual ::Bedrock::NotNullNonOwnerPtr<::IThirdPartyServerRepository const>
238 getThirdPartyServerRepository() const = 0;
239
240 virtual ::Bedrock::NotNullNonOwnerPtr<::IThirdPartyServerRepository> getThirdPartyServerRepository() = 0;
241
242 virtual ::Bedrock::NotNullNonOwnerPtr<::ControllerIDtoClientMap> retrieveCIDToClientMap() = 0;
243
244 virtual ::std::map<::SubClientId, ::std::shared_ptr<::IClientInstance>> const& getClientInstanceMap() const = 0;
245
246 virtual void joinMultiplayerWithAddress(
247 ::Social::GameConnectionInfo gameConnection,
248 bool joiningLocalServer,
249 ::std::string const& serverName,
250 ::std::string const& worldName,
251 ::NetworkType networkTypeOverride,
252 ::PlayerJoinWorldContext context
253 ) = 0;
254
255 virtual ::Bedrock::NotNullNonOwnerPtr<::IOfferRepository> getOfferRepository() const = 0;
256
257 virtual ::Bedrock::NotNullNonOwnerPtr<::TrialManager> getTrialManager() const = 0;
258
259 virtual bool isTrialManagerInitialized() const = 0;
260
261 virtual ::InputMode getCurrentInputMode() const = 0;
262
263 virtual void handleInputPaneHidden() = 0;
264
265 virtual bool getSuspended() const = 0;
266
267 virtual bool isResuming() const = 0;
268
269 virtual uint64 getClientInstanceCount() const = 0;
270
271 virtual void setProfilerIsOn(bool val) = 0;
272
273 virtual ::LocalPlayer* getPrimaryLocalPlayer() = 0;
274
275 virtual ::LocalPlayer const* getPrimaryLocalPlayer() const = 0;
276
277 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> getUserManager() const = 0;
278
279 virtual ::Bedrock::NotNullNonOwnerPtr<::IClientInstance> getPrimaryClientInstance() = 0;
280
281 virtual ::Bedrock::NotNullNonOwnerPtr<::IClientInstance const> getPrimaryClientInstance() const = 0;
282
283 virtual ::ItemRegistryRef getClientItemRegistry() const = 0;
284
285 virtual bool isPrimaryClientInstanceReady() const = 0;
286
287 virtual void ensureAllClientsAreLeaving() const = 0;
288
289 virtual ::Bedrock::NotNullNonOwnerPtr<::ClientNetworkSystem> getClientNetworkSystemPtr() = 0;
290
291 virtual ::ClientNetworkSystem& getClientNetworkSystem() = 0;
292
293 virtual ::ClientNetworkSystem const& getClientNetworkSystem() const = 0;
294
295 virtual bool hasAllValidCrossPlatformSkin() const = 0;
296
297 virtual ::Bedrock::NotNullNonOwnerPtr<::NewPlayerSystem> getNewPlayerSystem() = 0;
298
299 virtual ::Bedrock::NotNullNonOwnerPtr<::NewPlayerSystem const> getNewPlayerSystem() const = 0;
300
301 virtual void createAndUploadWorldToRealm(
302 ::std::string const& levelId,
303 ::std::string const& levelName,
304 ::ContentIdentity const& premiumTemplateContentIdentity,
305 ::LevelSettings const& settings,
306 ::Realms::World world,
307 ::std::function<void(::Realms::World)> callback
308 ) = 0;
309
310 virtual ::ILevelListCache& getLevelListCache() = 0;
311
312 virtual ::Bedrock::NotNullNonOwnerPtr<::Core::FilePathManager> getFilePathManager() = 0;
313
314 virtual void setUseFontOverrides(bool useOverrides) = 0;
315
316 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getFontHandle() const = 0;
317
318 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getUIFontHandle() const = 0;
319
320 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getRuneFontHandle() const = 0;
321
322 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getUnicodeFontHandle() const = 0;
323
324 virtual ::Bedrock::NotNullNonOwnerPtr<::FontHandle const> getSmoothFontHandle() const = 0;
325
326 virtual void onClientLevelExit(::IClientInstance& exitClient, uint exitCode) = 0;
327
328 virtual bool isLocalPlayer(::ActorUniqueID const& id) const = 0;
329
330 virtual ::IMinecraftEventing& getEventing() const = 0;
331
332 virtual void reloadAnimationAndGeometryData(bool sync) = 0;
333
334 virtual ::Bedrock::NotNullNonOwnerPtr<::GeometryGroup> getGeometryGroup() const = 0;
335
336 virtual ::Bedrock::NotNullNonOwnerPtr<::BlockCullingGroup> getBlockCullingGroup() const = 0;
337
338 virtual ::Bedrock::NotNullNonOwnerPtr<::ClientBlockPipeline::SchematicsRepository>
339 getSchematicsRepository() const = 0;
340
341 virtual ::ParticleEffectGroup& getParticleEffectGroup() const = 0;
342
343 virtual ::DeferredLighting& getDeferredLighting() const = 0;
344
345 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::MultiplayerServiceManager> getMultiplayerServiceManager() const = 0;
346
347 virtual ::IResourcePackRepository& getResourcePackRepository() const = 0;
348
349 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentKeyProvider const> getKeyProvider() const = 0;
350
351 virtual ::ResourcePackManager& getResourcePackManager() const = 0;
352
353 virtual ::ResourcePackManager& getServerResourcePackManager() = 0;
354
355 virtual ::PackManifestFactory& getPackManifestFactory() = 0;
356
357 virtual ::PlayerMessagingService& getPlayerMessagingService() = 0;
358
359 virtual ::std::shared_ptr<::SkinRepository> getSkinRepository() const = 0;
360
361 virtual ::PersonaRepository& getPersonaRepository() const = 0;
362
363 virtual ::MarketplaceServicesManager& getMarketplaceServicesManager() const = 0;
364
365 virtual ::Bedrock::NotNullNonOwnerPtr<::mce::TextureGroup> getStoreCacheTextures() const = 0;
366
367 virtual ::Bedrock::NotNullNonOwnerPtr<::MinecraftGraphics> getMinecraftGraphics() = 0;
368
369 virtual ::Bedrock::NotNullNonOwnerPtr<::IUIRepository> getUIRepository() const = 0;
370
371 virtual bool isPrimaryLevelCrossPlatformMultiplayer() const = 0;
372
373 virtual bool isPrimaryLevelMultiplayer() const = 0;
374
375 virtual ::std::string getMultiplayerDisabledTextTitle(::MultiplayerLockedContext context) const = 0;
376
377 virtual ::std::string getMultiplayerDisabledTextBody(::MultiplayerLockedContext context) const = 0;
378
379 virtual void setRenderingSize(int w, int h) = 0;
380
381 virtual void recalculateScene() = 0;
382
383 virtual void setUISizeAndScale(int w, int h, float forcedGuiScale) = 0;
384
385 virtual bool isReadyToRender() const = 0;
386
387 virtual void onDimensionChanged() = 0;
388
389 virtual void setLeaveGameInProgressAsReadyToContinue() = 0;
390
391 virtual void onClientCreatedLevel(::IClientInstance& client) = 0;
392
393 virtual uint64 generateClientId(bool, bool&, uint64, ::std::shared_ptr<::Social::User>) = 0;
394
395 virtual ::std::weak_ptr<::RealmsAPI> getRealms() = 0;
396
397 virtual ::Realms::ContentService& getRealmsContentService() = 0;
398
399 virtual bool getMouseGrabbed() const = 0;
400
401 virtual void navigateToPlayScreenFriendsTab() = 0;
402
403 virtual bool isInServer() const = 0;
404
405 virtual bool isInRealm() const = 0;
406
407 virtual bool isShowingLoadingScreen() const = 0;
408
409 virtual bool isRenderingLoadingScreen() const = 0;
410
411 virtual ::Bedrock::NotNullNonOwnerPtr<::StoreCatalogRepository> getStoreCatalog() const = 0;
412
413 virtual ::ServiceDrivenImageRepository& getServiceImageRepository() const = 0;
414
415 virtual ::Bedrock::NotNullNonOwnerPtr<::LibraryRepository> getLibraryRepository() const = 0;
416
417 virtual ::GameRenderer& getGameRenderer() const = 0;
418
419 virtual ::Bedrock::NotNullNonOwnerPtr<::TextureAtlas> getTextureAtlas() = 0;
420
421 virtual bool hasActorResourceDefinitionGroup() const = 0;
422
423 virtual ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup const>
424 getActorResourceDefinitionGroup() const = 0;
425
426 virtual ::Bedrock::NotNullNonOwnerPtr<::ActorResourceDefinitionGroup> getActorResourceDefinitionGroupMutable() = 0;
427
428 virtual ::Bedrock::NotNullNonOwnerPtr<::RenderControllerGroup const> getRenderControllerGroup() const = 0;
429
430 virtual ::Bedrock::NotNullNonOwnerPtr<::RenderControllerGroup> getRenderControllerGroup() = 0;
431
432 virtual int getMaxPlayerCount() const = 0;
433
434 virtual ::Bedrock::Threading::Async<::Core::PathBuffer<::std::string>>
435 requestScreenshot(::ScreenshotOptions& screenshotOptions) = 0;
436
437 virtual ::Bedrock::NotNullNonOwnerPtr<::OreUI::IResourceAllowList> getOreUIResourceAllowList() = 0;
438
439 virtual ::Bedrock::NotNullNonOwnerPtr<::DateManager> getDateManager() const = 0;
440
441 virtual ::PixelCalc const& getDpadScale() const = 0;
442
443 virtual void setKeyboardForcedHeight(float height, bool isShowSignal) = 0;
444
445 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack const> getMainSceneStack() const = 0;
446
447 virtual ::Bedrock::NotNullNonOwnerPtr<::ISceneStack> getMainSceneStack() = 0;
448
449 virtual ::OreUI::Router& getUIRouter() = 0;
450
451 virtual ::OreUI::DataProviderManager_DEPRECATED& getDataProviderManager() = 0;
452
453 virtual uint getUIRenderClientMask() const = 0;
454
455 virtual bool useMinecraftVersionOfXBLUI() const = 0;
456
457 virtual ::Bedrock::NotNullNonOwnerPtr<::PersonaService> getPersonaService() const = 0;
458
459 virtual ::Bedrock::NotNullNonOwnerPtr<::GatheringManager> getGatheringManager() const = 0;
460
461 virtual ::Bedrock::NotNullNonOwnerPtr<::ContentCatalogService> getContentCatalogService() const = 0;
462
463 virtual ::Bedrock::NotNullNonOwnerPtr<::FlightingService> getFlightingService() const = 0;
464
465 virtual ::std::shared_ptr<::FlightingService> getFlightingServicePtr() const = 0;
466
467 virtual ::Bedrock::NotNullNonOwnerPtr<::TreatmentPackDownloadMonitor const>
468 getTreatmentPackDownloadMonitor() const = 0;
469
470 virtual ::SceneFactory& getPrimarySceneFactory() const = 0;
471
472 virtual ::Bedrock::NonOwnerPointer<::MinecraftInputHandler> getInput() const = 0;
473
474 virtual void grabMouse() = 0;
475
476 virtual void releaseMouse() = 0;
477
478 virtual void refocusMouse(bool lostMouse) = 0;
479
480 virtual void setMouseType(::Bedrock::Input::PointerType type) = 0;
481
482 virtual void play(::std::string const& name, ::Vec3 const& pos, float volume, float pitch) = 0;
483
484 virtual void playUI(::std::string const& name, float volume, float pitch) = 0;
485
486 virtual void fadeOutMusic() = 0;
487
488 virtual void onPlayerLoaded(::IClientInstance& client, ::Player& player) = 0;
489
490 virtual bool checkForPiracy() const = 0;
491
492 virtual ::Bedrock::NotNullNonOwnerPtr<::CubemapBackgroundResources> getCubemapBackgroundResources() = 0;
493
494 virtual void setAppWillTerminate(bool willTerminate) = 0;
495
496 virtual ::ServerInstance* getServerInstance() = 0;
497
498 virtual ::Bedrock::NotNullNonOwnerPtr<::ServerInstance> getServerInstanceNonOwnPtr() = 0;
499
500 virtual void setLaunchedFromLegacyVersion(bool launchedFromLegacyVersion) = 0;
501
502 virtual ::UIMeasureStrategy& getUIMeasureStrategy() = 0;
503
504 virtual void registerUpsellScreen() = 0;
505
506 virtual ::Bedrock::NotNullNonOwnerPtr<::WorldTemplateManager> getWorldTemplateManager() const = 0;
507
508 virtual ::World::WorldSystem& getWorldSystem() const = 0;
509
510 virtual bool isWorldSystemReady() const = 0;
511
512 virtual ::Social::SocialSystem& getSocialSystem() const = 0;
513
514 virtual ::Bedrock::NonOwnerPointer<::Parties::PartySystem> getPartySystem() const = 0;
515
516 virtual ::Bedrock::NotNullNonOwnerPtr<::Progress::ProgressTips> getUIProgressTips() const = 0;
517
518 virtual ::Bedrock::NotNullNonOwnerPtr<::Realms::RealmsSystem> getRealmsSystem() const = 0;
519
520 virtual ::Bedrock::NotNullNonOwnerPtr<::IEntitlementManager> getEntitlementManager() = 0;
521
522 virtual ::IDlcValidation& getDlcValidation() = 0;
523
524 virtual ::ServicesManager& getServicesManager() = 0;
525
526 virtual ::Bedrock::NotNullNonOwnerPtr<::SunsettingManager> getSunsettingManager() = 0;
527
528 virtual void pauseContentDownloads() = 0;
529
530 virtual void resumeContentDownloads() = 0;
531
532 virtual ::Bedrock::NotNullNonOwnerPtr<::IExternalServerFile> getExternalServer() const = 0;
533
534 virtual bool isStartingGame() const = 0;
535
536 virtual bool isSplitscreenJoinEnabled() const = 0;
537
538 virtual bool canAddSplitscreenSubClient(int controllerId) const = 0;
539
540 virtual ::Bedrock::NotNullNonOwnerPtr<::LevelLoader> getLevelLoader() = 0;
541
542 virtual ::Bedrock::NotNullNonOwnerPtr<::ExternalContentManager> getContentManager() = 0;
543
544 virtual ::std::shared_ptr<::IClientInstance>
545 tryGetClientInstanceFromPlayerUUID(::mce::UUID const& playerId) const = 0;
546
547 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentAccessibilityProvider const> getAccessibilityProvider() const = 0;
548
549 virtual ::Bedrock::NotNullNonOwnerPtr<::IContentAccessibilityProvider> getAccessibilityProvider() = 0;
550
551 virtual ::Bedrock::NotNullNonOwnerPtr<::ContentAcquisition> getContentAcquisition() const = 0;
552
553 virtual void onGameEventNotification(::ui::GameEventNotification notification) = 0;
554
555 virtual void setRealmsLoadingLink(bool state) = 0;
556
557 virtual ::Bedrock::NotNullNonOwnerPtr<::IApp> getApp() = 0;
558
559 virtual void clearCache() = 0;
560
561 virtual ::IContentManager& getResourceContentManager() = 0;
562
563 virtual ::Bedrock::NotNullNonOwnerPtr<::EmoticonManager const> getEmoticonManager() const = 0;
564
565 virtual ::Bedrock::NotNullNonOwnerPtr<::TextToIconMapper const> getTextToIconMapper() const = 0;
566
567 virtual ::Bedrock::NotNullNonOwnerPtr<::TextToIconMapper> getTextToIconMapper() = 0;
568
569 virtual void onPrimaryUserReconnect(::Social::UserPlatformConnectionResult status, bool isUserInitiated) = 0;
570
571 virtual void setSmoothFontStyle() = 0;
572
573 virtual void setUIFontStyle() = 0;
574
575 virtual void copyInternalSettingsFolderToExternalLocation() const = 0;
576
577 virtual void joinRealmFromInvite(::Realms::World const& world) = 0;
578
579 virtual ::Bedrock::NotNullNonOwnerPtr<::Realms::RealmsServices> getRealmsServices() = 0;
580
581 virtual ::std::weak_ptr<::ClubsService> getClubsService() = 0;
582
583 virtual ::std::shared_ptr<::Realms::GenericRequestServiceHandler> getGenericRealmsService() = 0;
584
585 virtual ::Bedrock::NotNullNonOwnerPtr<::Realms::SubscriptionService> getRealmsSubscriptionService() = 0;
586
587 virtual ::Bedrock::NotNullNonOwnerPtr<::ActiveDirectoryIdentity> getActiveDirectoryIdentity() = 0;
588
589 virtual ::PackSourceFactory& getPackSourceFactory() const = 0;
590
591 virtual void displayActiveDirectoryLoginDialog() = 0;
592
593 virtual void resetInput() = 0;
594
595 virtual ::Bedrock::NotNullNonOwnerPtr<::Social::PresenceManager> getPresenceManager() = 0;
596
597 virtual ::Bedrock::NotNullNonOwnerPtr<::GuiData> getPrimaryGuiData() = 0;
598
599 virtual bool isPrimaryUserSigninInProgress() const = 0;
600
601 virtual void setupCommandParser(::IClientInstance& client) = 0;
602
603 virtual void stopSound(::std::string const& name) = 0;
604
605 virtual void stopSounds() = 0;
606
607 virtual ::PackDownloadManager& getPackDownloadManager() = 0;
608
609 virtual ::Bedrock::NonOwnerPointer<::LinkedAssetValidator> getLinkedAssetValidator() const = 0;
610
611 virtual ::Bedrock::NonOwnerPointer<::LinkedAssetValidator> getLinkedAssetValidator() = 0;
612
613 virtual void addSubClientInstanceAndAssociateToUser(int controllerId) = 0;
614
615 virtual void forEachClientInstance(::std::function<void(::IClientInstance&)> callback) = 0;
616
617 virtual bool isInitialized() const = 0;
618
619 virtual ::Bedrock::NotNullNonOwnerPtr<::SeasonsRenderer> getSeasonsRenderer() = 0;
620
621 virtual ::std::shared_ptr<::ActorAnimationGroup> getActorAnimationGroup() const = 0;
622
623 virtual ::Bedrock::NotNullNonOwnerPtr<::ActorAnimationControllerGroup> getActorAnimationControllerGroup() const = 0;
624
625 virtual bool isMultiplayerServiceManagerReady() const = 0;
626
627 virtual void doPrimaryClientReadyWork(::std::function<void()> workFn) = 0;
628
629 virtual void doUserManagerReadyWork(::std::function<void()> workFn) = 0;
630
631 virtual ::Bedrock::NotNullNonOwnerPtr<::ScreenshotRecorder> getScreenshotRecorder() = 0;
632
633 virtual ::Bedrock::NonOwnerPointer<::ContentLogFileEndPoint> const getContentFileLogEndPoint() const = 0;
634
635 virtual ::Bedrock::NonOwnerPointer<::EDUSystems const> getEDUSystems() const = 0;
636
637 virtual ::Bedrock::NonOwnerPointer<::EDUSystems> getEDUSystems() = 0;
638
639 virtual ::std::shared_ptr<::OptionRegistry> getPrimaryUserOptions() = 0;
640
641 virtual ::std::shared_ptr<::OptionRegistry const> getPrimaryUserOptions() const = 0;
642
643 virtual void tryShowXblFirstLaunchScreen(bool isUserConnectedToPlatform) = 0;
644
645 virtual ::Bedrock::PubSub::Subscription
646 registerSplitScreenChangedListener(::std::function<void(uchar)> callback) const = 0;
647
648 virtual uchar getSplitScreenCount() const = 0;
649
650 virtual ::IGameModuleApp& getGameModule() = 0;
651
652 virtual bool isMusicEnabled() const = 0;
653
654 virtual void queueCustomMusic(
655 ::std::string const& eventName,
656 float volume,
657 float fadeoutSeconds,
658 ::MusicRepeatMode playMode
659 ) = 0;
660
661 virtual void
662 playCustomMusic(::std::string const& eventName, float volume, float fadeoutSeconds, ::MusicRepeatMode playMode) = 0;
663
664 virtual void stopCustomMusic(float fadeoutSeconds) = 0;
665
666 virtual void setMusicCommandVolumeMultiplier(float volumeMultiplier) = 0;
667
668 virtual float calculateScreenSizeToResolutionScalar(int const width, int const height) const = 0;
669
670 virtual ::Bedrock::NotNullNonOwnerPtr<::GlobalResourcesCrashRecovery const>
671 GetGlobalResourcesCrashRecovery() const = 0;
672
673 virtual ::Bedrock::NotNullNonOwnerPtr<::LevelDbEnv> getLevelDbEnv() = 0;
674
675 virtual ::Bedrock::NonOwnerPointer<::ChunkSource> getClientGenChunkSource(::DimensionType const& dimensionType) = 0;
676
677 virtual bool isEditorModeEnabled() const = 0;
678
679 virtual void setResetCallbackObject(::ResetCallbackObject* obj) = 0;
680
681 virtual void resetThreadCallbacks() = 0;
682
683 virtual void shutdownServer() = 0;
684
685 virtual ::Bedrock::NotNullNonOwnerPtr<::ProfanityContext> getProfanityContext() = 0;
686
687 virtual double getGameUpdateDurationInSeconds() const = 0;
688 // NOLINTEND
689
690public:
691 // destructor thunk
692 // NOLINTBEGIN
693 MCNAPI void $dtor();
694 // NOLINTEND
695
696public:
697 // virtual function thunks
698 // NOLINTBEGIN
699
700 // NOLINTEND
701
702public:
703 // vftables
704 // NOLINTBEGIN
705 MCNAPI static void** $vftableForIMinecraftApp();
706
707 MCNAPI static void** $vftableForINetworkGameConnector();
708
709 MCNAPI static void** $vftableForIClientInstances();
710
711 MCNAPI static void** $vftableForAppIsland();
712
713 MCNAPI static void** $vftableForIGameServerStartup();
714
716
717 MCNAPI static void** $vftableForAppExtensionsOwner();
718
719 MCNAPI static void** $vftableForIGameEventNotifier();
720
722
723 MCNAPI static void** $vftableForIWorldTransfer();
724
725 MCNAPI static void** $vftableForIGameServerShutdown();
726 // NOLINTEND
727};
Definition ActiveDirectoryIdentity.h:39
Definition ActorAnimationControllerGroup.h:27
Definition ActorAnimationGroup.h:26
Definition ActorResourceDefinitionGroup.h:5
Definition AppExtensionsOwner.h:7
Definition AppSystemRegistry.h:15
Definition AppIsland.h:15
Definition EnableNonOwnerReferences.h:7
Definition Subscription.h:10
Definition BlockCullingGroup.h:5
Definition ChunkSource.h:37
Definition SchematicsRepository.h:7
Definition ClientNetworkSystem.h:39
Definition ClubsService.h:5
Definition ContentAcquisition.h:5
Definition ContentCatalogService.h:5
Definition ContentIdentity.h:8
Definition ContentLogFileEndPoint.h:16
Definition FilePathManager.h:18
Definition CubemapBackgroundResources.h:5
Definition DateManager.h:14
Definition DeferredLighting.h:5
Definition DevConsoleLogger.h:5
Definition EDUSystems.h:33
Definition EmoticonManager.h:5
Definition EntityContext.h:17
Definition ExternalContentManager.h:5
Definition FlightingService.h:5
Definition FontHandle.h:5
Definition GameRenderer.h:5
Definition GatheringManager.h:5
Definition GeometryGroup.h:5
Definition GlobalResourcesCrashRecovery.h:5
Definition GuiData.h:5
Definition IApp.h:8
Definition IClientInstance.h:5
Definition IClientInstances.h:5
Definition IContentAccessibilityProvider.h:13
Definition IContentKeyProvider.h:13
Definition IContentManager.h:5
Definition IContentTierManager.h:13
Definition IDlcValidation.h:5
Definition IExternalServerFile.h:5
Definition IGameEventNotifier.h:5
Definition IGameModuleApp.h:5
Definition IGameServerStartup.h:5
Definition ILevelListCache.h:27
Definition IMinecraftApp.h:19
Definition IMinecraftEventing.h:138
Definition IMinecraftGame.h:5
static MCAPI void ** $vftableForIGameEventNotifier()
static MCAPI void ** $vftableForIClientInstances()
static MCAPI void ** $vftableForIWorldTransfer()
static MCAPI void ** $vftableForINetworkGameConnector()
static MCAPI void ** $vftableForIGameServerStartup()
static MCAPI void ** $vftableForAppExtensionsOwner()
MCAPI void $dtor()
static MCAPI void ** $vftableForAppIsland()
static MCAPI void ** $vftableForEnableNonOwnerReferences()
static MCAPI void ** $vftableForISplitScreenChangedPublisher()
static MCAPI void ** $vftableForIGameServerShutdown()
static MCAPI void ** $vftableForIMinecraftApp()
Definition INetworkGameConnector.h:5
Definition IResourcePackRepository.h:34
Definition ISceneStack.h:5
Definition ISplitScreenChangedPublisher.h:5
Definition ITextBoxController.h:5
Definition IUIDefRepository.h:5
Definition IUIRepository.h:5
Definition ItemRegistryRef.h:42
Definition LevelDbEnv.h:8
Definition LevelLoader.h:5
Definition LevelSettings.h:39
Definition LibraryRepository.h:5
Definition LinkedAssetValidator.h:8
Definition LocalPlayer.h:5
Definition MinecraftGraphics.h:5
Definition MinecraftInputHandler.h:5
Definition MusicManager.h:5
Definition NewPlayerSystem.h:5
Definition OptionRegistry.h:5
Definition DataProviderManager_DEPRECATED.h:7
Definition IResourceAllowList.h:7
Definition Router.h:7
Definition PackDownloadManager.h:5
Definition PackManifestFactory.h:21
Definition PackSourceFactory.h:34
Definition ParticleEffectGroup.h:5
Definition PartySystem.h:7
Definition PersonaRepository.h:5
Definition PersonaService.h:5
Definition PixelCalc.h:5
Definition PlayerMessagingService.h:5
Definition Player.h:136
Definition ProfanityContext.h:5
Definition ProgressTips.h:7
Definition RealmsAPI.h:5
Definition ContentService.h:7
Definition GenericRequestServiceHandler.h:7
Definition RealmsServices.h:7
Definition RealmsSystem.h:7
Definition SubscriptionService.h:7
Definition RenderControllerGroup.h:5
Definition ResetCallbackObject.h:5
Definition ResourceLoadManager.h:19
Definition ResourcePackManager.h:35
Definition SceneFactory.h:5
Definition ScreenshotRecorder.h:5
Definition SeasonsRenderer.h:5
Definition ServerInstanceEventCoordinator.h:20
Definition ServerInstance.h:64
Definition SkinRepository.h:5
Definition GameConnectionInfo.h:23
Definition IUserManager.h:7
Definition MultiplayerServiceManager.h:7
Definition PresenceManager.h:7
Definition SocialSystem.h:7
Definition User.h:7
Definition SoundEngine.h:5
Definition SunsettingManager.h:5
Definition TextToIconMapper.h:5
Definition TextureAtlas.h:5
Definition TreatmentPackDownloadMonitor.h:5
Definition TrialManager.h:5
Definition UIMeasureStrategy.h:5
Definition Vec3.h:10
Definition WorldTemplateManager.h:22
Definition WorldSystem.h:7
Definition TextureGroup.h:7
Definition UUID.h:7
Definition ActorUniqueID.h:10
Definition ControllerIDtoClientMap.h:5
Definition IGameServerShutdown.h:5
Definition IWorldTransfer.h:5
Definition PlayerJoinWorldContext.h:5
Definition World.h:7
Definition ScreenshotOptions.h:9