Beispiel #1
0
        public void handleMoveRequest(NetworkMessage updateMsg)
        {
            byte[]   bytes = updateMsg.reader.ReadBytesAndSize();
            BoardMsg msg   = ClientController.Deserialize <BoardMsg> (bytes);

            lastBoardMsg = msg;
            requestMove(msg);
        }
Beispiel #2
0
        public void handleBoardUpdate(NetworkMessage updateMsg)
        {
            byte[]   bytes = updateMsg.reader.ReadBytesAndSize();
            BoardMsg msg   = ClientController.Deserialize <BoardMsg> (bytes);

            if (msg.updateNumber <= currentUpdate)
            {
                return;
            }
            currentUpdate = msg.updateNumber;
            renderer.displayBoard(msg.board);
            renderer.startTimer(msg.updateNumber % 2 == 0);
        }
Beispiel #3
0
        public void requestMove(BoardMsg msg)
        {
            PlayerColor requestColor = msg.updateNumber % 2 == 0 ? PlayerColor.White : PlayerColor.Black;

            if (ClientPlayersHandler.hasLocalPlayerOfColor(requestColor))
            {
                waitingForInput = true;
                ClientPlayersHandler.onReceiveServerMsg(formatBoard(msg.requestMoveColor, msg.board), msg.requestMoveColor);
            }
            else
            {
                waitingForInput = false;
            }
        }
 public void updateBoard(int targetID, BoardMsg b)
 {
     sendMsg(b, targetID, (short)MsgType.boardUpdate);
 }
 public void requestMove(int targetID, BoardMsg b)
 {
     sendMsg(b, targetID, (short)MsgType.moveRequest);
 }