private void RoomUpdateProc(RoomInfo roomInfo) { string _data = ""; _data += roomInfo.roomNumber.ToString() + " "; _data += roomInfo.totalNumber.ToString() + " "; _data += roomInfo.maximumNumber.ToString() + " "; if (roomInfo.isPublic) _data += "t "; else _data += "f "; foreach (Player _player in roomInfo.users.Values) { if (true /*_player.id != null*/) { _data += _player.id + " "; } } Console.WriteLine(_data); foreach (Socket _client in roomInfo.users.Keys) { if (_client != null) { SendDataToClient((byte)101, Encoding.Unicode.GetBytes(_data), _client); } } }
private void RoomCreateProc(byte[] data, Socket client) { string _tempString = Encoding.Unicode.GetString(data); int maximumNumber = 4; bool isPublic; if (_tempString.Equals("t")) isPublic = true; else isPublic = false; RoomInfo roomInfo = new RoomInfo(client, clientSet[client].id, maximumNumber, isPublic); roomSet.Add(roomInfo); string _data = "s "; if (roomInfo.isPublic) _data += "t"; else _data += "f"; //SendDataToClient((byte)99, Encoding.Unicode.GetBytes(_data), client); clientSet[client] = new User(clientSet[client].id, ClientState.ONROOM); RoomUpdateProc(roomInfo); }