Beispiel #1
0
        /// <summary>
        ///		Mueve la pieza a una fila / columna
        /// </summary>
        private void Move(ActionMoveModel action)
        {
            PieceBaseModel piece = GetPiece(action.Type, action.Color, action.From);

            // Mueve la pieza
            piece.Cell    = action.To;
            piece.IsMoved = true;
        }
        /// <summary>
        ///		Obtiene el movimiento para deshacer el movimiento de una pieza
        /// </summary>
        private ActionViewMovement GetActionUndoMovePiece(ActionMoveModel action)
        {
            Figure piece = SearchPiece(action.Type, action.Color, action.To);

            // Cambia la posición de la pieza
            if (piece.Type != null)
            {
                return(new ActionViewMovement(ActionViewMovement.ActionType.Move, piece, action.From.Row, action.From.Column));
            }
            else
            {
                return(null);
            }
        }
        /// <summary>
        ///		Obtiene una acción para mover una pieza
        /// </summary>
        private ActionViewMovement GetActionMovePiece(ActionMoveModel action)
        {
            Figure piece = SearchPiece(action.Type, action.Color, action.From);

            // Obtiene el movimiento
            if (piece.Type != null)
            {
                return(new ActionViewMovement(ActionViewMovement.ActionType.Move, piece, action.To.Row, action.To.Column));
            }
            else
            {
                return(null);
            }
        }