主题
交互配置 interacts.yml
interacts.yml 定义了地牢中的交互点。玩家与特定方块/实体/区域交互时会触发脚本。
完整配置
yaml
interacts:
lever_puzzle:
type: 右键方块
once: true # 每个玩家只能触发一次
triggered_message: "&c你已经操作过了" # 重复触发时的提示(可选)
parameters:
位置: "10,64,10"
方块类型: LEVER
script:
- "action.message('@trigger', '&a你拉下了拉杆!')"
- "action.delete_obstacle('iron_gate')"
place_key:
type: 放置方块
once: true
parameters:
位置: "15,64,15"
方块类型: DIAMOND_BLOCK
script:
- "action.message('@all', '&a钥匙已放置!')"
talk_npc:
type: 右键实体
once: false
parameters:
位置: "20,64,20"
实体类型: VILLAGER
script:
- "action.message('@trigger', '&e[NPC] &f欢迎,冒险者!')"
boss_room:
type: 进入区域
once: true
parameters:
区域:
最小坐标: "30,60,30"
最大坐标: "50,80,50"
script:
- "action.title('@trigger', '&4Boss房间', '&c准备战斗!')"
- "action.spawn_group('boss')"交互类型
| 类型 | 说明 | 参数 |
|---|---|---|
右键方块 | 右键点击指定方块 | 位置, 方块类型 |
放置方块 | 在指定位置放置方块 | 位置, 方块类型 |
右键实体 | 右键点击指定实体 | 位置, 实体类型 |
进入区域 | 进入指定区域范围 | 区域.最小坐标, 区域.最大坐标 |
字段说明
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
type | String | 右键方块 | 交互触发方式 |
once | Boolean | true | 每个玩家是否只能触发一次 |
triggered_message | String | 无 | 重复触发时的提示消息 |
parameters | Map | 空 | 交互相关的参数 |
script | List | 空 | 触发时执行的脚本 |
