配置
基岩面板是一种表单式图形界面,专为通过GeyserMC进入服务器的基岩版玩家设计。它与箱子面板不同,它以结构化的表单界面来呈现选项。
当不支持箱子面板或难以在基岩版中正常显示时,基岩面板便是最好的选择。
概述
基岩面板属于floodgate类型,使用简易式或自定义式布局来显示组件。基岩面板支持通过按钮或其他组件实现简洁的交互操作与命令执行,对手机、平板等移动设备及其友好。
基岩面板由两大部分组成:
layout:控制表单元素的排列方式。items:定义表单中要显示的按钮或物品。
基岩面板采用垂直表单布局。
主要功能
- 基岩版友好:专为通过GeyserMC连接的基岩版玩家优化。
- 命令按钮:通过组件触发命令或特定操作。
- 支持条件:根据占位符逻辑显示或隐藏组件。
- 自定义图标:支持使用纹理路径和URL链接自定义图片元素。
- 动态逻辑:表单逻辑按照从上到下的顺序进行处理,支持条件执行。
配置选项
类型
基岩面板。
type: 'floodgate'
表单类型
基岩表单的类型。分为简易式与自定义式。
floodgate-type: 'simple' # 简易式
floodgate-type: 'custom' # 自定义式
标题
面板标题。支持占位符,例如%player_name%或%commandpanels_session_player%。
title: '示例标题'
副标题
标题下方和按钮上方显示的文本。仅在使用简易式基岩面板时显示。可使用\n换行。
subtitle: '这是一个副标题。'
条件
玩家必须符合条件才能打开面板。
conditions: '%player_name% $HASPERM example.permission'
打开命令
玩家在游戏中用于打开面板的命令。你可以添加参数,并在面板内通过%commandpanels_session_<参数>%来引用参数。例如,若打开命令设置为example player,执行/example Halogly会打开面板,并且占位符%commandpanels_session_player%会返回“Halogly”。
command: 'ban player'
命令别名
定义其他也可以打开此面板的等效命令。在主命令中定义的参数同样适用这些别名。因此,如果你定义了command: 'ban player',那么执行/ban Player、/mute Player、/kick Player或/warn Player都会以同样的方式打开这个面板。
aliases: [ 'mute','kick','warn' ]
运行命令
在不同面板事件中运行命令。有关运行命令的详细信息,请参阅命令操作页面。
前置命令
面板打开前要执行的命令。
open:
requirements: []
commands:
- '[msg] 面板已打开'
- '[session] set player Halogly'
fail: []
显示顺序
layout定义交互组件的垂直排列顺序,其中的数字编号表示按顺序处理的组件组。
系统会按照从上到下的顺序逐一检查组中各个组件的显示条件,第一个符合条件的组件会显示在面板上。此机制是实现界面条件显示与多样化交互逻辑的基础。
面板按照数字编号的顺序依次处理组件。
组件
items下定义的组件可包含以下内容:
- 显示名称。
condition定义显示条件,决定组件是否显示。commands定义要运行的一条或多条命令。icon定义通过资源路径或URL链接设置的按钮图标。- 若使用自定义式面板,各组件类型会略有不同。
布局与逻辑的分离可提高设计的灵活性,使你无需编写一套复杂的嵌套也能实现丰富的布局。
示例行为
基岩面板可以显示一个“点击我”的按钮,也可以在用户满足特定条件时显示“条件已满足”的按钮。这是通过在组件中设置条件判断,并利用布局定义的顺序控制其是否显示。
组件组内第一个符合条件的组件会立即显示,后续组件会被阻止显示。若当前组件不符合条件,插件会在组件组中继续寻找下一个符合条件的组件。
使用场景
基岩面板最适合用于:
- 需要为基岩版移动端的玩家提供友好的使用界面。
- 条件式命令表单,例如基于权限的菜单。
- 用图形化按钮代替传统的物品按钮。
- 需要严格控制显示顺序的简易式表单。
如果你的服务器同时支持Java版和基岩版玩家进入,基岩面板能为基岩版玩家提供更好的使用体验。