大家好,我是一只末影小。在往期的图文中,已经讲解过很多麦块指令了。而在这些指令中最常见的参数就是实体和目标选择器。这两个名词是麦块指令中的重要概念。为了在今后的文章中更好地讲解指令,所以这一篇文章将“就目标选择器和实体”进行说明,希望大家能够学会。在这篇文章的文首,我们先来做一份投票。
你觉得哪些属于实体? 多选 0人 0% 原石方块 0人 0% 猪 0人 0% 挖矿石的掉落物 0人 0% 箱子
在这4个选项中,只有猪和挖矿石的掉落物是实体,想要搞清楚这个问题,我们要知道实体是什么:
实体在麦块中,所有移动中或者动态的,都属于实体。实体具有下面的性质
- 首先实体都具有速度,也就是移动的速度,通常情况下,玩家的移动速度是0.7,每一种实体的移动速度都会有差异,BOSS生物的移动速度可能会更快、其次,实体具有位置,也就是麦块中的坐标,打开坐标或者Java版按住F3就可以看到坐标、最后,实体会占空间,在游戏中我们称之为“碰撞体积”,碰撞体积在正常情况下是不可见的。
- 生物实体会有生命值,当生命值为0后,实体就死亡了。也可以通过/kill指令来清除实体,/kill指令的用法会在后面的文章中说明。有一些情况发生时,生命值会减少,例如饥饿度为0、实体在岩浆或者火焰中、在水下且氧气值为0
实体
3.某些实体会受水流影响被推动,某些实体可以被命名牌命名,实体会被照亮。以上就是实体的基本性质。
目标选择器通过某些限定的条件来筛选实体(也称作目标),就是目标选择器。目标选择器由选择器变量和选择器参数两个部分组成。目标选择器的变量非常常见,也经常使用到,目标选择器变量就是@a(所有玩家)、@p(最近玩家)、@e(所有实体)、@r(随机玩家)、@s(自己)等,这里提到的5个是比较常用的,在麦块教育版中有吉祥物实体,所以教育版中还有@c(自己的吉祥物)和@v(所有吉祥物)两个选择器。
而目标选择器参数是在变量后的英文方括号中的,多个参数之前用英文的逗号隔开,目标选择器的参数可以更小范围内筛选目标。下面讲解几条目标选择器参数:
目标选择器
- 坐标。在游戏中,有xyz三种坐标,可以使用双精度浮点型,也就是小数。举一个简单的例子,我想找到一个在20,20,20位置的玩家,那么目标选择器就可以这样写:@a[x=20,y=20,z=20]。
- 实体尺寸。我们把麦块的游戏地图想象为一个三维立体几何图形,每一个方块表示1平方米,这样就可以确定实体的尺寸(可以理解为体积),分别用dx、dy和dz表示三个方向轴,但并不表示为一个新的坐标。
- 经验值。我们可以通过经验值来筛选实体。Java版和基岩版的写法不同,Java版使用level,基岩版使用l,假如我想要在基岩版中选择一个最近的经验值为10的玩家,@p[l=10]。基岩版还可以使用专用的lm参数,表示高于某个数值的经验等级。
- 游戏模式。也分为Java版和基岩版两种情况,Java版使用gamemode,基岩版使用m,为了规范写法,建议大家使用英文全拼,这个参数可以在等于号后面加一个英文的感叹号表示否定,例如gamemode=!survival,则会筛选非生存模式的玩家。
- 通过名称或者类型。名称是指用命名牌给生物命名或者玩家的ID等,用name参数,可以加上英文感叹号;type则表示目标的类型,这里需要填写英文的全拼,比如牛cow、猪pig、羊sheep等。同样可以使用英文感叹号。
- 除上述参数外,还可以使用积分板的相关参数,由于我还没有学会积分板,所以暂且不讨论。
目标选择器参数
相信你已经对实体和目标选择器了如指掌了,那么这篇图文就到这里,关注我第一时间看到我的更新,我们下期再见,拜拜!文章参考资料:
1、Wiki百科