Exemple #1
0
        void StartServer()
        {
            if (client == null)
            {
                client = new NetworkClient();
                client.RegisterHandler(MsgType.Connect, OnConnect);
                client.RegisterHandler(MsgType.Disconnect, OnDisconnect);
                client.RegisterHandler(AlgorithmMessage.GetCustomMsgType(), OnAlgorithm);
                client.RegisterHandler(AlgorithmRespectMessage.GetCustomMsgType(), OnAlgorithmRespect);
                client.RegisterHandler(PlayerInformationMessage.GetCustomMsgType(), OnPlayerInformation);
                client.RegisterHandler(PlayerPaintTileMessage.GetCustomMsgType(), OnPlayerPaintTile);
                client.RegisterHandler(PaintingColorMessage.GetCustomMsgType(), OnPaintingColor);
                client.RegisterHandler(PlayerPositionMessage.GetCustomMsgType(), OnPlayerPosition);
                client.RegisterHandler(PlayerReachedTheEndMessage.GetCustomMsgType(), OnPlayerReachedTheEnd);
                client.RegisterHandler(PlayerRotationMessage.GetCustomMsgType(), OnPlayerRotation);
                client.RegisterHandler(PlayerTilesToPaintMessage.GetCustomMsgType(), OnPlayerTilesToPaint);

                client.RegisterHandler(ForwardDirecMessage.GetCustomMsgType(), OnForwardDirReceive);


                client.RegisterHandler(ScannedDistanceMessage.GetCustomMsgType(), OnScannedDistance);
                client.RegisterHandler(CompassRotationMessage.GetCustomMsgType(), OnCompassRotation);

                //client.RegisterHandler(ReturnToDivergencePointAnswerMessage.GetCustomMsgType(), OnReturnToDivergencePointAnswer);

                client.Connect(pairedIpAdress.Value, serverPort);
            }
            else
            {
                Client.Instance.State.Value = ClientGameState.Ready;
            }
        }
Exemple #2
0
        void SendPlayerPaintTile(Tile tile)
        {
            PlayerPaintTileMessage msg = new PlayerPaintTileMessage();

            msg.tilePositionX = controls.PlayerPaintTile.Value.Position.x;
            msg.tilePositionY = controls.PlayerPaintTile.Value.Position.y;
            msg.tileColor     = controls.PlayerPaintTile.Value.Color;

            clientConnection.Send(msg.GetMsgType(), msg);
        }
Exemple #3
0
        void OnPlayerPaintTile(NetworkMessage netMsg)
        {
            PlayerPaintTileMessage msg = netMsg.ReadMessage <PlayerPaintTileMessage>();
            var previousTile           = controls.PlayerPaintTile.Value;

            previousTile.Color             = msg.tileColor;
            previousTile.x                 = msg.tilePositionX;
            previousTile.y                 = msg.tilePositionY;
            controls.PlayerPaintTile.Value = previousTile;
        }