# Options

## Command

Plugin manages **2** main commands `Voting` and `VotingAdmin`. Each command can have aliases.

{% hint style="info" %}
Alias is a command, which invokes the same action as the main command.
{% endhint %}

TabCompletion

* Include parameter name(in format \<parameter\_name>) at tab completing for custom VotingUnits.

```yaml
Options:
  Command:
    Voting:
      Aliases:
        - "vot"
    VotingAdmin:
      Aliases:
        - "votadmin"
    TabCompletion:
      IncludeParameterFormat: true
```

## Economy

By enabling economy, you can charge players for placing a vote or starting a voting round.

Plugin supports **more** Economy providers e.g. `Vault`, `PlayerPoints` and `Experiences`.\
If you want to use any one of it, at first, you need to enable it!

{% hint style="warning" %}
There is required that enabled providers are also installed on the server!
{% endhint %}

{% hint style="info" %}
Experiences does not require any additional plugin! Player's current experiences are used here.
{% endhint %}

### **Types used in configuration file**

* `VAULT_WRAPPER`
* `PLAYER_POINTS`
* `EXPERIENCE`
* `TOKEN_MANAGER`

```yaml
Options:
  Economy:
    Active: false
    Type: "NONE"
```

## Round

In this section you can configure core of the plugin. **Duration** of the round, **minimum count of players** required to start the round. And much more.

```yaml
Options:
  Round:
    Duration: 60
    MinPlayers: 2
```

### **Pause**

There are **2** types of pauses, which prevents to start next round immediately after one round has ended.

**Explanation of types**

* **Global** - No one will be able to start a round until pause ends.
* **Personal** - In short, you can configure, that player will be able to start round only once in a 15 minutes.

{% hint style="info" %}
**Personal pause** is not applied when player wants to place a vote!
{% endhint %}

```yaml
Options:
  Round:
    Pause:
      Global:
        Active: true
        Duration: 10
        CategoryList:
          DAY_LIGHT:
            Duration: 300
          CLIMATE:
            Duration: 10
      Personal:
        Active: true
        Duration: 300
```

#### **Independent Pause**

VotingUnit can be assigned to pause category, if so, pause is applied only to group of VotingUnits with the same category, while another voting round can be started.

{% hint style="warning" %}
Assignment of category to VotingUnit is performed in VotingUnits.yml file.
{% endhint %}

**Example**

VotingUnits DAY and NIGHT are assigned to PauseCategory DAY\_LIGHT, where duration of pause is set to 300 seconds.

Other VotingUnits(SUN/STORM/RAIN) are not assigned to any PauseCategory, that means, they inherit default global pause duration, 10 seconds.

While pause from DAY\_LIGHT category is running I am not able to start next DAY/NIGHT voting round. But I can start SUN/STORM/RAIN voting round, because the are assigned to default/other category.

### **Animation**

At changing **time** in a world you can use smoothy animation. Sun or Moon is moving across the sky so it looks like it has speed up the time.

You can specify speed of the animation. Available range is **<50;750>**

{% hint style="info" %}
Speed **100** means that time change from **0** to **23999** takes **12** seconds.
{% endhint %}

```yaml
Options:
  Round:
    TimeChangeAnimation:
      Speed: 100
```

{% hint style="warning" %}
This feature is only available for **Weather** units.
{% endhint %}

### **Confirmation**

You can require additional confirmation that the round will start. Special GUI is opened.

```yaml
Options:
  Round:
    Confirmation:
      Active: false
```

## Visual

Section represents components displayed at chat, boss bars and titles.

### Boss Bar

Players are able to see current information about running round.

```yaml
Options:
  Visual:
    BossBar:
      Active: true
      Color: "PURPLE"
      Style: "SEGMENTED_20"
```

#### Available colors

`PINK`, `BLUE`, `RED`, `GREEN`, `YELLOW`, `PURPLE`, `WHITE`

#### Available styles

`SOLID`, `SEGMENTED_6`, `SEGMENTED_10`, `SEGMENTED_12`, `SEGMENTED_20`

### **ActionBar**

Via **ActionBar** players are able to see current result of running round.\
Result is shown in percentual ratio and you can define colors of its possitive, resp. negative part. Also you can define **char** and **count** of these chars shown in ratio.

```yaml
Options:
  Visual:
    ActionBar:
      Active: true
      Progress:
        Char: "\u25CF"
        Count: 10
        Color:
          Positive: "&a"
          Negative: "&c"
```

### Information intervals

Information can be displayed in specified **intervals** and these itervals are mainly associtated with **BossBar** and **ActionBar**.

Imagine interval in math, but reversed because of countdown which is decresing.

\
If we want to display BossBar since **30** seconds to **10** seconds, we use interval `30:11`(`FROM:TO+1`). Plus **1** because of we want to hide BossBar in 10 seconds. (If we keep 10 seconds in the interval, BossBar will be hidden in 9 seconds.)

```yaml
Options:
  Visual:
    Info:
      Active: true
      Interval:
       - "60:56"
       - "10:1"
```
