> For the complete documentation index, see [llms.txt](https://docs.xshyo.us/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.xshyo.us/free-plugins/therewards/layouts.md).

# Layouts

## Layouds (Designs)

Here you can find some ready-made designs that you can use in your configuration.

```yaml
inventories:
  streak:
    rewards:
      config:
        slots: 0,9,18,27,28,29,20,11,2,3,4,13,22,31,32,33,24,15,6,7,8,17,26,35,44,53
```

<details>

<summary>Image</summary>

<img src="/files/249v8pOrOafKQp8wYubQ" alt="" data-size="original">

</details>

***

```yaml
inventories:
  streak:
    rewards:
      config:
        slots: 3,4,5,11,12,13,14,15,19,20,21,22,23,24,25,28,29,30,31,32,33,34,38,39,40,41,42,48,49,50
```

<details>

<summary>Image</summary>

<img src="/files/hT7VKK1Y6EDiLEjkAmrp" alt="" data-size="original">

</details>

***

```yaml
inventories:
  streak:
    rewards:
      config:
        slots: 18,27,36,45,46,47,38,29,20,11,2,3,4,13,22,31,40,49,50,51,42,33,24,15,6,7,8,17,26,35
```

<details>

<summary>Image</summary>

<img src="/files/qeiqzvVwtPl21iU7Lk01" alt="" data-size="original">

</details>

***

```yaml
inventories:
  streak:
    rewards:
      config:
        slots: 3,4,5,10,11,12,13,14,15,16,19,20,21,22,23,24,25,29,30,31,32,33,38,39,40,41,42,48,49,50
```

<details>

<summary>Image</summary>

<img src="/files/Bz8vTYiR3bpqVk7PCNSK" alt="" data-size="original">

</details>

***

```yaml
inventories:
  streak:
    rewards:
      config:
        slots: 1,2,4,6,7,10,11,12,13,14,15,16,20,21,22,23,24,29,30,31,32,33,39,40,41,47,48,49,50,51
```

<details>

<summary>Image</summary>

<img src="/files/HR6WwFRZnD3em1JUUnjI" alt="" data-size="original">

</details>

## Create PlayTime and Streak Rewards

In this guide, you'll learn how to configure rewards for the **PlayTime** (time played) and **Streak** (login streak) menus within the **TheRewards** plugin.

### 🎯 Goal

Set up visual and interactive rewards for players based on:

* Time connected to the server (**PlayTime**)
* Daily login streak (**Streak**)

### 📁 Configuration Structure

Rewards are defined inside the `layouts.yml` file, specifically in the sections:

* `inventories.streak.rewards.days`
* `inventories.playtime.rewards.times`

### 🧱 Configure Streak Rewards

#### ➕ Add a new day

```yaml
- day: 1
  rewards:
    name: |
      &7
      &7&8● &fDaily Reward
      &7
    actions:
      - '[command] give {player} minecraft:diamond 1'
      - '[message] &a✔ You have claimed the daily reward for logging in {day} consecutive day(s)'
    requirements:
      - placeholder: "%statistic_hours_played%"
        condition: ">="
        value: "5"
        success: "#4FFD4A ✔ Enough playtime. &7[Completed]"
        fail: "#FC3A3A ✖ You need to play at least 5 hours. &7[Not Completed]"
```

#### 📌 Important Fields

* `day`: Streak day number.
* `actions`: List of commands or messages to execute upon claiming.
* `requirements`: Optional conditions using placeholders.\
  You can omit the `requirements` section if no extra conditions are needed.

### ⏱️ Configure PlayTime Rewards

#### ➕ Add a new playtime reward

```yaml
- play-minutes: 60 # 1 Hour
  rewards:
    name: "&8● &fPlayed 1 Hour"
    actions:
      - '[command] give {player} minecraft:diamond 1'
      - '[message] &a✔ You have claimed the playtime {time}.'
    requirements:
      - placeholder: "%statistic_hours_played%"
        condition: ">="
        value: "5"
        success: "#4FFD4A ✔ Enough playtime. &7[Completed]"
        fail: "#FC3A3A ✖ You need to play at least 5 hours. &7[Not Completed]"
```

#### 📌 Important Fields

* `play-minutes`: Number of minutes required to claim the reward.
* `actions`: List of commands and messages to execute.
* `requirements`: Optional conditions using placeholders.\
  You can add as many reward blocks as you like—just make sure `play-minutes` is an integer greater than the previous one.

### 🎨 Visual Customization

Items in the menu are auto-generated, but you can customize their appearance from:

* `items.available`
* `items.waiting`
* `items.claimed`
* `items.unavailable`

In those sections, you can modify:

* `material`
* `display_name`
* `lore`
* `model_data`
* Custom textures using `basehead-<encoded_value>`

> ℹ️ More info: See the "[Material](/general/items-or-custom-items.md#item-or-material)" section on the wiki.

### 📎 Supported Actions

* `[command]`: Runs a command (you can use `{player}` for the player's name).
* `[message]`: Sends a message to the player.
* `[openmenu]`: Opens another TheRewards menu.
* `[close]`: Closes the menu.

> ℹ️ More info: See the "[Actions](/free-plugins/therewards/reward.md#actions-on-claim)" section on the wiki.
