Пример #1
0
        private bool StackPiece(Node target)
        {
            //valid stack
            if (target.TopPiece.PieceColor == CurrentPlayer.Color &&
                IsValidMove(SelectedNode, target))
            {
                target.AddPieces(SelectedNode);
                SelectedNode.RemovePieces();
                LastMovedToNode = target;
                NextStage();
                return(true);
            }

            return(false);
        }
Пример #2
0
        private bool CapturePiece(Node target)
        {
            //valid capture
            if (target.TopPiece.PieceColor != CurrentPlayer.Color &&
                IsValidMove(SelectedNode, target) &&
                IsSameOrLessHeight(SelectedNode, target))
            {
                //do capture
                target.RemovePieces();
                target.AddPieces(SelectedNode);
                SelectedNode.RemovePieces();
                LastMovedToNode = target;
                NextStage();
                return(true);
            }

            return(false);
        }