跳到主要内容

组件

所有显示和交互元素均在components中定义。

每个组件都必须包含一个唯一标识名,必须定义组件的类型,例如type: text

对话框组件遵循三段式布局

  1. 文本和物品组件始终位于顶部。
  2. 输入组件(如输入框、单选按钮、滑块、复选框)位于中部。
  3. 按钮位于底部。

所有组件均严格遵循此“上-中-下”的类型分组布局。你可以在layout中自定义每块区域内的组件顺序。

支持的组件类型

类型描述顺序位置
文本支持格式化的简单文本标签
物品带有文本的物品图标
输入可自由输入的文本框
单选按钮按钮形式的下拉菜单选项
滑条滑条形式的数值选择
复选框切换开关(true/false)
按钮可点击触发操作的按钮

表单行为与显示机制

  • layout控制组件的横向排序(从左到右)。
  • 列于同一序号键下的组件,仅显示其中一个(按照从上到下的顺序检查条件,显示第一个符合条件的组件)。
  • columns决定每行能显示多少元素。

所有用户输入的值都会保存在%commandpanels_session_<组件名称>%形式的占位符中。示例:

  • 如果你的组件是inp0,使用%commandpanels_session_inp0%来获取值。
用按钮执行命令

只有按钮才能执行命令操作。输入组件仅作为数据源,将值写入临时会话数据中。你可以在按钮设置的命令中,使用面板内其他输入组件的会话数据来构造动态命令。

组件配置

每个组件都是独立的配置架构。大多数配置项如果未在面板中定义,则使用默认值。

显示文本

显示正文或标准文本。可根据需要定义多个文本块。

type: text
width: 200
name: '&6欢迎来到对话框面板'

显示物品

物品的配置项与箱子面板相同。

type: 'item'
material: 'STONE'
name: '自定义物品名称'
width: 16
height: 16
text: '这是显示在物品旁边的文本'
# 可继续添加其他配置项

输入框

文本输入框。若需支持多行,行数和高度必须定义。去除多行选项将保持输入框为单行。

type: 'input'
width: 200 # 自定义元素宽度
name: '输入框上方的文本'
initial: '输入框中的默认文本'
max-length: 60 # 最大输入字数
multiline-rows: 3
multiline-height: 200

选项

按钮样式组件,可供用户从一系列预定义选项中选取其中一个。

type: 'option'
name: '值前面的文本'
width: 200 # 自定义元素宽度
initial: '创造' # 默认选择的值
options:
- '生存'
- '创造'
- '旁观'

滑条

在指定范围内选取特定数值的滑条。

type: 'range'
name: '滑条的名称'
width: 200 # 自定义元素宽度
initial: 50 # 默认值
step: 1 # 步长
start: 0 # 最小值
end: 100 # 最大值

复选框

二元选择输入组件,initial定义面板打开后要默认显示的状态。

type: 'boolean'
name: '复选框的名称'
initial: false # 默认显示状态,填true或false

按钮

可触发操作的点击按钮。

type: 'button'
name: '显示的名称'
width: 200 # 自定义元素宽度
url: 'https://bing.com' # 打开一个链接,不会执行命令
clipboard: '将文本复制到剪贴板,不会执行命令'
tooltip: '鼠标悬停在按钮上时显示的文本'
actions:
commands:
- '[msg] 你点了下按钮'