3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/client/network/realms/FailureReason.h"
7#include "mc/client/realms/PlayerRoleActions.h"
8#include "mc/client/world/JoinRealmWorldResult.h"
9#include "mc/client/world/JoinServerWorldResult.h"
10#include "mc/client/world/RealmWorldJoiner.h"
11#include "mc/client/world/ServerURLResolver.h"
12#include "mc/client/world/ServerWorldJoiner.h"
13#include "mc/deps/core/utility/NonOwnerPointer.h"
14#include "mc/events/IMinecraftEventing.h"
23class IThirdPartyServerRepository;
29namespace Network {
struct ServerID; }
30namespace OreUI {
class Router; }
32namespace Realms {
struct RealmId; }
33namespace Realms {
struct World; }
49 ::ll::TypedStorage<8, 528, ::World::RealmWorldJoiner> mRealmWorldJoiner;
50 ::ll::TypedStorage<8, 264, ::World::ServerWorldJoiner> mServerWorldJoiner;
51 ::ll::TypedStorage<8, 8, ::World::ServerURLResolver> mServerURLResolver;
52 ::ll::TypedStorage<8, 8, ::World::ExternalServerWorldList&> mExternalServerWorldList;
53 ::ll::TypedStorage<8, 8, ::OreUI::Router&> mRouter;
58 NetworkWorldJoiner& operator=(NetworkWorldJoiner
const&);
59 NetworkWorldJoiner(NetworkWorldJoiner
const&);
65 MCAPI NetworkWorldJoiner(
66 ::IClientInstance& client,
67 ::IGameServerShutdown& gameServerShutdown,
68 ::INetworkGameConnector& networkGameConnector,
69 ::IMinecraftEventing& minecraftEventing,
70 ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager>
const& userManager,
71 ::Bedrock::NonOwnerPointer<::IAppPlatform>
const& appPlatform,
72 ::std::weak_ptr<::RealmsAPI> realmsAPI,
73 ::Bedrock::NotNullNonOwnerPtr<::IThirdPartyServerRepository> thirdPartyServerRepository,
74 ::ServerLocator& serverLocator,
75 ::World::ExternalServerWorldList& externalServerWorldList,
76 ::World::FriendServerWorldList& friendServerWorldList,
77 ::World::LanServerWorldList& lanServerWorldList,
78 ::World::ThirdPartyWorldList& thirdPartyWorldList,
80 ::Bedrock::NotNullNonOwnerPtr<::GatheringManager>
const& gatheringManager,
81 ::ui::ProgressScreenNavigation progressScreenNavigation,
82 ::OreUI::Router& router,
83 ::std::function<::Bedrock::NonOwnerPointer<::Parties::IPartyProvider>()> getPartyProvider,
84 ::std::function<
bool(::Realms::World, ::Realms::PlayerRoleActions)> canUserDoRealmRoleAction
87 MCFOLD ::std::string
const getRealmErrorData();
89 MCAPI
void joinExternalNetworkWorld(
90 ::std::string
const&
id,
91 ::std::function<
void(::std::deque<::std::unique_ptr<::ProgressHandler>>,
bool)> onJoinServerCompleted,
92 ::std::function<
void(::World::JoinServerWorldResult)> onErrorCallback
95 MCAPI
void joinLANServerWorld(
96 ::Network::ServerID
const& serverId,
97 ::std::function<
void(::std::unique_ptr<::ProgressHandler>)> onCompleteCallback,
98 ::std::function<
void(::World::JoinServerWorldResult)> onErrorCallback
101 MCAPI
void joinRealmWorld(
102 ::Realms::RealmId realmId,
103 ::IMinecraftEventing::RealmConnectionFlow fromFlow,
104 ::std::function<
void(::World::JoinRealmWorldResult)> onRealmResult,
105 ::std::function<
void(::std::unique_ptr<::ProgressHandler>, ::std::unique_ptr<::ProgressHandler>)>
107 ::std::function<
void(
108 ::IMinecraftEventing::RealmConnectionResult,
109 ::std::optional<::Realms::FailureReason>,
110 ::std::optional<::World::RealmsJoinData>
115 joinRealmWorldWithRoute(::std::string
const& realmIdString, ::IMinecraftEventing::RealmConnectionFlow fromFlow);
117 MCAPI
void joinThirdPartyServerWorld(
118 ::std::string
const&
id,
119 ::std::function<
void(::std::deque<::std::unique_ptr<::ProgressHandler>>,
bool)> onJoinServerCompleted,
120 ::std::function<
void(::World::JoinServerWorldResult)> onErrorCallback,
121 ::std::function<
void()> onJoinServerCancelled
124 MCAPI ::Bedrock::PubSub::Subscription subscribeToJoinRealmWorldResultPublisher(
125 ::std::function<
void(::World::JoinRealmWorldResult)> onJoinRealmWorldResult
132 MCAPI static ::std::add_lvalue_reference_t<char const[37]> REALM_JOIN_ROUTE();
139 ::IClientInstance& client,
140 ::IGameServerShutdown& gameServerShutdown,
141 ::INetworkGameConnector& networkGameConnector,
142 ::IMinecraftEventing& minecraftEventing,
143 ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager>
const& userManager,
144 ::Bedrock::NonOwnerPointer<::IAppPlatform>
const& appPlatform,
145 ::std::weak_ptr<::RealmsAPI> realmsAPI,
146 ::Bedrock::NotNullNonOwnerPtr<::IThirdPartyServerRepository> thirdPartyServerRepository,
147 ::ServerLocator& serverLocator,
148 ::World::ExternalServerWorldList& externalServerWorldList,
149 ::World::FriendServerWorldList& friendServerWorldList,
150 ::World::LanServerWorldList& lanServerWorldList,
151 ::World::ThirdPartyWorldList& thirdPartyWorldList,
153 ::Bedrock::NotNullNonOwnerPtr<::GatheringManager>
const& gatheringManager,
154 ::ui::ProgressScreenNavigation progressScreenNavigation,
155 ::OreUI::Router& router,
156 ::std::function<::Bedrock::NonOwnerPointer<::Parties::IPartyProvider>()> getPartyProvider,
157 ::std::function<
bool(::Realms::World, ::Realms::PlayerRoleActions)> canUserDoRealmRoleAction
Definition Subscription.h:10
Definition GatheringManager.h:5
Definition IClientInstance.h:5
Definition IMinecraftEventing.h:145
Definition INetworkGameConnector.h:5
Definition IPartyProvider.h:7
Definition ProgressHandler.h:5
Definition ServerLocator.h:20
Definition IUserManager.h:7
Definition ExternalServerWorldList.h:7
Definition FriendServerWorldList.h:7
Definition LanServerWorldList.h:7
Definition NetworkWorldJoiner.h:7
Definition ThirdPartyWorldList.h:7
Definition ProgressScreenNavigation.h:7
Definition IGameServerShutdown.h:5
Definition RealmsJoinData.h:7