private void NextActionMobileCaptureStackModal(ref MovePieceStepState token, PieceEV topPieceAtDestinationTile)
        {
            var captureToken = new CapturePieceStepState
            {
                PieceToCapture  = topPieceAtDestinationTile,
                PieceToMove     = token.PieceToMove,
                DestinationTile = token.DestinationTile
            };

            moveSequence.Next(this, ref captureToken, (int)MoveState.CAPTURE_STACK_MODAL);
        }
예제 #2
0
        private void NextActionCapture()
        {
            ModalEV modal                     = modalService.FindModalEV(entitiesDB);
            TileEV  destinationTile           = FindDestinationTile(modal);
            PieceEV topPieceAtDestinationTile = pieceFindService.FindTopPieceByLocation(
                destinationTile.Location.Location, entitiesDB).Value;
            PieceEV pieceToMove = FindPieceToMove(destinationTile);

            var captureToken = new CapturePieceStepState
            {
                PieceToCapture  = topPieceAtDestinationTile,
                PieceToMove     = pieceToMove,
                DestinationTile = destinationTile
            };

            captureStackModalAnswerSequence.Next(this, ref captureToken, (int)MoveState.MOBILE_CAPTURE);
        }