> For the complete documentation index, see [llms.txt](https://edseries-plugins.gitbook.io/p/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://edseries-plugins.gitbook.io/p/pinnaduels/setting-up/menus.md).

# Menus (GUIs)

The menus are regular PinnaPrison GUIs in `plugins/PinnaPrison/guis/pinnaduels/`. They are written once (when missing) and then they are yours: edit layout, items, texts and sounds freely. They reload with PinnaPrison's own GUI reload. Delete a file and restart to get the default back.

| File                | Opens with      |                                                                                                                    |
| ------------------- | --------------- | ------------------------------------------------------------------------------------------------------------------ |
| `duels.yml`         | `/duel`         | main menu: profile (your head), ranked duel, ranked top, leagues, live duels, friendly duels, how it works, season |
| `duels-active.yml`  | `/duel active`  | live duels, click to spectate                                                                                      |
| `duels-top.yml`     | `/duel top`     | podium for the top 3 and the ranking from #4                                                                       |
| `duels-leagues.yml` | `/duel leagues` | every league with its requirement and your status                                                                  |

## PinnaDuels item types (`custom-item: {type: ...}`)

| Type                 | Does                                                                                                                                                                                            |
| -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pinnaduels-queue`   | joins / leaves the queue. Shows `queued-item` while queued and `no-tokens-item` without tokens. Its stack size is the queue size (`queue-amount: false` turns that off). Extra token `{waited}` |
| `pinnaduels-profile` | your stats; a PLAYER\_HEAD gets your skin                                                                                                                                                       |
| `pinnaduels-season`  | any info item with every token                                                                                                                                                                  |
| `pinnaduels-button`  | `gui: <id>` opens a menu, `command: <cmd>` runs a command as the player; `viewer-head: true` gives a PLAYER\_HEAD your skin                                                                     |
| `pinnaduels-empty`   | only shown while a list is empty: `list: active` (no duels) or `list: top` (nobody ranked); takes `gui` / `command` too                                                                         |
| `pinnaduels-podium`  | one ranking place, `position: N`; same tokens as the top entries, optional `empty-item` while nobody holds it                                                                                   |

Every PinnaDuels item can use these tokens:

* profile: `{player} {elo} {peak} {league} {icon} {league-item} {position} {wins} {losses} {draws} {played} {winrate} {streak} {best-streak} {placement} {weekly} {weekly-max} {tokens} {tokens-max} {next-token} {token-percent} {token-bar}`
* season: `{season} {season-left} {active} {queue} {duration} {blocks-per-token} {placement-matches} {top-1-name} {top-1-elo} {top-2-name} {top-2-elo} {top-3-name} {top-3-elo}`

## Lists (`pagination.source`)

| Source               | Entry tokens                                                                                                              | Options                                       |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------- |
| `pinnaduels-active`  | `{a} {b} {a-score} {b-score} {a-elo} {b-elo} {time} {type} {state} {arena} {spectators}`; a PLAYER\_HEAD shows side A     |                                               |
| `pinnaduels-top`     | `{rank} {name} {elo} {league} {icon} {wins} {losses} {winrate} {you}`; PLAYER\_HEAD entries show the player's skin        | `limit`, `skip` (leave out the podium places) |
| `pinnaduels-leagues` | `{id} {name} {icon} {material} {min-elo} {top} {requirement} {status} {players} {rewards}` (use `material: '{material}'`) | `reverse`                                     |

PlaceholderAPI placeholders work in every menu too.

## Resource-pack menus

Background pictures in the title, your own button icons, tooltip frames and live numbers written with your own digits (`title-glyphs` and the `_glyphs` placeholders): see [Custom Textures & Resource-Pack Menus](/p/pinnaduels/setting-up/custom-textures.md).
