Item Commander

Item Commander

一个简单的服务端Fabric模组,允许你将命令分配给物品(堆叠)

Item Commander

闪亮的物品会做事

一个简单的服务端 Fabric 模组,允许你为物品(堆叠)分配命令。 它的工作原理是给物品添加 NBT 数据,然后当玩家使用物品时,会检查该物品的 NBT 数据,如果它包含 ItemCommander 标签树,就会执行指定的命令。

要将命令嵌入物品中,请将其拿在主手并运行 /commander create "<command>" [CONSUME_ACTION] [COMMAND_SOURCE] [cooldownTicks] [CustomItemNBT]

消耗动作:

动作 描述
CONSUME 消耗该物品
KEEP 保留该物品

命令来源:

动作 描述
SERVER 由服务器执行命令
PLAYER 由玩家执行命令
OP 由玩家以 OP 身份执行命令
SERVER_AS_PLAYER 由服务器以玩家身份执行命令(类似 OP)
DANGEROUSLY_OP 由玩家以 OP 身份执行命令 ⚠️

默认值以粗体表示

命令占位符

创建命令时,你可以使用以下类似原版的占位符:

占位符 动作
@itemname 物品名称
@pich 玩家俯仰角
@yaw 玩家偏航角
@ix 物品使用 X 坐标
@iy 物品使用 Y 坐标
@iz 物品使用 Z 坐标
@x 玩家使用 X 坐标
@y 玩家使用 Y 坐标
@z 玩家使用 Z 坐标
@p 和 @s 使用 Commander 物品的玩家

要向一个物品追加更多命令,请将 Commander 物品拿在主手并运行 /commander append "<command>" 要保存 Commander 物品,请将其拿在主手并运行 /commander save <fileName> 要加载/给予 Commander 物品,请运行 /commander give <fileName> [quantity] [player(s)]

本模组支持 Patbox 的文本占位符 API。

  • 你可以在 Commander 物品内使用 %modid:type% 或 %modid:type/data% 来使用自定义占位符
  • 示例:commander create

本模组支持 LuckPerms 的 Fabric 权限 API。

  • commander.command.create 允许玩家使用本模组将命令嵌入物品中
  • commander.command.append 允许玩家使用本模组向 Commander 物品追加命令
  • commander.command.give 允许玩家使用本模组给予自己 Commander 物品
  • commander.command.save 允许玩家使用本模组将 Commander 物品保存到服务器上的文件中

示例

创建一个 Commander 物品

/commander create "say Hello myself (@s), you clicked at @ix, @iy, @iz!" KEEP OP 20 paper{display:{Name:'[{"text":"Commander Test Item!","italic":false}]'}}

向 Commander 物品追加一条额外命令

/commander append "If you have Text Placeholder API, this will be your name: %player:name%"

保存一个 Commander 物品

/commander save commander_test_item 

给予/加载一个已保存的物品给玩家

/commander give commander_test_item 1 @p

前沿构建

上游构建可通过 GitHub Actions 获取。


设置

有关设置说明,请参阅与你使用的 IDE 相关的 fabric wiki 页面。

许可证

此模板在 CC0 许可证下可用。欢迎从中学习并将其纳入你自己的项目中。