using System; using System.Net; using System.Net.Sockets; using System.IO; using System.Threading; namespace TestClient { public class GameClient { private StreamReader reader; private StreamWriter writer; private int clientID; public GameClient() { TcpClient socketForServer; try { Int32 port = 10; socketForServer = new TcpClient("127.0.0.1", port); } catch { Console.WriteLine("Failed to connect to server at {0}:999", "127.0.0.1"); return; } NetworkStream networkStream = socketForServer.GetStream(); reader = new System.IO.StreamReader(networkStream); writer = new System.IO.StreamWriter(networkStream); Thread thread = new Thread(new ThreadStart(this.runClientThread)); thread.Start(); } public void runClientThread() { // read/write data from/to the server and display it string outputString; Boolean gameOver = false; Console.WriteLine("Game client listening"); while (!gameOver) { outputString = reader.ReadLine(); Console.WriteLine("Client: " + outputString); if (outputString.Equals("win")) gameOver = true; } // tidy up Console.WriteLine("Client closing down"); } static void Main(string[] args) { GameClient gc = new GameClient(); } } }