跳到主要内容

配置

基岩面板是一种表单式图形界面,专为通过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版和基岩版玩家进入,基岩面板能为基岩版玩家提供更好的使用体验。