Configuring

Menus

/homes, /warps, /kits, /restore and /kitedit open a clickable screen rather than printing a line of names.

There are two files behind them. What the screen is made of is in the module file; what the screen says is in menus.yml.

The shape of a screen#

# modules/homes.yml
homes:
  menu:
    enabled: true
    rows: 3
    icon: LIME_BED
    filler: ''
    navigation-filler: GRAY_STAINED_GLASS_PANE
    previous-page: ARROW
    next-page: ARROW
    close: BARRIER
Key What it does
enabled false goes back to the written list.
rows 2 to 6. The bottom row is always navigation, so 3 rows shows 18 entries a page.
icon The item each entry is shown as. Homes can override it per home with /homeicon; warps with /warpset <warp> icon.
filler Fills the empty part of the content area. Empty for a plain window.
navigation-filler Fills the bottom row around the buttons, to set it apart.
previous-page / next-page / close The three buttons.

Because the bottom row is always navigation, nothing ever moves under the cursor between pages. That is worth keeping if you change the rows.

The same block appears in modules/warps.yml (icon ENDER_PEARL), modules/kits.yml (icon CHEST) and modules/items.yml under backups.menu (six rows, no icon setting — each entry is the head of whoever it belongs to).

What the screen says#

menus.yml has a block per screen, so the homes grid and the warps grid can say entirely different things.

menu:
  buttons:              # the navigation strip, shared by every paged screen
    previous: '<color:#c9a227>« Previous'
    next: '<color:#c9a227>Next »'
    close: '<color:#b03a3a>✖ Close'
    back: '<color:#c9a227>« Back'

  homes:
    title: '» YOUR HOMES « %page%/%pages%'
    entry: '%home%'
    lore-world: '<dark_gray><gray>World <dark_gray>» <white>%world%'
    lore-position: '<dark_gray><gray>Position <dark_gray>» <white>%x%, %y%, %z%'
    lore-created: '<dark_gray><gray>Made <dark_gray>» <white>%date%'
    lore-action: '<color:#3f9e4d><gray>Click to teleport'

The blocks:

Block Screen
menu.buttons The navigation strip on every paged screen
menu.homes /homes
menu.warps /warps, including the sections screen
menu.kits /kits
menu.backups /restore, the list and the laid-out inventory
menu.shops The four lines a chest shop sign shows
menu.titles /trash, /invsee, /ecsee
menu.editor The whole of /kitedit, chat prompts included

Anything starting with menu. is in menus.yml. Everything else is in messages.yml.

Colours work exactly as they do in messages — see Messages and colours. <newline> inside a lore line makes it several lines, which is how the long explanatory tooltips in /restore are written.

Warp sections#

/warps opens a screen of sections when any warp has one, and the warps inside a section one click further in. A warp with no section lands in a group named by menu.warps.section-loose, which ships as Other.

/warpset shop section Towns
/warpset pvp section Events

That is how twenty warps stay readable. With no sections set, /warps is a single paged grid.

The chest shop sign#

The four lines a [Shop] sign shows once it is made are in menu.shops:

  shops:
    sign-owner: '<color:#1f7a3f>%player%'
    sign-selling: '<color:#1a1a1a>Selling <color:#333333>%amount%'
    sign-buying: '<color:#1a1a1a>Buying <color:#333333>%amount%'
    sign-item: '<color:#333333>%item%'
    sign-price: '<color:#8a5a1f>%price% <color:#1a1a1a>each'

Changing these and running /chorus reload does not rewrite the signs already standing; each one rewrites itself the next time its chunk loads.

The kit editor#

menu.editor holds both halves of /kitedit: the buttons on the screen and the questions it asks in chat.

    ask-cooldown: '%prefix%<gray>Type the wait for <white>%kit%</white>, in seconds.'
    icon: '<color:#c9a227>✎ Icon'
    icon-lore: '<dark_gray><gray>Now <dark_gray>» <white>%icon%'

Which item each button is made of is in modules/kits.yml under kits.editor — see Kits.

Screens that are not configurable#

/invsee, /ecsee and /trash are the player's own inventory laid out, so there is nothing to theme but the title (menu.titles) and, for /invsee, the filler (utility.invsee.filler).