# RunOptionsAsync(DialogueOption\[],LineCancellationToken)

Method in [OptionsPresenter](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.optionspresenter)

## Summary

Called by a [DialogueRunner](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.dialoguerunner) to display a collection of options to the user.

```csharp
public override async YarnTask<DialogueOption?> RunOptionsAsync(DialogueOption[] dialogueOptions, LineCancellationToken cancellationToken)
```

## Parameters

| Name                                                                                                                                      | Description                                                                                                                                         |
| ----------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------- |
| [Yarn.Unity.DialogueOption\[\]](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.dialogueoption) dialogueOptions             | The set of options that should be displayed to the user.                                                                                            |
| [Yarn.Unity.LineCancellationToken](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.linecancellationtoken) cancellationToken | A `System.Threading.CancellationToken` that becomes cancelled when the dialogue runner no longer needs this dialogue presenter to return an option. |

## Returns

A task that indicates which option was selected, or that this dialogue presenter did not select an option.
