天才一秒记住【第一中文网】地址:www.dyzww.cc
那这怎么跑出来负数了?
其实在minecraft中,水平旋转角度虽然可以像我们之前在第九章讲tp时那么用,但大多数时候,你都得这么用:
以正南(z轴正方向)为0°,顺时针旋转180°通过正西至正北,用正数,逆时针旋转180°通过正东至正北,用负数。比如-45°,就代表以正南为基准,逆时针旋转45°的方向;30°,就代表以正南为基准,顺时针旋转30°的方向。
也就是说,在minecraft中,水平旋转角度的正确范围是-180°~180°,而不是0°~360°。至于为什么我要在第九章那么讲,只是怕一下子就把负数搬出来会吓你们一跳。
现在我们回到正题。
举个例子。某网易手机租贷服为了让玩家回城方便,搞了一个“回城雪球”,其指令如下:
A→b→c→
A:重复,无条件,始终活动
\/execute @e[type=snowball]~~~ execute @p[r=1.5,rx=90,rxm=60]~~~ execute @e[type=snowball,c=1]~~~ tag @s add back_home
\\\\选取雪球作为指令执行者,再以这个雪球为中心寻找半径1.5格内最近的低着头(头自水平线向下90°到向下60°)的玩家。如果找到,再以该玩家为中心寻找最靠近他的雪球,并给这个雪球赋予back_home标签。\\\\
b:连锁,有条件的,始终活动
\/execute @e[type=snowball,tag=back_home]~~~ tp @p[r=1.5] 323 65 72
\\\\选取具有back_home标签的雪球,并以它为中心将半径1.5格内最靠近它的玩家传送到(323,65,72)。\\\\
c:连锁,有条件的,始终活动
\/kill @e[type=snowball,tag=back_home]
\\\\清除所有具有back_home标签的雪球\\\\
其中就有用到rx和rxm参数,用于筛选那些低着头扔雪球的玩家。
至于其中出现的tag参数,我们在上一章已经略过了。关于tag会在以后讲到计分板时提到。
ry和rym参数目前来说没有特别广的用途,只能举个没啥用的例子:
\/kill @a[ry=180,rym=-180]
这条指令可以杀死所有面向正北的玩家(神奇的是这并不会框选住所有活着的玩家,@a[ry=180,rym=179]才会框选住几乎所有活着的玩家)
至于x_rotation和y_rotation参数,你应该知道怎么用了吧?
@a[x_rotation=35..]——所有头水平线朝下35°及以上的玩家
@a[x_rotation=..35]——所有头没有水平线朝下35°以上的玩家
@a[x_rotation=0..35]——所有头水平线朝下0到35°(含)的玩家
@a[x_rotation=35]——所有头水平线朝下35°的玩家
@a[y_rotation =60..]——所有朝向是在南偏西60°顺时针到正北这个范围内的玩家
@a[y_rotation =..60]——所有朝向是在南偏西60°逆时针到正北这个范围内的玩家
@a[y
本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!