> For the complete documentation index, see [llms.txt](https://man572142s-organization.gitbook.io/broaudio/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://man572142s-organization.gitbook.io/broaudio/reference/api-documentation.md).

# Scripting API

### The Method Chaining design

BroAudio utilizes the Method Chaining design, just like the [System.Linq in C#](https://learn.microsoft.com/en-us/dotnet/csharp/linq/get-started/write-linq-queries), you can chain one method with another method, adding behaviors and settings in just one line of code. For example:

```csharp
BroAudio.Play(_sound).AsBGM().SetTransition(Transition.CrossFade).SetVolume(0.8f);
```

More Information in the Class/[BroAudio](/broaudio/reference/api-documentation/class/broaudio.md), and Interface/[IAudioPlayer](/broaudio/reference/api-documentation/interface/iaudioplayer.md) section.

### Page Links

{% content-ref url="/pages/9EAbQuPodOUzgKNwLllU" %}
[Class](/broaudio/reference/api-documentation/class.md)
{% endcontent-ref %}

{% content-ref url="/pages/sp7JOw3NFjzn57SaVF96" %}
[Interface](/broaudio/reference/api-documentation/interface.md)
{% endcontent-ref %}

{% content-ref url="/pages/UKv2HRSh5nIj0BJWutCF" %}
[Struct](/broaudio/reference/api-documentation/struct.md)
{% endcontent-ref %}

{% content-ref url="/pages/TKfP0B5H8NE1EF2dPCVb" %}
[Enums](/broaudio/reference/api-documentation/enums.md)
{% endcontent-ref %}
