Skip to content

命令

执行模式

执行模式会覆盖所有定时任务,而不只是单条命令

  • ALL(全部):一次执行所有命令
  • ORDERED(顺序):按顺序执行所有命令。执行命令的间隔则为该定时任务的间隔。若间隔设置为 10 秒且配置了 3 个命令,那么插件会先执行一个命令,再等待 10 秒,再执行命令,再等待 10 秒,直至执行完所有命令后,间隔 10 秒会再次执行第一条命令。
  • RANDOM(随机):每次随机执行一条命令
  • INTERVAL(间隔):与上述的 ORDERED 非常相似,但会在菜单中多出一个可配置的秒数选项。该设置不会影响到全局的定时命令间隔。在菜单内可直接点击执行模式物品来修改这个设置的值。

命令设置

  • Reset last executed command index(重置上次执行命令的顺序):该选项允许你在服务器启动时就开始执行定时任务中的命令。仅对 ORDEREDINTERVAL 等此前已存在执行顺序的模式有效。

执行身份

执行身份决定了命令被触发时使用的身份。

  • CONSOLE(控制台):命令将会以控制台身份执行。该模式下不可使用任何玩家的数据,若要这么做,请使用 CONSOLE_PER_USER 模式。
  • CONSOLE_PER_USER(带玩家身份的控制台):命令将会以控制台身份执行,但会带上指定玩家的数据。这意味着若你有 20 个在线玩家,插件将会执行 20 次这条命令(将每个玩家的身份代入并执行一次)。诸如 %player_name% 等的变量可以在这里使用(前提是安装了 PlaceholderAPI)。
  • OPERATOR(OP权限):每条命令将会模拟玩家 OP 身份执行。会为每位在线玩家都执行一次命令。诸如 %player_name% 等的变量可以在这里使用。在该角度下,这个变量返回的是玩家自己的名字。
  • PLAYER(玩家):以玩家身份执行命令。若玩家没有足够权限执行这个命令,他们会正常收到缺少权限的相关信息。诸如 %player_name% 等的变量可以在这里使用。若你不想要玩家看见那些缺少权限的提示消息,你应该使用条件模块来在定时任务执行命令之前检查是否拥有对应权限。
  • CONSOLE_PER_USER_OFFLINE(带离线玩家身份的控制台):与 CONSOLE_PER_USER 相似,但会以所有加入过的离线玩家身份执行一次命令。需要注意的是,条件模块暂时不能用在这个执行模式下

命令遍历间隔

对(除了 CONSOLE 即控制台)的所有身份均可设置间隔。这个间隔可以在每次执行特定命令之后生效。这意味着如果你使用了 PLAYER 身份并将间隔设置为 2 秒,插件会在每次以一个玩家身份执行完毕之后间隔 2 秒再代入其他玩家的身份执行命令。请不要将这个间隔与一般的间隔搞混,后者仍可以与本设置正常组合使用。

独立命令延迟

在你的定时任务模式为 ORDERED 时,你可以为每个命令设置执行后的延迟。只有当延迟结束时才会继续执行下一条命令。

让我们假定你这样设置了你的命令:

  • 命令 1,延迟 5 秒
  • 命令 2,延迟 10 秒
  • 命令 3,不设置延迟

命令 1 会按定时任务配置第一个被触发,第二条命令则会在 5 秒之后触发,第三条则会在第一条命令触发后的 15 秒后触发(第二个命令执行完毕后才会开始计算 10 秒的延迟)。