LeviLamina
Loading...
Searching...
No Matches
NetworkWorldJoiner.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
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"
15
16// auto generated forward declare list
17// clang-format off
19class IAppPlatform;
20class IClientInstance;
23class IThirdPartyServerRepository;
24class ProgressHandler;
25class RealmsAPI;
26class ServerLocator;
30namespace Bedrock::PubSub { class Subscription; }
31namespace Network { struct ServerID; }
32namespace OreUI { class Router; }
33namespace Parties { class IPartyProvider; }
34namespace Realms { struct RealmId; }
35namespace Realms { struct World; }
36namespace Social { class IUserManager; }
37namespace World { class ExternalServerWorldList; }
38namespace World { class FriendServerWorldList; }
39namespace World { class LanServerWorldList; }
40namespace World { class ThirdPartyWorldList; }
41namespace World { struct RealmsJoinData; }
42namespace ui { class ProgressScreenNavigation; }
43// clang-format on
44
45namespace World {
46
48public:
49 // member variables
50 // NOLINTBEGIN
51 ::ll::TypedStorage<8, 528, ::World::RealmWorldJoiner> mRealmWorldJoiner;
52 ::ll::TypedStorage<8, 192, ::World::ServerWorldJoiner> mServerWorldJoiner;
53 ::ll::TypedStorage<8, 8, ::World::ServerURLResolver> mServerURLResolver;
54 ::ll::TypedStorage<8, 8, ::OreUI::Router&> mRouter;
55 // NOLINTEND
56
57public:
58 // prevent constructor by default
59 NetworkWorldJoiner& operator=(NetworkWorldJoiner const&);
60 NetworkWorldJoiner(NetworkWorldJoiner const&);
61 NetworkWorldJoiner();
62
63public:
64 // member functions
65 // NOLINTBEGIN
66 MCAPI NetworkWorldJoiner(
67 ::IClientInstance& client,
68 ::IGameServerShutdown& gameServerShutdown,
69 ::INetworkGameConnector& networkGameConnector,
70 ::IMinecraftEventing& minecraftEventing,
71 ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> const& userManager,
72 ::Bedrock::NonOwnerPointer<::IAppPlatform> const& appPlatform,
73 ::std::weak_ptr<::RealmsAPI> realmsAPI,
74 ::Bedrock::NotNullNonOwnerPtr<::IThirdPartyServerRepository> thirdPartyServerRepository,
75 ::ServerLocator& serverLocator,
76 ::World::ExternalServerWorldList& externalServerWorldList,
77 ::World::FriendServerWorldList& friendServerWorldList,
78 ::World::LanServerWorldList& lanServerWorldList,
79 ::World::ThirdPartyWorldList& thirdPartyWorldList,
80 bool isEduMode,
81 ::Bedrock::NotNullNonOwnerPtr<::GatheringManager> const& gatheringManager,
82 ::ui::ProgressScreenNavigation progressScreenNavigation,
83 ::OreUI::Router& router,
84 ::std::function<::Bedrock::NonOwnerPointer<::Parties::IPartyProvider>()> getPartyProvider,
85 ::std::function<bool(::Realms::World, ::Realms::PlayerRoleActions)> canUserDoRealmRoleAction
86 );
87
88 MCAPI void cancelJoinRealmWorld();
89
90 MCFOLD ::std::string const getRealmErrorData();
91
92 MCAPI ::std::vector<::std::string> const getRealmXuidErrors();
93
94 MCAPI void
95 joinExperienceWorld(::ExperienceConnectionData const& connectionData, ::PlayerJoinWorldContext const& joinContext);
96
97 MCAPI void joinExternalNetworkWorld(
98 ::std::string const& id,
99 ::std::function<void(::std::deque<::std::unique_ptr<::ProgressHandler>>, bool)> onJoinServerCompleted,
100 ::std::function<void(::World::JoinServerWorldResult)> onErrorCallback
101 );
102
103 MCAPI void joinFriendServerWorld(
104 ::Network::ServerID const& serverId,
105 ::std::function<void(::World::JoinServerWorldResult)> onCompleteCallback
106 );
107
108 MCAPI void joinLANServerWorld(
109 ::Network::ServerID const& serverId,
110 ::std::function<void(::std::unique_ptr<::ProgressHandler>)> onCompleteCallback,
111 ::std::function<void(::World::JoinServerWorldResult)> onErrorCallback
112 );
113
114 MCAPI void joinRealmWorld(
115 ::Realms::RealmId realmId,
116 ::IMinecraftEventing::RealmConnectionFlow fromFlow,
117 ::std::function<void(::World::JoinRealmWorldResult)> onRealmResult,
118 ::std::function<void(::std::unique_ptr<::ProgressHandler>, ::std::unique_ptr<::ProgressHandler>)>
119 onRealmFetched,
120 ::std::function<void(
121 ::IMinecraftEventing::RealmConnectionResult,
122 ::std::optional<::Realms::FailureReason>,
123 ::std::optional<::World::RealmsJoinData>
124 )> onRealmJoined
125 );
126
127 MCAPI void joinRealmWorldV2(::std::string const& realmIdString, ::IMinecraftEventing::RealmConnectionFlow fromFlow);
128
129 MCAPI void
130 joinRealmWorldWithRoute(::std::string const& realmIdString, ::IMinecraftEventing::RealmConnectionFlow fromFlow);
131
132 MCAPI void joinThirdPartyServerWorld(
133 ::std::string const& id,
134 ::std::function<void(::std::deque<::std::unique_ptr<::ProgressHandler>>, bool)> onJoinServerCompleted,
135 ::std::function<void(::World::JoinServerWorldResult)> onErrorCallback
136 );
137
138 MCAPI ::Bedrock::PubSub::Subscription subscribeToJoinRealmWorldResultPublisher(
139 ::std::function<void(::World::JoinRealmWorldResult)> onJoinRealmWorldResult
140 );
141 // NOLINTEND
142
143public:
144 // static variables
145 // NOLINTBEGIN
146 MCAPI static ::std::add_lvalue_reference_t<char const[]> REALM_JOIN_ROUTE();
147 // NOLINTEND
148
149public:
150 // constructor thunks
151 // NOLINTBEGIN
152 MCAPI void* $ctor(
153 ::IClientInstance& client,
154 ::IGameServerShutdown& gameServerShutdown,
155 ::INetworkGameConnector& networkGameConnector,
156 ::IMinecraftEventing& minecraftEventing,
157 ::Bedrock::NotNullNonOwnerPtr<::Social::IUserManager> const& userManager,
158 ::Bedrock::NonOwnerPointer<::IAppPlatform> const& appPlatform,
159 ::std::weak_ptr<::RealmsAPI> realmsAPI,
160 ::Bedrock::NotNullNonOwnerPtr<::IThirdPartyServerRepository> thirdPartyServerRepository,
161 ::ServerLocator& serverLocator,
162 ::World::ExternalServerWorldList& externalServerWorldList,
163 ::World::FriendServerWorldList& friendServerWorldList,
164 ::World::LanServerWorldList& lanServerWorldList,
165 ::World::ThirdPartyWorldList& thirdPartyWorldList,
166 bool isEduMode,
167 ::Bedrock::NotNullNonOwnerPtr<::GatheringManager> const& gatheringManager,
168 ::ui::ProgressScreenNavigation progressScreenNavigation,
169 ::OreUI::Router& router,
170 ::std::function<::Bedrock::NonOwnerPointer<::Parties::IPartyProvider>()> getPartyProvider,
171 ::std::function<bool(::Realms::World, ::Realms::PlayerRoleActions)> canUserDoRealmRoleAction
172 );
173 // NOLINTEND
174};
175
176} // namespace World
Definition Subscription.h:10
Definition GatheringManager.h:5
Definition IAppPlatform.h:15
Definition IClientInstance.h:5
Definition IMinecraftEventing.h:138
Definition INetworkGameConnector.h:5
Definition Router.h:7
Definition IPartyProvider.h:7
Definition ProgressHandler.h:5
Definition RealmsAPI.h:5
Definition ServerLocator.h:19
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 ExperienceConnectionData.h:5
Definition IGameServerShutdown.h:5
Definition ServerID.h:7
Definition PlayerJoinWorldContext.h:5
Definition RealmId.h:7
Definition World.h:7
Definition RealmsJoinData.h:7