AkkLive
如题

Chelover_C60
是检测羊的坐标,还是检测羊附近的东西?版本?

AkkLive
Chelove_C60 发表于 2019-12-28 21:00
是检测羊的坐标,还是检测羊附近的东西?版本?

1.12.2

检测羊名字的坐标

Chelover_C60
AkkLive 发表于 2019-12-28 21:04
1.12.2

检测羊名字的坐标

羊名字由于不是实体,因此无法直接检测。

我刚刚测试了一下,羊名字的坐标大概是羊上方1.6~1.8格,因此可以考虑检测目标点下方1.6~1.8格是否有羊实体。这个范围可以根据需要来自己选。

比如,要检测x=10,y=10,z=10,半径1格内是否有羊的名字,那就可以写
testfor @e[name=jeb_,type=sheep,x=10,y=8.3,z=10,r=1]

如果要在羊名字处执行命令,那可以execute羊,在其上方执行命令
execute @e[name=jeb_,type=sheep] ~ ~1.7 ~ summon armor_stand ~ ~ ~ {NoGravity:1b}

AkkLive
Chelove_C60 发表于 2019-12-28 21:50
羊名字由于不是实体,因此无法直接检测。

我刚刚测试了一下,羊名字的坐标大概是羊上方1.6~1.8格,因此可 ...

如果要在羊名字处执行命令,那可以execute羊,在其上方执行命令
execute @e[name=jeb_,type=sheep] ~ ~1.7 ~ summon armor_stand ~ ~ ~ {NoGravity:1b}

还是不行 这个是召唤了实体。

我想清理 全部的羊jeb的实体

Chelover_C60
本帖最后由 Chelove_C60 于 2019-12-28 22:27 编辑
AkkLive 发表于 2019-12-28 21:58
如果要在羊名字处执行命令,那可以execute羊,在其上方执行命令
execute @e[name=jeb_,type=sheep] ~ ~1. ...
清理 全部的羊jeb的实体

是指杀死羊还是隐藏掉羊的名字?
如果要杀死羊,那就
kill @e[name=jeb_,type=sheep]
隐藏名字这个做不到
可以通过其他实体的碰撞箱来掩盖羊的碰撞体积,防止玩家将鼠标放上去来间接隐藏名字
execute @e[name=jeb_,type=sheep] ~ ~ ~ summon minecraft:armor_stand ~0.25 ~ ~0.25 {Invisible:1b,NoGravity:1b}
execute @e[name=jeb_,type=sheep] ~ ~ ~ summon minecraft:armor_stand ~0.25 ~ ~-0.25 {Invisible:1b,NoGravity:1b}
execute @e[name=jeb_,type=sheep] ~ ~ ~ summon minecraft:armor_stand ~-0.25 ~ ~0.25 {Invisible:1b,NoGravity:1b}
execute @e[name=jeb_,type=sheep] ~ ~ ~ summon minecraft:armor_stand ~-0.25 ~ ~-0.25 {Invisible:1b,NoGravity:1b}
缺点是这样会导致玩家无法正常和羊互动(如攻击、剪毛)
当然,如果羊移动了的话,就要循环execute+teleport了,或者kill后重新summon(推荐前者)

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