跳转到内容

地牢类动作

结算地牢,标记为通关。不会自动退出副本。

action.complete()

别名:complete_dungeon

传送所有玩家回主世界。不会自动结算。

action.exit_dungeon()

别名:leave_dungeon

按名称触发 interacts.yml 中定义的交互点,等价于玩家在配置位置完成了对应交互。交互点的条件、once、触发脚本全部走本体原生逻辑。

action.trigger_interact(选择器, 交互点名)
参数类型说明
选择器String触发者,默认 @trigger
交互点名Stringinteracts.yml 中定义的交互点名称
action.trigger_interact('@trigger', '神秘机关')

别名:触发交互

标记地牢为失败状态。

action.fail()
action.fail(失败原因)
参数类型说明
失败原因String可选,如 超时全员死亡
action.fail('超时')

别名:fail_dungeon

生成 monsters.yml 中定义的怪物组。

action.spawn_group(组名)
参数类型说明
组名Stringmonsters.yml 中定义的怪物组名
action.spawn_group('wave_1')

别名:monster_group

清除已生成的怪物组,移除该组所有存活怪物。

action.cancel_group(组名)
参数类型说明
组名String要取消的怪物组名
action.cancel_group('wave_1')

别名:clear_group

从多个怪物组中随机选一个生成。

action.random_spawn_group(组名1, 组名2, ...)
action.random_spawn_group('easy_wave', 'hard_wave', 'elite_wave')

别名:随机刷新

从多个怪物组中随机选取一个怪物 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)

别名:随机怪物

创建 obstacles.yml 中定义的障碍物。

action.create_obstacle(障碍物名)
action.create_obstacle('iron_gate')

别名:obstacle_create

删除已创建的障碍物。

action.delete_obstacle(障碍物名)
action.delete_obstacle('iron_gate')

别名:obstacle_delete

发放 rewards.yml 中定义的奖励。

action.grant_reward(奖励名)
action.grant_reward(选择器, 奖励名)
参数类型说明
选择器String可选,不填则发给所有玩家
奖励名Stringrewards.yml 中定义的奖励名
action.grant_reward('boss_loot')
action.grant_reward('@trigger', 'mvp_bonus')

别名:reward

打开 chest_rewards.yml 中定义的箱子奖励界面。

action.open_chest_ui(选择器, 箱子ID)
参数类型说明
选择器String目标玩家
箱子IDStringchest_rewards.yml 中定义的箱子 ID
action.open_chest_ui('@all', 'boss_chest')