public void Write(Protocol protocol) { if (protocol.Mode != ProtocolMode.read) { client.Write(protocol); } }
void OnClientReady(CustomDataClient <ClientData> client) { pendingClientsMutex.WaitOne(); if (!pendingClients.Contains(client)) { pendingClients.Add(client); } pendingClientsMutex.ReleaseMutex(); client.Write(new Message(0, "Waiting for oponnent...")); Console.WriteLine(client.data.username + " is ready"); }
void OnDisconnect(Client client, string message) { if (((ClientData)client.data).id == playerA.data.id) { playerB.Write(new GameEnd(playerB.data.id, "Opponent disconnected.")); EndGame(playerB); } else { playerA.Write(new GameEnd(playerA.data.id, "Opponent disconnected.")); EndGame(playerA); } }
public Game(CustomDataClient <ClientData> playerA, CustomDataClient <ClientData> playerB) { this.playerA = playerA; this.playerB = playerB; playerA.onDisconnect += OnDisconnect; playerB.onDisconnect += OnDisconnect; board = new uint[9]; GameMove.onGameMove += RegisterMove; Forfeit.onForfeit += OnForfeit; playerA.Write(new GameStart(playerB.data, true)); playerB.Write(new GameStart(playerA.data, false)); }
public void Login() { client.Write(new Connection(username.text, password.text)); Debug.Log("Attempting login with username: "******" and password: " + password.text); }