天才一秒记住【第一中文网】地址:www.dyzww.cc
_rotation =60..120]——所有朝向是在南偏西60°顺时针到北偏西60°这个范围内的玩家
@a[y_rotation =60]——所有朝着南偏西60°的玩家
——实体类型——
实体类型是type,上面我们已经见过了。
type和name本质上是差不多的,但是它筛选不是通过名字,而是通过实体种类。
什么是实体种类?比如一个玩家叫Notch,另一个玩家叫herobrine,虽然名字不同,但他们都是『玩家』种类的。又比如这里有一只马,那里有一只叫马的驴,虽然它们都叫马,但前者是马,后者是驴,并不是一个种类的。
type可以选定指定类型的实体,比如:
\/kill @e[type=minecraft:villager]
就可以杀死全部已生成的村民。
type一般来说仅用于@e,因为只有@e是包含非玩家实体的。在Java1.13以下和基岩版中,你也可以用在@r中来随机选择特定类型的实体。
和name一样,type也支持感叹号反转:
\/kill @e[type=!player]
这条指令的作用是:杀死所有非玩家实体。
需要注意的是,name和type这两个参数在非感叹号反转的情况下都是不可重叠的,比如:
@e[type=cow,type=player]
像上面那样是不可以的,minecraft中可没有既是牛又是玩家的动物。如果真有,那么也应该合并成为一个新的实体,也许会叫作cow_player(牛人)呢。
——实体家族——
我们知道通过type可以选取特定类型的实体。但如果我们要选取一堆不同类型的实体用于执行同一种指令呢?
记分板、Nbt和标签可以很好的解决这个问题。但在了解这三个东西之前,我们暂且没有除多弄命令方块以外的更好的办法。
mojang估计看我们这么可怜,于是在基岩版1.16.100中,加入了family参数。
family参数和type参数差不多,只不过它是通过实体家族筛选的。
什么是实体家族?
举个例子:
僵尸知道吧?僵尸一般来说有三类变种:
尸壳、僵尸村民、溺尸
虽然它们客观上并不属于同一种实体,但主观上我们仍然会将它们归类到一个大类:僵尸类。
用mojang的说法,它们都是属于同一个族(family)的。
现在你应该知道实体家族到底是什么了吧?
举个例子:
\/tp @e[family=creeper]@s
这条指令的作用是:将所有属于苦力怕家族的实体传送到自己身旁。
当然,你也可以使用感叹号将作用反转。需要注意,和type、name参数不同的是,family参数在非反转情况下也是可以叠加使用的,因为有些实体可能会属于多个族。
你可以在minecraft wiki上搜索『族』词条来查看原版所有可用的实体家族。
——物品——
我们知道,在Java版中,如果要筛选具有指定物品的实体,可以使用Nbt或\/clear。那在基岩版中该怎么办?使用\/replaceitem或\/clear吗?
这的确是两种可行的方法,但mojang还给了我们第三个方法:
本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!