总是被孩子问。这里整理了mc指令中坐标和选择对象的概念,然后介绍了几个常用指令。最后提到了命令方块中的指令。
1.坐标
在进入指令前,先介绍坐标的概念。MC中的坐标有几种:
(1)绝对坐标:X,Z为水平面坐标,Z为高低的坐标。
(2)相对坐标(相对于命令主体的坐标):即:在命令执行主体所在位置的基础上的绝对坐标偏移量。命令主体所在位置坐标为~ ~ ~。如果命令执行主体当前坐在位置的绝对坐标为X Y Z, 则 ~5 ~10 ~-15分别表X+5,Y+5,Z-5。
(3)本地坐标:命令执行主体所朝向方向的左右、上下、前后的位置点。如,^5 ^6 ^7表示命令主体所朝向位置前方7格,向上6格,向左5格的位置。
(4)朝向:/tp ~~~ ~1 向右旋转1度
上述之所以说“命令执行主体”,是因为这个主体不一定是输入指令的你,有可能是一个生物、盔甲架等。比如你可以通过命令方块以一个盔甲架的坐标为基准做一些坐标相关的操作。
2. 选择对象
@p:选择最近的玩家,不适用type参数。
@a:选择所有玩家,不适用type参数。
@r:选择随即玩家。
@s:选择命令的执行者。
@e:选择所有实体(包含玩家),但不包含死亡的实体。可以通过几种方式选择你想要的实体。包括通过坐标、通过记分板参数、通过其他特特性。其他特性比较常用的包括,通过name选择实体名称、通过type选择实体类型、还可以通过r/distance限制选择范围,通过limit限制选择的数量。
举例:
@e[distance=10]— 选择距离10范围
@e[distance=10..12]— 选择距离10到12范围
@e[distance=5..]— 选择距离5或以上范围
@e[distance=..15]— 选择距离15或以下范围
@e[type=armor_stand]—选择一个盔甲架
@e[name=abc] 选择名字为abc的实体
3. give 给予
给一个对象以物品
give 对象 物品 数量
/give <target> <item> [<count>]
对象就可以使用上面的目标选择器了。@s就是给自己。
对于give,网上很好查询。这里就不说详细的了;
4. fill 填充
填充方块。筑墙、盖房利器。有两种格式
fill <from起点> <to终点> <tileName: 方块名> [tileData: 方块数据] [FillMode 填充模式]
fill <from起点> <to重点> <tileName: 方块名> [blockStates: 方块状态] [FillMode 填充模式] 这种比较少用,方块状态可以看这里
起点和终点就可以用上面介绍的各种坐标啦。
方块数据:同一名字的方块,有不同具体分类,如颜色等。不清楚的可以写0
填充模式:这个比较复杂,如下:
destroy
- 用指定方块替换填充区域内所有方块hollow
- 仅用指定方块替换填充区域外层的方块,内部方块被替换为空气。这个盖房子好用。keep
- 仅用指定方块替换填充区域内的空气方块。outline
- 仅用指定方块替换填充区域外层的方块。内部方块不受影响。replace
- 用指定方块替换填充区域内所有方块(包括空气),而不以实体形式掉落被替换的方块和方块内容物。(如:/fill ~~~ ~100 ~-100 ~100 gold_block 0 replace concrete 将命令执行者脚下100X100X100区域的混凝土替换为金块)
5. summon召唤
召唤实体(生物、弹射物、物品、载具等)
summon <entityType: 实体类型> [spawnPos: 坐标] [spawnEvent: 事件] [nameTag: 实体名称]
summon <entityType: 实体类型> <nameTag: 实体名称> [spawnPos: 位置]
坐标可以不写,就召唤到命令执行者处。
实体名称是你召唤出来的实体的名字。
事件:指定该实体的召唤时附带的游戏内事件,详细可以看生成事件。可以不填。
6. execute
execute <origin: 命令执行主体> <position: x y z坐标> <command: command执行的命令>
命令执行主体:选择一个对象,即使用@p, @a ,@e。若多个目标被选中,则每个目标各运行一次指定的命令。
坐标:命令运行的位置。可为~ ~ ~(命令执行主体的位置)
execute可让其他对象为主体执行命令,最适合于在命令方块中使用。
(待续)