DKCJ丶成成
本帖最后由 DKCJ丶成成 于 2022-12-3 14:32 编辑

  如题,原版/clear 指令怎么清除指定物品,清除带NBT的物品不是原版物品,检测lore跟id都行,要怎么实现(实在不行求一个能实现清除背包指定物品的插件,感谢了)


比如我要扣除这个物品,格式该怎么样写,感谢了


版本: 1.16.5



白慕_Baimu
本帖最后由 白慕_Baimu 于 2022-12-3 11:24 编辑

如果可以Id的话就好办了

直接/minecraft:clear 玩家名 物品Id 1(后面的1是你要清除的最大值,不写就整个背包所有该物品都清除)
具体参见https://minecraft.fandom.com/zh/ ... clear?variant=zh-mo
如果想清楚带特定Nbt的我没理解错的话应该是
/minecraft:clear @s stone 1 {display:{Lore:["xxx"]}}


如果不行就这样子,因为基岩版还是什么需要一个物品Data,要给他一个,不清楚
/minecraft:clear @s stone 0 1 {display:{Lore:["xxx"]}}

你看能不能帮到你QAQ



DKCJ丶成成
本帖最后由 DKCJ丶成成 于 2022-12-3 11:39 编辑
白慕_Baimu 发表于 2022-12-3 11:16
如果可以Id的话就好办了

直接/minecraft:clear 玩家名 物品Id 1(后面的1是你要清除的最大值,不写就整个 ...

我寻思着你这第一个java格式也没写对啊,我1.16.5你后面{}得挨着物品id,而且数量只能写最后
然后你也没明白我的意思

白慕_Baimu
DKCJ丶成成 发表于 2022-12-3 11:37
我寻思着你这第一个java格式也没写对啊,我1.16.5

我也不是很懂这个指令,我还见过这样写的,好像是高版本的,你试试?
/minecraft:clear @s stone{display:{Lore:['"text":"xxx"']}}

hans0000
本帖最后由 hans0000 于 2022-12-3 13:33 编辑

你尝试一下这些指令
/clear @a minecraft:potion{display:{Name:'{"text":"红酒"}'}}
如果不行,你手指那个物品执行这个命令,在日志里把那个输出贴出来看看
/data get entity @p SelectedItem
或者使用skript插件写脚本更简单

Haylae
试试手持物品检测
/execute as @a[nbt={SelectedItem:{此处填写nbt}}] run replaceitem entity @s weapon air
nbt使用/data get entity @s SelectedItem获取

选择标志性nbt填入即可

DKCJ丶成成
hans0000 发表于 2022-12-3 13:22
你尝试一下这些指令
/clear @a minecraft:potion{display:{Name:'{"text":"红酒"}'}}
如果不行,你手指那个 ...

第一个不行,显示未能从玩家身上找到任何物品(背包有)
第二个没提示

hans0000
DKCJ丶成成 发表于 2022-12-3 13:36
第一个不行,显示未能从玩家身上找到任何物品(背包有)
第二个没提示

打错字了,手持那个物品,运行第二个指令

DKCJ丶成成
本帖最后由 DKCJ丶成成 于 2022-12-3 14:21 编辑
Haylae 发表于 2022-12-3 13:27
试试手持物品检测
/execute as @a[nbt={SelectedItem:{此处填写nbt}}] run replaceitem entity @s weapon a ...


谢谢,我试试,我还是不懂要怎么用在clear里,能举个例子吗




Haylae
DKCJ丶成成 发表于 2022-12-3 14:15
谢谢,我试试,我还是不懂要怎么用在clear里,能举个例子吗

/execute as @a[nbt={SelectedItem:{tag:{PublicBukkitValues:{"brewery:brewdata":[B;后面直到0B结束]}}}}] run replaceitem entity @s weapon air
插件服可以尝试使用其他插件代替,clear没有那么大的灵活性
这是酿酒插件的物品,可以尝试在配置文件中直接禁用此物品即可

DKCJ丶成成
本帖最后由 DKCJ丶成成 于 2022-12-3 15:37 编辑
Haylae 发表于 2022-12-3 15:03
/execute as @a[nbt={SelectedItem:{tag:{PublicBukkitValues:{"brewery:brewdata":}}}}] run replaceite ...

我要清除是有其他用,是要写个菜单内容检测物品给予奖励再扣除物品的流程,就差这个清除物品的指令了,不是你想的那样没有用...我要只是为禁了我早禁了,我又不傻......

hans0000
DKCJ丶成成 发表于 2022-12-3 14:15
谢谢,我试试,我还是不懂要怎么用在clear里,能举个例子吗


/clear @p <物品id>{display:xxx}

把圈出来的抄过来



Haylae
DKCJ丶成成 发表于 2022-12-3 15:36
我要清除是有其他用,是要写个菜单内容检测物品给予奖励再扣除物品的流程,就差这个清除物品的指令了,不 ...

菜单插件有直接扣除物品的办法吧
菜单插件依靠clear似乎无法检测是否拥有此物品
请问用的什么菜单插件呢

奥力給
尝试使用插件比较简洁
EasyItemUpdater使用并检测对应lore删除
https://www.mcbbs.net/thread-1375155-1-1.html

第一页 上一页 下一页 最后一页