diff --git a/r5dev/networksystem/net_structs.h b/r5dev/networksystem/net_structs.h index 56f50503..4eea81cf 100644 --- a/r5dev/networksystem/net_structs.h +++ b/r5dev/networksystem/net_structs.h @@ -42,14 +42,37 @@ namespace R5Net { ////// Requests - struct UpdateGameServerMSRequest + struct UpdateGameServerMSRequest { NetGameServer gameServer; NLOHMANN_DEFINE_TYPE_INTRUSIVE(UpdateGameServerMSRequest, gameServer) }; - enum class EResponseStatus + struct GetIsUserBannedMSRequest + { + int oid; + std::string ipAddress; + + NLOHMANN_DEFINE_TYPE_INTRUSIVE(GetIsUserBannedMSRequest, oid, ipAddress) + }; + + struct GetPrivateGameServerInfoMSRequest + { + std::string publicRef; + std::string password; + + NLOHMANN_DEFINE_TYPE_INTRUSIVE(GetPrivateGameServerInfoMSRequest, publicRef, password) + }; + + + /// + /// Responses + /// + /// + /// + + enum class EResponseStatus { NO_REACH, SUCCESS, @@ -57,11 +80,9 @@ namespace R5Net { NOT_FOUND, MS_ERROR }; - - /// - /// Responses - /// - struct DefaultMSResponse + + + struct DefaultMSResponse { EResponseStatus status = EResponseStatus::NO_REACH; std::string error; @@ -90,4 +111,19 @@ namespace R5Net { }; + struct GetIsUserBannedMSResponse : DefaultMSResponse + { + bool isBanned; + std::string metaString; + + NLOHMANN_DEFINE_TYPE_INTRUSIVE(GetIsUserBannedMSResponse, isBanned, metaString) + }; + + struct GetPrivateGameServerInfoMSResponse : DefaultMSResponse + { + NetGameServer gameServer; + + NLOHMANN_DEFINE_TYPE_INTRUSIVE(GetPrivateGameServerInfoMSResponse, gameServer) + }; + } diff --git a/r5dev/networksystem/r5net.h b/r5dev/networksystem/r5net.h index a2a769d8..bfd21860 100644 --- a/r5dev/networksystem/r5net.h +++ b/r5dev/networksystem/r5net.h @@ -42,6 +42,7 @@ namespace R5Net R5NET_POST_ENDPOINT(UpdateMyGameServer, "/api/game_servers/update", UpdateGameServerMSRequest, UpdateGameServerMSResponse) R5NET_POST_ENDPOINT(GetClientIsBanned, "/api/ban_system/is_user_banned", GetIsUserBannedMSRequest, GetIsUserBannedMSResponse) + R5NET_POST_ENDPOINT(GetPrivateGameServerInfo, "/api/game_servers/game_server_private_info", GetPrivateGameServerInfoMSRequest, GetPrivateGameServerInfoMSResponse)