⏲️ 计划(Schedule)#

#bs.schedule:help

使用此模块增强计划(schedule)命令,提供超越原版功能的灵活性。支持取消命令和保留执行上下文(实体和位置)。


🔧 函数#

你可以在下方找到此模块中的所有可用函数。


取消#

#bs.schedule:cancel_all {with:{}}

取消所有和给定ID匹配的计划命令。

输入:

函数宏

  • 参数

    • with: 取消事件的过滤条件。

      • id: 用于匹配的预定命令参数。

示例:取消所有 id 参数为"foo"的命令:

function #bs.schedule:cancel_all {with:{id:"foo"}}
#bs.schedule:cancel_one {with:{}}

取消和给定ID匹配的第一个计划命令。

输入:

函数宏

  • 参数

    • with: 取消事件的过滤条件。

      • id: 用于匹配的预定命令参数。

示例:取消下一个 id 参数为"foo"的命令:

function #bs.schedule:cancel_one {with:{id:"foo"}}

制作人员:Aksiome、theogiraudet


清除#

#bs.schedule:clear

清除所有计划命令。

示例:移除所有计划命令:

function #bs.schedule:clear

制作人员:Aksiome、theogiraudet


计划#

#bs.schedule:schedule {run:<command>,with:{}}

计划命令以供执行。如果在其他计划命令的刻(tick)期间注册命令,它将被添加到之前注册的命令之后。

输入:

函数宏

  • 参数

    • run: 待调度的命令。

    • with: 可选的调度参数。

      • id: 预定命令的可选标识符。

      • time: 执行前的延迟时间。未指定时默认为1

      • unit: 时间单位(ticksecondminutehourtsmh)。默认为tick

输出:

返回值:计划命令的唯一标识符。

示例:在2秒后执行 say foo

function #bs.schedule:schedule {run:"say foo",with:{time:2,unit:"s"}}

示例:计划之后再取消一个有复杂ID的命令:

function #bs.schedule:schedule {run:"say failure",with:{id:{foo:"bar",fails:true},time:10,unit:"s"}}
function #bs.schedule:schedule {run:"say success",with:{id:{foo:"bar"},time:10,unit:"s"}}
function #bs.schedule:cancel_all {with:{id:{fails:true}}}

制作人员:Aksiome、theogiraudet


💬 这对你有帮助吗?

欢迎在下方留下你的问题和反馈!