配置说明
LyDragonBlock 的配置分为主配置 config.yml 和方块配置目录 block/。修改后使用 /ldb reload 重载。
配置文件
| 文件 / 目录 | 用途 |
|---|---|
config.yml | 交互间隔、破坏拦截和提示文本。 |
block/*.yml | 方块 ID、DragonCore 匹配值、放置指令和交互事件。 |
data/*.yml | 已放置方块的数据,自动生成。 |
主配置
yaml
interaction-interval: 1.0
ignore-unbreak: false
message:
not-the-owner-break: "&c你不是放置者, 无法破坏该方块!"
block-cd: "&c该方块在 &6{time}&c 秒内无法再次进行交互!"| 节点 | 说明 |
|---|---|
interaction-interval | 玩家触发交互检测的间隔,单位为秒。默认 1.0。 |
ignore-unbreak | 是否无视已被其他插件取消的破坏事件。默认 false。 |
message.not-the-owner-break | 非放置者尝试破坏时的提示。 |
message.block-cd | 当前方块进入冷却时的提示,{time} 为剩余秒数。 |
interaction-interval 不建议设置太低。家具多、玩家多时,过低的交互间隔会增加事件判断频率。
方块配置结构
方块配置放在 plugins/LyDragonBlock/block/ 下,支持多个 yml 文件。每个顶层节点就是方块 ID。
yaml
示例方块:
match: "示例方块的match"
anti-break-by-non-owner: true
place-command:
- "[console]say %player_name% 放了一个{id}"
events:
主人提示:
type: "right"
true-action:
- "message:&7该方块的主人是 &6{owner}"| 节点 | 说明 |
|---|---|
| 顶层 ID | 插件内部方块 ID,也是 /ldb open 总览里显示和保存的数据 ID。 |
match | DragonCore 方块配置中的 match,必须对应正确。 |
anti-break-by-non-owner | 是否禁止非放置者破坏。OP 不受此限制。 |
place-command | 方块放置成功后执行的指令列表。 |
events | 交互事件配置,按配置顺序从上往下检测。 |
警告
这里的顶层 ID 不是 DragonCore 的 match。match 要单独填在 match 节点里,填错后方块无法按预期识别。
放置指令
place-command 支持以下写法:
| 写法 | 执行身份 |
|---|---|
[console]指令 | 控制台执行。 |
[op]指令 | 临时给予玩家 OP 后执行。 |
指令 | 玩家身份执行。 |
放置指令会先经过 PlaceholderAPI 变量替换。常用内置占位:
| 占位 | 说明 |
|---|---|
{id} | 当前方块 ID。 |
%player_name% | 放置者名称,来自 PlaceholderAPI。 |
事件结构
yaml
事件ID:
type: "right"
cd-group: "group"
cd-message: "&7你点击的方块在{time}秒内无法再次进行交互!"
condition:
- "permission:{vip.1}"
true-action:
- "message:&a条件通过"
false-action:
- "message:&c条件不通过"| 节点 | 说明 |
|---|---|
type | 事件类型,可写 left、right、break。 |
cd-group | 冷却组名,用于 cd 和 servercd 联动。默认 default。 |
cd-message | 当前事件冷却中时的提示,{time} 为剩余秒数。 |
condition | 条件列表。全部通过时执行 true-action。 |
true-action | 条件通过后执行的动作。 |
false-action | 条件不通过后执行的动作。 |
事件会按配置顺序处理。动作中使用 return 可以中断后续事件检测。