本帖最后由 贰逼 于 2015-12-17 21:46 编辑

对于生物攻击的方法之前也有很多:
1.8通用版本的方法:http://www.mcbbs.net/thread-427720-1-1.html
1.9早期快照的方法:http://www.mcbbs.net/thread-475275-1-1.html

到了现在的版本,UUID有了革命性的更新,由于删去了‘UUID’这个NBT


只能改用UUIDMost和UUIDLeast,所以战斗的发生指令也有了改变。

效果:










(效果不多说了,更多在http://www.mcbbs.net/thread-427720-1-1.html
其中值得注意的是使用UUID关联的生物范围扩大到了所有攻击性生物(包括僵尸,但是没有小黑因为免疫抛射伤害)

1.9原理:
还是利用了抛射实体攻击里的“ownerName”标签强行将仇恨给对应的实体(几乎可以是全部生物,实体中目前只发现盔甲架有效)
  1. /summon Zombie ~ ~1 ~ {UUIDLeast:1l,UUIDMost:1l}
复制代码
生成一个指定UUID的接受攻击的实体。其中UUIDLeast和UUIDMost可更改,但是注意加上'l'后缀代表long int
  1. /summon Skeleton ~ ~1 ~
复制代码
生成一个攻击性生物
  1. /summon Snowball ~1 ~6 ~ {ownerName:"00000000-0000-0001-0000-000000000001"}
复制代码
在攻击性生物上方生成一个ownerName指向指定UUID的实体的雪球
这样这个雪球就能攻击到这个生物,让这个生物的仇恨判断为指定UUID的实体

其中UUID需要注意如何转换


https://en.wikipedia.org/wiki/Universally_unique_identifier (科普向,所有版本的UUID)

http://docs.oracle.com/javase/6/docs/api/java/util/UUID.html (MC中的UUID)

其他的UUID难解释,所以目前00000000-0000-0001-0000-000000000001就是最简单的了

最后提醒一点就是被攻击的实体只能出现一个,因为UUID不能重复

转换器:http://skylinerw.com/uuid/index.php
感谢@pca006132
[groupid=546]Command Block Logic[/groupid]