本帖最后由 abel820114 于 2019-2-16 20:28 编辑
版本:1.13.2
各位dalao好。以下問題描述:
我想做一個點擊式告示牌,
這個告示牌的效果是:「右鍵點擊互動後,會偵測互動玩家的副手是不是"空瓶"。如果是空瓶,就執行命令。」
我寫的命令是這樣的:
實際上也拿到告示牌了,告示牌的文字顯示也都正常,但無法檢測互動玩家副手上的空瓶
請問有沒有人哪裡出錯了?

各位dalao好。以下問題描述:
我想做一個點擊式告示牌,
這個告示牌的效果是:「右鍵點擊互動後,會偵測互動玩家的副手是不是"空瓶"。如果是空瓶,就執行命令。」
我寫的命令是這樣的:
實際上也拿到告示牌了,告示牌的文字顯示也都正常,但無法檢測互動玩家副手上的空瓶
請問有沒有人哪裡出錯了?

版本:1.13.2
各位dalao好。以下問題描述:
我想做一個點擊式告示牌,
這個告示牌的效果是:「右鍵點擊互動後,會偵測互動玩家的副手是不是"空瓶"。如果是空瓶,就執行命令。」
我寫的命令是這樣的:
give @p sign{BlockEntityTag:{Text1:"{\"text\":\"sell空瓶回收\",\"bold\":\"true\"}",Text2:"{\"text\":\"Click me\",\"clickEvent\":{\"action\":\"run command\",\"value\":\"/execute as @s[nbt={Inventory:[{Slot:-106b,id:\\\"minecraft:glass_bottle\\\"}]}] run give @p minecraft:apple\"}}"}}
實際上也拿到告示牌了,告示牌的文字顯示也都正常,但無法檢測互動玩家副手上的空瓶
請問有沒有人哪裡出錯了?
2021.12 数据,可能有更多内容
版本:1.13.2各位dalao好。以下問題描述:
我想做一個點擊式告示牌,
這個告示牌的效果是:「右鍵點擊互動後,會偵測互動玩家的副手是不是"空瓶"。如果是空瓶,就執行命令。」
我寫的命令是這樣的:
give @p sign{BlockEntityTag:{Text1:"{\"text\":\"sell空瓶回收\",\"bold\":\"true\"}",Text2:"{\"text\":\"Click me\",\"clickEvent\":{\"action\":\"run command\",\"value\":\"/execute as @s[nbt={Inventory:[{Slot:-106b,id:\\\"minecraft:glass_bottle\\\"}]}] run give @p minecraft:apple\"}}"}}
實際上也拿到告示牌了,告示牌的文字顯示也都正常,但無法檢測互動玩家副手上的空瓶
請問有沒有人哪裡出錯了?
本帖最后由 虎水小骥 于 2019-2-16 21:52 编辑
复制代码
不需要“/”,同时使用的目标选择器不对
我尽力了……
- give @p sign{BlockEntityTag:{Text1:"{"text":"sell空瓶回收","bold":"true"}",Text2:"{"text":"Click me","clickEvent":{"action":"run command","value":"execute as @s[nbt={SelectedItem:{"id":\\"minecraft:glass_bottle\\","Count":1b}}] run give @p minecraft:apple"}}"}}
不需要“/”,同时使用的目标选择器不对
我尽力了……
虎水小骥 发表于 2019-2-16 21:35
不需要“/”,同时使用的目标选择器不对
请采纳
他的excuse没有任何问题
你的nbt是“主手”是玻璃瓶
他的nbt是“副手”是玻璃瓶
id记得转义\\\"minecraft:glass_bottle\\\"
而且 还是不行
apple7032 发表于 2019-2-16 21:50
他的excuse没有任何问题
你的nbt是“主手”是玻璃瓶
他的nbt是“副手”是玻璃瓶
好吧没注意读题xxx感谢提醒
我实力有限……还请各位大佬多多指教
少了一個下劃線,是 "run_command" 而不是你所寫的 "run command"。
下面的指令修復了這個問題,並刪除了你所嵌套的實際並無意義的 execute 指令。
give @p sign{BlockEntityTag:{Text1:"{\"text\":\"sell空瓶回收\",\"bold\":\"true\"}",Text2:"{\"text\":\"Click me\",\"clickEvent\":{\"action\":\"run_command\",\"value\":\"/give @s[nbt={Inventory:[{Slot:-106b,id:\\\"minecraft:glass_bottle\\\"}]}] minecraft:apple\"}}"}}
下面的指令修復了這個問題,並刪除了你所嵌套的實際並無意義的 execute 指令。
give @p sign{BlockEntityTag:{Text1:"{\"text\":\"sell空瓶回收\",\"bold\":\"true\"}",Text2:"{\"text\":\"Click me\",\"clickEvent\":{\"action\":\"run_command\",\"value\":\"/give @s[nbt={Inventory:[{Slot:-106b,id:\\\"minecraft:glass_bottle\\\"}]}] minecraft:apple\"}}"}}
SPGoding 发表于 2019-2-16 20:26
少了一個下劃線,是 "run_command" 而不是你所寫的 "run command"。
下面的指令修復了這個問題,並刪除了你 ...
原來如此,修改之後可以了,非常感謝!
想再請問一下,如果excute後面的只是不只是give apple,而是function的話,也是直接function就好了嗎? 我好像有聽過 sign執行的指令就直接是以互動人的名義執行?
本帖最后由 abel820114 于 2019-2-17 01:54 编辑
原來如此,因為執行位置還是在告示牌以至於我之前一直很疑惑執行人是誰。非常感謝!
SPGoding 发表于 2019-2-17 00:39
沒錯,sign 執行的命令是在 sign 的位置、以互動人的身份執行。
所以有點需要注意,如果你的 function ...
原來如此,因為執行位置還是在告示牌以至於我之前一直很疑惑執行人是誰。非常感謝!