天才一秒记住【第一中文网】地址:www.dyzww.cc
过mcreator这个软件来创建指令,你会发现创建指令后mcreator要求你写一个指令运行时的流程(也就是游戏解析并运行指令的过程),同时游戏将给这个流程提供以下信息:
Entity -执行指令的实体(对应“执行者”)
xyz -执行指令的x、Y、Z坐标(对应“执行位置”)
world -执行指令的维度(还是对应“执行位置”)
cmdparams -提供的参数(对应“参数”)
也就是说,一条指令执行的时候,肯定会被提供以上信息。
其中『参数』我们得稍微讲一下。
我们在序言中讲解参数时是通过举例的方式,并没有给其下一个明确的定义,所以其实我们还是不知道参数究竟是什么。
所以参数究竟是什么呢?
参数(parameter),又称元素(Elements),是指一条指令中除指令开头的单词和前缀外,提供的其他信息。
比如在指令\/tp @s ~~~~20 0 true中,前缀『\/』和指令单词tp(有些指令教程也叫做指令头,反正怎么叫都可以,没有一个固定称谓)之外的『@s』目标选择器,相对坐标『~~~』,旋转角度『~20 0』和安全检查模式『true』均为参数。
参数按照其作用,可以笼统地分为六类:
子命令——有些指令,比如scoreboard会有很多的作用,此时就需要子命令来将不同的作用区分开来。(为什么不叫子指令呢?)
位置(坐标)——指令执行的地点,也就是上面的三要素之一,一般是一个坐标
目标——指令所操作的对象。如果对象是实体,一般用的是UUId、玩家名或目标选择器;如果对象是方块,一般用的是坐标;如果对象是其他的一些东西,一般就会用一些特殊的Id。
(注:本书中,默认将UUId、玩家名和目标选择器合并起来。所以后面如果你看到一个参数可以填写目标选择器,那就大概率也能填写玩家名和UUId)
值——这东西无法很好的定义,因为在不同的指令中,值类型的参数的作用不一致,但大多数情况下的作用都是具体化对目标的操作。比如在『将玩家传送至一个地点』的指令中,这个地点的坐标就是一个值类型的参数。当然你其实并不需要现在就将它理解得十分透彻,后面学习的过程中你慢慢就会懂了。
模式——对目标进行操作时,所采取的模式。比如传送玩家的时候,你可以选择是默认模式,还是开启安全传送模式。
Nbt、JSoN——一般位于指令的末尾,对目标进行更具体的选择或进行一些更高级的操作。
一条指令大多数情况下可以填写多个参数。参数与指令开头的单词还有其他参数之间在大多数情况下要有一个空格予以区分。例外情况是基岩版的相对坐标和目标选择器,参数内一般不会包含空格。
所以空格在指令中十分重要,千万要记住了!
这就是本章的全部内容。接下来我们将会步入正式的指令学习阶段。