public void PostServer(NetworkServers.Server server, System.Action addHostAsClient) { GetNetworkServers((NetworkServers) => { bool serverAlreadyExists = false; // If the server already exists, then we exit foreach (NetworkServers.Server serverInNetworkData in NetworkServers.Servers) { if (serverInNetworkData.HostIP == server.HostIP) { serverAlreadyExists = true; serverInNetworkData.Users.Clear(); // We update the last connection time of the server serverInNetworkData.timestamp = DateTime.UtcNow.ToBinary(); break; } } if (!serverAlreadyExists) { NetworkServers.Servers.Add(server); } PostNetworkData(NetworkServers, () => { Debug.Log("-----------Server added in the database-----------"); addHostAsClient(); }); }); }
private void AddHostIPEntry() { if (_connectionType != ConnectionType.PublicHost) { return; } Debug.Log("-----------Adding host IP entry-----------"); // Making a server NetworkServers.Server server = new NetworkServers.Server(); server.HostIP = LocalIP; _networkUtils.PostServer(server, () => { NetworkServers.UserConnection user = new NetworkServers.UserConnection(); user.connectionId = GameManager.Instance.LocalPlayer.connectionToServer.connectionId; _networkUtils.AddClientToServer(LocalIP, user); }); }