# LineProviderBehaviour

Class in [Yarn.Unity](https://docs.yarnspinner.dev/api/csharp/yarn.unity)

Inherits from `UnityEngine.MonoBehaviour`

## Summary

A `UnityEngine.MonoBehaviour` that produces [LocalizedLine](https://docs.yarnspinner.dev/api/csharp/yarn.unity/yarn.unity.localizedline) s, for use in Dialogue Presenters.

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

## Remarks

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

## Methods

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

## Properties

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