private static void SendUpdatedGamesList(List <Message> result) { var clientConnectedMessage = new ClientConnectedMessage(); clientConnectedMessage.Games = GameManager.RecieveAllGames(); result.Add(clientConnectedMessage); }
public void MergeFrom(ServerMessage other) { if (other == null) { return; } switch (other.MessageCase) { case MessageOneofCase.ArduinoConnectedMessage: if (ArduinoConnectedMessage == null) { ArduinoConnectedMessage = new global::ArduinoConnected(); } ArduinoConnectedMessage.MergeFrom(other.ArduinoConnectedMessage); break; case MessageOneofCase.ClientConnectedMessage: if (ClientConnectedMessage == null) { ClientConnectedMessage = new global::ClientConnected(); } ClientConnectedMessage.MergeFrom(other.ClientConnectedMessage); break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); }
public async Task <INetworkClient> AcceptNetworkClientAsync(string serverName) { var tcpClient = await Listener.AcceptTcpClientAsync(); var client = new NetworkClient("Temp", tcpClient); var stream = client.GetCommunicationStream(); while (!stream.DataAvailable) { await Task.Delay(10); } var message = MessageFactory.ReadMessage(stream); if (!(message is ClientInfoMessage clientInfoMessage)) { //Handle bad connection attempt return(null); } var returnMessage = new ClientConnectedMessage(serverName); var messageBytes = returnMessage.GetMessageBytes(); stream.Write(messageBytes, 0, messageBytes.Length); client.ClientName = clientInfoMessage.ClientName; return(client); //return new NetworkClient(clientInfoMessage.ClientName, tcpClient); }
private void BroadCastConnectionMessage(int id, String playerName) { foreach (int playerId in players.Keys) { ClientConnectedMessage cm = new ClientConnectedMessage(id, playerName, time, true); rq[playerId].AddQueueWithTimeout(cm, time); } }
private void UpdateGamesList(ClientConnectedMessage message) { Games = new List <GameModel>(); foreach (var game in message.Games) { Games.Add(new GameModel(game)); } OnPropertyChanged(nameof(Games)); }
public void OnClientConnectedMessage(NetworkConnection conn, ClientConnectedMessage message) { if (ServerUtils.CreatePlayer( conn, NetworkingLibrary.Instance.ClientConnectionPlayer.gameObject, out NetworkBehaviour client)) { _connections.Add(conn.connectionId, (CommandClient)client); } }
public override int GetHashCode() { int hash = 1; if (messageCase_ == MessageOneofCase.ArduinoConnectedMessage) { hash ^= ArduinoConnectedMessage.GetHashCode(); } if (messageCase_ == MessageOneofCase.ClientConnectedMessage) { hash ^= ClientConnectedMessage.GetHashCode(); } hash ^= (int)messageCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
private void handleConnectionConfirmation(ClientConnectedMessage ccm) { if (client.getPlayer().name.Equals(ccm.name)) { client.setTime(ccm._TimeStamp); this.client.getPlayer().id = ccm.id; } else { if (!client.getOtherPlayers().ContainsKey(ccm.id)) { GameObject go = GameObject.Instantiate(client.otherPlayersPrefab); go.tag = "serverplayer"; ServerPlayer newPlayer = go.GetComponent <ServerPlayer>(); newPlayer.id = ccm.id; newPlayer.name = ccm.name; client.getOtherPlayers().Add(ccm.id, newPlayer); } // Else ignore } client.getOutgoingMessages().Add(new AckMessage(ccm._MessageId)); }