其他 今天,我会把所有基础指令全都讲一遍 包括目标选择器
随随便便放几个镇楼图 关于大部分基础指令的语法我极有可能引用wiki 毕竟wiki才是最准确的 我能做的,就是补充和效果展示 还有语法错误分析罢了 毕竟基础指令的语法根本不难(指令不好的请无视QAQ) 先说一说关于命令语法的相关符号的表达意义 <>是必填项目,<target>就是命令中此目标选项必填 []是选填项目,[true]就是此项目可填true可不填 |是选填 true|false就是要么填true要么填false
先说说kill这个指令 大多数人都知道,这个指令就是清除实体 语法/kill <target> kill可以选择多个目标实体,对于计分板中的虚拟实体没有效果 栗子:kill @e[type=villager] 解析:清除掉所有的村民,其中[]不是选填,是对于@e的限制条件 @e是所有实体,type是类型 由此命令我引出了@e和type 所以下来我说说目标选择器 目标选择器也叫实体选择器, 实体选择器的相关代码放置在 net.minecraft.command.EntitySelector中,有兴趣可以看看 目标选择器分为这几种: @e @a @p @s @r @c @v wiki的表述: 其中@c和@v是关于吉祥物的,也就是第一个镇楼图
关于其中几个选择器的补充: @r同样可以选择其他实体 栗子:@r[type=creeper],就是随机一个苦力怕
关于@a与@e:从图片中可以看出 @a也有最大限制数量2147483647 @a没有isAlive的限制(必须是活的) 而@e有 所以基岩版的死亡计分板就是这么来的xd 补图:
举报
下来讲中括号里面的内容 []即对于目标选择器的限制 格式一般是 目标选择器后面直接加中括号[] 比如@a[name="1"] 这种写法:@a [name="1"]在基岩版中是正确的,但是在Java版是行不通的 下面是所有的限制条件: x(x坐标) y(y坐标) z(z坐标) dx(x方向平移量) dy(y方向平移量) dz(z方向平移量) r(最大探测半径) rm(最小探测半径) rx(最大垂直旋转角度) rxm(最小垂直旋转角度) ry(最大水平旋转角度) rym(最小水平旋转角度) l(最大经验) lm(最小经验) type(实体类型) name(名字) c(数量) m(玩家游戏模式) scores(实体分数)
接下来讲每一个限制条件的具体用法: x y z就是选择命令执行坐标,不填默认命令方块所处坐标,里面支持相对坐标(~) 栗子:testfor @p[x=~,y=~10,z=~] 这个指令就是探测离命令方块坐标y轴加10的坐标最近的玩家 r就是半径,r=10就是选择半径10内的某实体 栗子:testfor @e[r=10] rm=10与r=10正好相反,它的意思是探测除了半径10以内的实体 栗子:testfor @e[rm=10] 半径10内的实体不会被探测 r可以和rm配合使用 栗子:testfor @e[r=10,rm=5] 就是探测半径为10的圆的面积减去半径为5的圆的面积后剩余的面积
下来是dx,dy,dz 这三个参数相当于长,宽,高 dx=1可理解为方向为东方,长度为1 dy=2可理解为方向向上,长度为2 dz=3可以理解为方向为南方,长度为3 testfor @e[dx=1,dy=2,dz=3] 就是长为3,宽为1,高为2个一个长方形 在游戏中可以不看东西南北,只需要打开显示坐标,通过简单的移动看看xz轴的增减,x增方向也是dx的增方向
补图:图片中范围就是事例中选择实体范围
接下来讲rx和rxm
这两个就是来限定垂直旋转角度的 垂直垂直,就是从头顶看到脚底 取值范围是-90到90(-90和90也可以取) -90是抬头抬到不能再抬,90是低头低的不能再低
补图:
execute @a[rxm=-90,rx=-45] ~~~ tp @s ~~~~ 0
这个指令就是当玩家的垂直旋转角度处于-45到-90的时候把自己的垂直旋转角度设置为0
ry和rym 水平旋转角度 definition:其角度以正南(或正Z轴方向)为基准顺时针旋转。水平旋转值从-180(面向正北)开始,到-90(面向正东),再到0(面向正南),再到90(面向正西),最后到180(再次面向正北)。(来自wiki)
补图&
注意事项:这个ry和rym只能选择劣弧不能选择优弧。。。
栗子:testfor @e[ry=90,rym=0] 就是选择玩家符合西到南面向的玩家 更新完毕XD 目标选择器略抽象
先说l和lm l和r,lm和rm可以相互对比着理解 l=5就是选择经验≤5的玩家,lm=6 就是选择经验≥6的玩家 栗子:testfor @e[l=5,lm=5]就是选择经验等于5的玩家
下来是type,实体类型,可以选择特定的实体 testfor @e[type=creeper]就是探测是否存在苦力怕 testfor @e[type=!creeper]就是探测除了苦力怕的实体
name可以探测实体名字, testfor @e[name=1]就是探测所有实体中是否存在名字为1的实体 c是数量 栗子:tp @e[c=2] ~ ~ ~ 就是把离自己最近的两个实体tp到自己的位置(自己也是实体所以其实是把自己tp了一次然后再把离自己最近的实体tp到自己这里)
tp @e[c=-1] ~ ~ ~就是把离自己最远的实体tp到自己这里
m是游戏模式 m=1和m=c都是创造模式 m=0和m=s都是生存模式 m=2和m=a都是冒险模式 m参数也可以使用! 比如:m=!1就是选择不是创造的玩家
接下来是scores,可以选择特定计分板分数的实体 scores={a=1}是选择分数为1的实体 scores={a=!1}是选择分数不为1的实体 scores={a=1..10}是选择分数在1到10的实体 scores={a=..1}是选择分数小于等于1的实体 scores={a=1..}是选择分数大于等于1的实体 scores同时也可以对多个计分板分数限定 刚刚都是a计分板 scores={a=1,b=1}就是a计分板分数为1,b计分板分数为1的实体
tag参数是选择具有某标签的实体 tag=是是是 就是选择标签为是是是的实体 tag=!w1 就是选择标签不为w1的实体
参数完毕
我下了会讲命令方块的用法和绝对坐标,相对坐标,局部坐标的使用
189手游论坛 |