主题
障碍物配置 obstacles.yml
obstacles.yml 定义了地牢中的障碍物组。障碍物是在指定位置放置/移除方块的机制,常用于创建门、牢笼、机关等。
完整配置
yaml
obstacles:
iron_gate:
blocks: # 障碍物方块坐标列表
- "10,64,10"
- "10,65,10"
- "10,66,10"
auto_create: false # 是否在副本开始时自动创建
trigger_mode: NONE # 触发模式
trigger_cooldown: 0 # 触发冷却时间(秒)
trigger_once: false # 是否只能触发一次
on_create: # 创建时执行的脚本
- "action.sound('@all', 'BLOCK_IRON_DOOR_CLOSE')"
on_delete: # 删除时执行的脚本
- "action.sound('@all', 'BLOCK_IRON_DOOR_OPEN')"
trigger_script: [] # 触发时执行的脚本
trap_zone:
blocks:
- "20,63,20"
- "21,63,20"
- "22,63,20"
trigger_mode: enter
trigger_script:
- "action.damage('@trigger', 5)"
- "action.message('@trigger', '&c你触发了陷阱!')"
trigger_cooldown: 3
trigger_once: false触发模式
| 模式 | 说明 |
|---|---|
NONE | 不触发(仅作为方块屏障) |
enter | 玩家进入障碍物区域时触发 |
leave | 玩家离开障碍物区域时触发 |
continuous | 玩家在区域内时持续触发 |
字段说明
| 字段 | 类型 | 默认值 | 说明 |
|---|---|---|---|
blocks | List | 必填 | 方块坐标列表 x,y,z |
auto_create | Boolean | false | 副本开始时是否自动创建 |
trigger_mode | String | NONE | 触发类型 |
trigger_cooldown | Int | 0 | 触发冷却(秒) |
trigger_once | Boolean | false | 是否只触发一次 |
on_create | List | 空 | 创建障碍物时的脚本 |
on_delete | List | 空 | 删除障碍物时的脚本 |
trigger_script | List | 空 | 触发时执行的脚本 |
