Deing
有没有什么办法直接探测一个具有多个tag的实体?
比如,只有当一个实体同时具有tag1和tag2时才执行


如果不能直接探测,你们一般怎么解决?

Deing
补充一下,假设现在有很多实体挤在一起(比如多种不同掉落物在一个格子里),有的有多个tag有的只有一个,这样如果用多重execute的话会失效的。所以有没有其他方法

纱夜
@e[tag=1,tag=2]
同时拥有tag1 2的实体才会被选

Deing
阴阳师元素祭祀 发表于 2016-11-11 21:21
@e[tag=1,tag=2]
同时拥有tag1 2的实体才会被选

你错了,同名项出现多次会忽略前面的,只有最后一个生效
不信你自己去试(1.10.2)

纱夜
Deing 发表于 2016-11-11 21:36
你错了,同名项出现多次会忽略前面的,只有最后一个生效
不信你自己去试(1.10.2) ...

什么叫同名项会忽略前面 只有最后一个生效

爱心魔王FHC
testfor @e {Tags:["tag1","tag2"]}
不知道可不可以

纱夜
Deing 发表于 2016-11-11 21:36
你错了,同名项出现多次会忽略前面的,只有最后一个生效
不信你自己去试(1.10.2) ...

well
我去单人测试了
召唤了3个猪
分别有
1
2
1 2的标签
我tp @e[tag=1,tag=2]

拥有2和12标签的祝过来了

然后我用@e[tag=2,tag=1]
然后发现拥有1 2 和1的来了
所以...
我们会execute
execute不会失效吧
execute @e[tag=1] ~ ~ ~ execute @e[tag=2,r=0,c=1] ~ ~ ~ 指令
c=1 r=0 这样就会只选择自己了

纱夜
阴阳师元素祭祀 发表于 2016-11-11 21:50
well
我去单人测试了
召唤了3个猪

/testfor @e[r=2] {Tags:["1","2"]}
可以
经过单人测试

这样也可以用来
scoreboard players tag @e add 3 {Tags:["1","2"]}

chyx
给Tags:["1","2"]的实体tag3啊