地牢类动作
complete
Section titled “complete”结算地牢,标记为通关。不会自动退出副本。
action.complete()别名:complete_dungeon
exit_dungeon
Section titled “exit_dungeon”传送所有玩家回主世界。不会自动结算。
action.exit_dungeon()别名:leave_dungeon
trigger_interact
Section titled “trigger_interact”按名称触发 interacts.yml 中定义的交互点,等价于玩家在配置位置完成了对应交互。交互点的条件、once、触发脚本全部走本体原生逻辑。
action.trigger_interact(选择器, 交互点名)| 参数 | 类型 | 说明 |
|---|---|---|
| 选择器 | String | 触发者,默认 @trigger |
| 交互点名 | String | interacts.yml 中定义的交互点名称 |
action.trigger_interact('@trigger', '神秘机关')别名:触发交互
标记地牢为失败状态。
action.fail()action.fail(失败原因)| 参数 | 类型 | 说明 |
|---|---|---|
| 失败原因 | String | 可选,如 超时、全员死亡 |
action.fail('超时')别名:fail_dungeon
spawn_group
Section titled “spawn_group”生成 monsters.yml 中定义的怪物组。
action.spawn_group(组名)| 参数 | 类型 | 说明 |
|---|---|---|
| 组名 | String | monsters.yml 中定义的怪物组名 |
action.spawn_group('wave_1')别名:monster_group
cancel_group
Section titled “cancel_group”清除已生成的怪物组,移除该组所有存活怪物。
action.cancel_group(组名)| 参数 | 类型 | 说明 |
|---|---|---|
| 组名 | String | 要取消的怪物组名 |
action.cancel_group('wave_1')别名:clear_group
random_spawn_group
Section titled “random_spawn_group”从多个怪物组中随机选一个生成。
action.random_spawn_group(组名1, 组名2, ...)action.random_spawn_group('easy_wave', 'hard_wave', 'elite_wave')别名:随机刷新
random_monster_group
Section titled “random_monster_group”从多个怪物组中随机选取一个怪物 ID 并返回(不直接生成)。常用于需要拿到随机怪物 ID 再做后续处理的脚本。
let id = action.random_monster_group(组名1, 组名2, ...)| 参数 | 类型 | 说明 |
|---|---|---|
| 组名 | String | 一个或多个 monsters.yml 中定义的怪物组名 |
返回值:随机选中的怪物 ID(字符串)。
// 随机抽取一个怪物 ID,再用于其它逻辑let mob = action.random_monster_group('easy_pool', 'hard_pool')action.message('@all', '&e本轮精英怪: ' + mob)别名:随机怪物
create_obstacle
Section titled “create_obstacle”创建 obstacles.yml 中定义的障碍物。
action.create_obstacle(障碍物名)action.create_obstacle('iron_gate')别名:obstacle_create
delete_obstacle
Section titled “delete_obstacle”删除已创建的障碍物。
action.delete_obstacle(障碍物名)action.delete_obstacle('iron_gate')别名:obstacle_delete
grant_reward
Section titled “grant_reward”发放 rewards.yml 中定义的奖励。
action.grant_reward(奖励名)action.grant_reward(选择器, 奖励名)| 参数 | 类型 | 说明 |
|---|---|---|
| 选择器 | String | 可选,不填则发给所有玩家 |
| 奖励名 | String | rewards.yml 中定义的奖励名 |
action.grant_reward('boss_loot')action.grant_reward('@trigger', 'mvp_bonus')别名:reward
open_chest_ui
Section titled “open_chest_ui”打开 chest_rewards.yml 中定义的箱子奖励界面。
action.open_chest_ui(选择器, 箱子ID)| 参数 | 类型 | 说明 |
|---|---|---|
| 选择器 | String | 目标玩家 |
| 箱子ID | String | chest_rewards.yml 中定义的箱子 ID |
action.open_chest_ui('@all', 'boss_chest')