Beispiel #1
0
    private void HandleNetworkGamePieceMoveEvent(NetworkGamePieceMoveEventArgs args)
    {
        if (m_ActiveGamePieces.ContainsKey(args.PieceNetworkId))
        {
            GamePiece piece = m_ActiveGamePieces[args.PieceNetworkId];

            GameBoardTile destinationTile = m_GameBoardRelative
                                            .GetTileByVector(new Vector2(args.DestinationX, args.DestinationY));

            piece.InitializePathTravel
                (PathHandler.DeterminePath(m_GameBoardRelative, piece.BoardVector, destinationTile));
        }
    }
Beispiel #2
0
    void SendFocusUnitToTile(GameBoardTile destinationTile)
    {
        if (!m_CurrentFocusPiece.IsActivelyEngaged)
        {
            m_GameBoardRelative.ClearCurrentSelections();

            if (MatchHandler.CurrentMatch != null)
            {
                m_InitializedPieceMovement = true;
                ClientManager.Instance.SendNetworkPieceMovementCommand
                    (MatchHandler.CurrentMatch.MatchIdentity, m_CurrentFocusPiece.NetworkIdentity, destinationTile.BoardVector);
            }

            else
            {
                m_CurrentFocusPiece.InitializePathTravel
                    (PathHandler.DeterminePath(m_GameBoardRelative, m_CurrentFocusPiece.BoardVector, destinationTile));
            }
        }
    }