Key-Value List Mask
This mask is similar to Button Paginated Mask, but you can specify a list of map-like values and display each of them as a Button.
Format
mask-name:
mask: key-value-list
slot: <slot>
cycle: <true/false>
signal: <signal>
value-update: 20
viewer-update: 0
viewer-condition:
- condition1
- condition2
- condition3
value:
- key1: value1
key2: value2
key3: value3
- key1: value11
key2: value12
key3: value13
- key1: value21
key2: value22
key3: value23
button:
<button-settings>Note
cycle: Whether the buttons should cycle when you reach the end of the page. If this is set totrue, then when you reach the end of the page, it will go back to the first page. If this is set tofalse, then when you reach the end of the page, it will stop at the last page.signal: The signal name used by actions to change the page.viewer-condition: The list of Condition Requirement that the viewer must meet to see the button.value: The list of map-like valuesbutton: The Button to be displayed for each values.value-update: The ticks to wait before the value list is refreshed.viewer-update: The ticks to wait before the “passed” value list from the viewer view is refreshed.
Action
next-page: <signal>: Changes the page to the next page.previous-page: <signal>: Changes the page to the previous page.set-page(<signal>): <page>: Changes the page to<page>.
Variable
- On
button, you can use a key to get the value from thevaluelist by using the variable{key_<name>} - For examples: With this
valuelist
value:
- material: red_stained_glass_pane
name: "Button 1"
- material: green_stained_glass_pane
name: "Button 2"- You can use
{key_material}to get thematerialpart of the value - You can use
{key_name}to get thenamepart of the value
Example
# The paginated mask
demo-slot:
mask: key-value-list
slot: 1-7
cycle: false
signal: demo-page-signal # This is the signal name used by actions to change the page.
value:
- material: red_stained_glass_pane
name: Button 1
- material: green_stained_glass_pane
name: Button 2
- material: blue_stained_glass_pane
name: Button 3
- material: yellow_stained_glass_pane
name: Button 4
- material: purple_stained_glass_pane
name: Button 5
- material: orange_stained_glass_pane
name: Button 6
- material: pink_stained_glass_pane
name: Button 7
- material: black_stained_glass_pane
name: Button 8
- material: white_stained_glass_pane
name: Button 9
- material: gray_stained_glass_pane
name: Button 10
- material: light_gray_stained_glass_pane
name: Button 11
button:
id: "{key_material}"
name: "&c&l{key_name}"
# The button to go to the previous page
previous-button:
slot: 0
id: arrow
name: "&c&lPrevious"
command: "previous-page: demo-page-signal" # The action to change the page
# The button to go to the next page
next-button:
slot: 8
id: arrow
name: "&a&lNext"
command: "next-page: demo-page-signal" # The action to change the page