# Options

## Season duration

Range of days, while module is active.

```yaml
Options:
  Season:
    StartDateTime: "01.12.2023 00:00" #The datetime when the season starts.
    GapDateTime: "24.12.2023 00:00" #The datetime when the sending mode is turned to reading mode.
    EndDateTime: "31.12.2023 23:59" #The datetime when the season ends.
```

{% hint style="warning" %}
Before and after this season, players won't be able to interact with Figure.
{% endhint %}

## MailBox

When player wants to send a surprise to his friennd, he needs to create **MailBox**.

{% hint style="warning" %}
Capacity of MailBoxes is limited.
{% endhint %}

```yaml
Options:
  MailBox:
    Capacity:
      Default: 9
```

### Extend capacity

By permissions, you can extend capacity of MailBoxes for player.

Simply create `KEY` and assign it value.

```yaml
Options:
  MailBox:
    Capacity:
      Extension:
        PRINCE: 3
        KING: 9
```

{% hint style="info" %}
Default + Extension = Total Capacity
{% endhint %}

#### Example

Extension with key `VIP_GOLD` extends capacity by `5`. In configuration file, it will look like this:

<pre class="language-yaml"><code class="lang-yaml">Options:
<strong>  MailBox:
</strong>    Capacity:
      Extension:
        VIP_GOLD: 5
</code></pre>

Player with permission `ChristmasMail.MailBox.Capacity.VIP_GOLD` can create **14** MailBoxes. (9 as Default + 5 by extension)

{% hint style="warning" %}
At applying more permissions on the player, only permission with highest value will be used!
{% endhint %}

## Vulgarism filter <a href="#vulgarism-filter" id="vulgarism-filter"></a>

Christmas time is about **peace** and **calm**, why to send inappropriate messages in wishes?

To handle vulgarisms in wishes, you need to put inappropriate words into specific file. One word has to be on separated line.

{% hint style="info" %}
If file `InappropriateBehaviour.txt` does not exist, please create one in ChristmasMail folder.
{% endhint %}

## Restriction

You can disable performing some actions while using the resource.

```yaml
Options:
  Restriction:
    World:
      - world_the_end
      - world_nether
      - SomeAnotherRestrictedWrold
```

If you want to allow all worlds, you need to set **Empty Collections(`[]`)** here!

```yaml
Options:
  Restriction:
    World: []
```

## Figure (Elf)

Via **Figure**, players are able to open Christmas Mail. Elf also displays current status of the season.

System offers pre-defined **Armor Stand**, with clothes and head. All values can be changed in the configuration file. System also supports **NPC**, you can aslo equip it with armor or items.

{% hint style="warning" %}
Warning at placing the Figure. Figure copies your locations and also facing direction!
{% endhint %}

{% hint style="info" %}
To place Assistant type: `/ChristmasMail Figure Place`
{% endhint %}

If you have own Armor Stand, you can link it with Advent Figure. It only creates Holograms above the Armor Stand.

{% hint style="info" %}
To link Elf with the nearest Armor Stand in your range type: `/ChristmasMail Figure Link`
{% endhint %}

### Mode

List of modes mentioned above:

* NONE
* ARMOR\_STAND
* PLAYER
* HOLOGRAM

```yaml
Options:
  Figure:
    Mode: "ARMOR_STAND"
```

### Particle

Particles are spawning around the spawned Figure. You can keep them active or disable them. Also you can change Effect, Color, Speed and Amount.

```yaml
Options:
  Figure:
    Particle:
      Active: true
      TickDelay: 13 #How fast particles are spawned. (20 ticks = 1 second)
      Data:
        Effect: SPELL_WITCH
        Amount: 35
        Speed: 1.0 #Optional, Default 1.0
        Color: "255:255:255" #Optional, Default White
        Offest: #Optional, Offset from Figures's location. (Vector)
          X: .5
          Y: .5
          Z: .5
```
