本帖最后由 克拉克星人 于 2020-8-5 03:27 编辑
功能
·根据一级NBT的值(支持JavaScript,正则表达式解析)来禁用物品和地上的方块
·在NBT上搜索,移除禁用物品
·玩家切换手上物品时检查物品权限
·玩家登陆时检查背包栏,和已经支持的mod的背包来检查物品权限
当前支持的背包有 Baubles饰品背包,匠魂背包,旅行者装备背包
·使用命令检查指定玩家背包
·区块加载时没收黑名单方块(默认关闭)
·没事无聊可以看看物品的NBT
下载
权限
BanItem.*:
BanItem所有权限
子权限:
BanItem.bypass: true
BanItem.cmdcomplete: true
BanItem.cmd: true
# 对于BanItem.bypass权限,配置文件中启用相应的配置
# 例如一个子id为0的箱子的use权限被禁了
# 启用Permission.CheckItemId,权限检查会检查BanItem.bypass.use.54这样的权限
# 启用Permission.CheckItemDamage,权限检查会检查BanItem.bypass.use.54@0这样的权限
# 两者都未启用,只会检查BanItem.bypass.use这样的权限
BanItem.bypass 跳过禁用物品检查的权限
子权限
BanItem.bypass.break: true 破坏方块的权限
BanItem.bypass.craft: true 合成物品的权限
BanItem.bypass.hold: true 拿着该物品的权限
BanItem.bypass.interact: true 与方块交互的权限
BanItem.bypass.inv: true 基本所有的权限
BanItem.bypass.place: true 放置方块的权限
BanItem.bypass.use: true 使用物品的权限
BanItem.bypass.*.物品id
例如,以前版本,如果你禁了箱子的use和hold权限,这时候想给某个玩家用
那么你必须同时给该玩家BanItem.bypass.use.54和BanItem.bypass.hold.54两个权限
非常的繁琐,所以这时候就可以改用给该权限BanItem.bypass.*.54直接给所有Flag的权限
不要忘记将配置中Permission.CheckItemId设置为true,否则此权限无效
BanItem.bypass.useintnbt 在nbt中使用物品的权限
BanItem.cmdcomplete 自动补全命令的权限
BanItem.cmd 所有命令的权限
子权限
BanItem.cmd.help: true
BanItem.cmd.item: true
BanItem.cmd.nbt: true
BanItem.cmd.nbtdump: true
BanItem.cmd.reload: true
BanItem.cmd.scan: true
BanItem.cmd.show: true
BanItem.cmd.param: true
BanItem.cmd.help 获取插件帮助的权限
BanItem.cmd.add 添加物品到禁用物品列表的权限
BanItem.cmd.remove 从禁用物品列表移除物品的权限
BanItem.cmd.nbt 操作NBT检查物品列表的权限
子权限
BanItem.cmd.nbt.add: true
BanItem.cmd.nbt.remove: true
BanItem.cmd.nbt.show: true
BanItem.cmd.nbt.add 添加物品到NBT检查物品列表的权限
BanItem.cmd.nbt.remove 从NBT检查物品列表移除物品的权限
BanItem.cmd.nbt.show 显示NBT检查物品列表配置的权限
BanItem.cmd.nbtdump 获取物品NBT节点列表的权限
BanItem.cmd.param 查看参数帮助的权限
BanItem.cmd.reload 插件重载总权限
子权限
BanItem.cmd.reload.config: true
BanItem.cmd.reload.help: true
BanItem.cmd.reload.lang: true
BanItem.cmd.reload.list: true
BanItem.cmd.reload.plugin: true
BanItem.cmd.reload.plugin 重载插件的权限
BanItem.cmd.reload.config 重载插件配置的权限
BanItem.cmd.reload.help 获取重载命令帮助的权限
BanItem.cmd.reload.lang 重载插件语言文件的权限
BanItem.cmd.reload.list 重载禁用物品列表和NBT检查物品列表的权限
BanItem.cmd.scan 扫描玩家背包的权限
BanItem.cmd.show 显示禁用物品列表配置的权限
命令
命令规则
中括号[]包裹的表示该项可填可不填,尖括号<>包裹的表示该项为必填,
竖线|分隔的表示多个可选项,例如<false|true>,表示必填,可选值为false和true
可选参数为可写可不写的项,具体意义参考命令参数模块
/banitem add [参数:值] 可选参数: item,damage,world,nbtlabel,nbtvalue,flag,reason,confiscate
/banitem remove [参数:值] 可选参数: item,damage,world,nbtlabel,nbtvalue
/banitem show [参数:值] 可选参数: item,damage,world
/banitem nbt add [参数:值] 可选参数: item,damage
/banitem nbt remove [参数:值] 可选参数: item,damage
/banitem nbt show [参数:值] 可选参数: item,damage
/banitem nbtdump 显示当前手上物品的NBT,若当前手上物品为空,将尝试显示鼠标所指方块的NBT
/banitem param [参数标签] 显示命令参数的作用
/banItem help [页数] 获取banitem插件命令的帮助
/banitem reload config 重载插件主配置
/banitem reload lang 重载插件语言文件
/banitem reload list 重载禁用物品列表,NBT检查物品列表
/banitem reload [plugin] 重载插件
1.手上先拿着要ban的物品,输入/banitem nbtdump,结果如下(这是一把拔刀)
2.鼠标移到复制那里,点一下就能快速生成禁用该物品某个NBT节点的命令了,拔刀的话选CurrentItemName
说明一下生成的命令的意思
add就是添加
nl:CustmonMaxDamage ,nl指NBTLabel也可以用全拼,后面的就是NBT标签
nv:flammpfeil.slashblade.named.nihilul,nv指NBTValue,后面就是对应NBT标签的值,这里的nv值还加了normal|的前缀,指示这是一个普通的nbt
还可以更改[d,damage]子id参数为-1,-->d:-1,因为拔刀有耐久
如果你手动输入到了/banitem ban add nl: 按一下Tab就可以出提示,效果和这个差不多 3. 回车后还会有提示,你添加了什么样的物品配置到了文件 4.如果还觉得不清楚,你还可以使用/banitem show命令显示这个物品都ban了什么子id和NBT
对于上面的例子,手里拿着的东西不变,输入/banitem show
show命令可用的参数有三个
[w,world] 世界,如果没有设置,默认当前玩家世界
[i,item] 物品,如果没有设置,默认使用手上的,可以是数字,也可以是英文
[d:damage] 子id,如果没有设置,默认打印全部的子id 输完命令后出来的结果就是这样子,点击蓝色的字体可以快速生成删除该配置节点的命令
除非你不想玩家和这个方块交互,不然ban相同id的方块并没啥用,对于植物魔法,就算把地上的花ban了,只要撸掉下面的土还是可以的 1.鼠标对着要ban的方块输入/banitem nbtdump 此时你手上不能拿着东西 2.比如以下的植物魔法 3.接下来就和ban物品一样了,植物魔法方块区别类别的就是subTileName 4.然后地上的花直接撸就不能撸掉了
|