> For the complete documentation index, see [llms.txt](https://docs.yarnspinner.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.yarnspinner.dev/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour.md).

# LineProviderBehaviour

Class in [Yarn.Unity](/3.1/api/csharp/yarn.unity.md)

Inherits from `UnityEngine.MonoBehaviour`

## Summary

A `UnityEngine.MonoBehaviour` that produces [LocalizedLine](/3.1/api/csharp/yarn.unity/yarn.unity.localizedline.md) s, for use in Dialogue Presenters.

```csharp
public abstract class LineProviderBehaviour : MonoBehaviour, ILineProvider
```

## Remarks

[DialogueRunner](/3.1/api/csharp/yarn.unity/yarn.unity.dialoguerunner.md) s use a [LineProviderBehaviour](/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour.md) to get [LocalizedLine](/3.1/api/csharp/yarn.unity/yarn.unity.localizedline.md) s, which contain the localized information that is presented to the player through dialogue presenters.

## Methods

| Name                                                                                                                                                                                 | Description                                                                                                                                                   |
| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [DeregisterMarkerProcessor(string)](/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour/yarn.unity.lineproviderbehaviour.deregistermarkerprocessor.md)                       | Removes all marker processors that handle markers named `attributeName` .                                                                                     |
| [GetLocalizedLineAsync(Line,CancellationToken)](/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour/yarn.unity.lineproviderbehaviour.getlocalizedlineasync.md)               | Prepares and returns a [LocalizedLine](/3.1/api/csharp/yarn.unity/yarn.unity.localizedline.md) from the specified [Line](/3.1/api/csharp/yarn/yarn.line.md) . |
| [PrepareForLinesAsync(IEnumerable,CancellationToken)](/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour/yarn.unity.lineproviderbehaviour.prepareforlinesasync.md)          | Signals to the line provider that lines with the provided line IDs may be presented shortly.                                                                  |
| [RegisterMarkerProcessor(string,IAttributeMarkerProcessor)](/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour/yarn.unity.lineproviderbehaviour.registermarkerprocessor.md) | Adds a new marker processor to the line provider.                                                                                                             |
| [Start()](/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour/yarn.unity.lineproviderbehaviour.start.md)                                                                     | Called by Unity when the [LineProviderBehaviour](/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour.md) has first appeared in the scene.             |

## Properties

| Name                                                                                                                       | Description                                                                                                                                                |
| -------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- |
| [LocaleCode](/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour/yarn.unity.lineproviderbehaviour.localecode.md)   | Gets the line provider's current locale identifier, as a BCP-47 code.                                                                                      |
| [YarnProject](/3.1/api/csharp/yarn.unity/yarn.unity.lineproviderbehaviour/yarn.unity.lineproviderbehaviour.yarnproject.md) | The [YarnProject](/3.1/api/csharp/yarn.unity/yarn.unity.ilineprovider/yarn.unity.ilineprovider.yarnproject.md) that contains the localized data for lines. |
