# OnCharacterWillAppear(int,MarkupParseResult,CancellationToken)

Method in [ActionMarkupHandler](https://docs.yarnspinner.dev/3.1/api/csharp/yarn.unity/yarn.unity.actionmarkuphandler)

## Summary

Called repeatedly for each visible character in the line.

```csharp
public abstract YarnTask OnCharacterWillAppear(int currentCharacterIndex, MarkupParseResult line, CancellationToken cancellationToken);
```

## Remarks

This method is a [ActionMarkupHandler](https://docs.yarnspinner.dev/3.1/api/csharp/yarn.unity/yarn.unity.actionmarkuphandler) object's main opportunity to take action during line display.

## Parameters

| Name                                                                                                            | Description                                                    |
| --------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
| `int` currentCharacterIndex                                                                                     | The zero-based index of the character being displayed.         |
| text                                                                                                            | A `TMPro.TMP_Text` object that the line is being displayed in. |
| `CancellationToken` cancellationToken                                                                           | A cancellation token representing whether the                  |
| [MarkupParseResult](https://docs.yarnspinner.dev/3.1/api/csharp/yarn.markup/yarn.markup.markupparseresult) line |                                                                |

## Returns

A task that completes when the [ActionMarkupHandler](https://docs.yarnspinner.dev/3.1/api/csharp/yarn.unity/yarn.unity.actionmarkuphandler) has completed presenting this character. Dialogue presenters will wait until this task is complete before displaying the remainder of the line.
