[指令日记]零基础的mc1.13指令教程

spawnpoing指令用法:
/spawnpoint ---在当前位置设置自己的重生点
/spawnpoint (玩家) ---将该玩家当前的位置设置为该玩家的重生点
/spawnpoint (x) (y) (z) ---设置对应坐标为自己的重生点
/spawnpoint (玩家) (x) (y) (z) ---将指定位置设置为选定玩家的重生点
例:/spawnpoint @a 0 255 0 将所有玩家的出生点设置为0,255,0
注:在使用此指令时,要确保对应位置没有任何有碰撞体积的方块,否则将无法设置重生点

楼主 化学爱好者_C60  发布于 2019-01-27 14:04:00 +0800 CST  
最后是xp和experence
这两个指令完全等价,我不知道有什么意义。如果有人知道这两个指令有什么不同,欢迎补充
这两条指令用来增加经验等级
这里以xp举例
/xp add @s 1000



等级直接从0级变成了26级

楼主 化学爱好者_C60  发布于 2019-01-27 14:10:00 +0800 CST  
xp指令用法:()内必填,[]内可不填
/xp add (玩家) (数据,可为负) [levels/points] ---给选定玩家指定等级/指定经验值,不填则默认给予经验值
/xp query (一名玩家) (levels/points) ---查看指定玩家的经验等级/经验值
/xp set (玩家) (数据,可为负) [levels/points] ---设置选定玩家的等级/经验值,不填则默认设置经验值


例:
/xp add @a 5000 levels ---给予所有玩家5000经验值
/xp set @s 30 levels ---将自己的等级设置为30级

楼主 化学爱好者_C60  发布于 2019-01-27 14:21:00 +0800 CST  
今天就到这了,明天准备把命令方块搬出来

楼主 化学爱好者_C60  发布于 2019-01-27 14:22:00 +0800 CST  
3、give指令与命令方块

楼主 化学爱好者_C60  发布于 2019-01-28 15:38:00 +0800 CST  
give指令是给予玩家指定物品的指令
如:/give @s diamond会给自己一个钻石



楼主 化学爱好者_C60  发布于 2019-01-28 15:42:00 +0800 CST  
give指令用法:()内必填,[]可不填
/give (玩家) (物品)[nbt标签] [数量]
注:物品与nbt标签之间没有空格,不填nbt标签则默认没有,不填数量则默认1个
关于什么是nbt标签,我会在以后介绍
例:
/give @s oak_log 64 ---给自己64个橡木原木
/give @a dragon_egg ---给每个人一个龙蛋
/give @s diamond_sword{Unbreakable:1} ---给自己一个无限耐久的钻石剑
注:Unbreakable为适用于所有物品的nbt标签(虽然只有在工具上有实际用途),此标签数值为1时,工具将不会消耗耐久


关于物品的名字,考虑到有查看的方法,此处便不一一列举
首先按下F3+H


可以看到左下角的提示
然后打开物品栏,把鼠标放到对应方块或物品上


可以看到下面多了一条灰色的字,这就是物品的名字了

楼主 化学爱好者_C60  发布于 2019-01-28 16:02:00 +0800 CST  
这里再列举一些创造模式物品栏里没有的方块。
barrier 屏障
command_block 命令方块
command_block_minecart 命令方块矿车
spawner 刷怪笼
structure_block 结构方块
structure_void 结构空位


关于这些方块,
屏障可以理解成一个完全隐形的基岩,无法通过,无法破坏


当在创造模式下拿着屏障靠近时,会显示红色的禁止通过标志


命令方块是本期的主题,也差不多是这一个系列的主题。
无法在生存模式中破坏


命令方块矿车不再过多解释,不过用处相对命令方块较小


刷怪笼。。。呃,算了
结构方块也是一个非常强大的方块,这个我也会在以后介绍


结构空位是为了配合结构方块使用的,单独使用没有意义,相当于空气


楼主 化学爱好者_C60  发布于 2019-01-28 16:27:00 +0800 CST  
现在我开始介绍命令方块


右键打开命令方块


然后我们就进入了这个界面
现在我们试试输入一个指令(注:在命令方块中,不需要再输入“/”符号)


其中@p指最近的玩家,不用@s因为命令方块不能给自己钻石
点击完成后,左下角给出提示


这个时候,我们只需要给这个命令方块一个红石信号,即可执行命令方块里的指令


楼主 化学爱好者_C60  发布于 2019-01-28 16:40:00 +0800 CST  
现在介绍一下三种命令方块的类型:脉冲、连锁、循环


切换这几种命令方块的方法是:打开命令方块后,点击下面的选项里左上角的那个,便可在三种类型里切换


命令方块默认为脉冲型,为橙色,连锁型命令方块为青色,循环型命令方块为紫色
脉冲型命令方块在一次激活时,只执行一次命令,比如我每按一次左边的按钮,我都可以获得一个钻石




连锁型命令方块不能单独激活,因此不管我怎么按中间的按钮,我都不会获得钻石




循环型命令方块只要处于被激活状态,就会每个游戏刻(0.05秒)执行一次里面的指令
因此,我只需要按一下右边的按钮,就会。。。




关于连锁型命令方块的激活方法
首先,我需要让两个命令方块指向同一个方向,并且连锁型命令方块为被指向方块


注:脉冲命令方块里为给予钻石,连锁命令方块里为给予钻石块
然后激活连锁型命令方块
再激活脉冲命令方块


如果我把脉冲型换成循环型


也就是每当同向指向连锁型命令方块中的命令执行时,连锁型命令方块的指令都会执行一次

楼主 化学爱好者_C60  发布于 2019-01-28 17:11:00 +0800 CST  
吃完饭继续更
我们来看命令方块里的第二个选项,不受制约和条件制约
现在我把一个命令方块调成条件制约


我们会发现,它的外观相较之前有所变化(左侧为不受制约,右侧为条件制约)


并且,此时我激活它,我也不能获得钻石


给予这个条件的方法类似于连锁型命令方块,需要有一个命令方块同向指向它(左侧不受制约,给予钻石,右侧条件制约,给予钻石块)


此时激活右侧命令方块,还是没有效果


而如果先激活左侧命令方块,再激活右侧命令方块,此时右侧命令方块中的指令正常执行



并且这之后都可以正常执行


如果我修改左侧指令


注:其中的distance=..3表示距离命令方块3格以内的玩家
然后我在3格以外激活左侧命令方块,使其执行失败,
然后激活右侧命令方块
此时右侧命令方块无法执行命令


条件制约中,命令方块的制约条件是:同向指向该命令方块的命令方块的上一次指令是否执行成功,若执行成功,则条件满足,若执行失败或未执行,则条件不满足

楼主 化学爱好者_C60  发布于 2019-01-28 18:22:00 +0800 CST  
补上楼的图


右侧的命令方块不能执行指令


接下来是命令方块的最后一个参数了,红石控制/保持开启
这个比较简单
刚刚我们在激活命令方块时,需要给它一个红石信号,来激活它
如果我们将它设置为保持开启,那么不需要红石,它本身就处于激活状态


比如,我造了一堆命令方块


我希望左侧的命令方块执行时,右侧的连锁型命令方块自动激活
我就不需要在那些命令方块上放一堆红石块了,直接将其设置为保持开启即可


这样,我们只需要按一下按钮


楼主 化学爱好者_C60  发布于 2019-01-28 18:38:00 +0800 CST  
今天就到这了,明天讲目标选择器

楼主 化学爱好者_C60  发布于 2019-01-28 18:39:00 +0800 CST  
4、目标选择器与目标选择器参数

楼主 化学爱好者_C60  发布于 2019-01-29 19:45:00 +0800 CST  
我造了一个命令方块,希望我可以通过它来调整我的游戏模式


但是。。。这似乎没用。。。


实际上,我在最开始举出的gamemode指令,并不是完整的指令。gamemode指令的完整形式应该是
/gamemode (模式) [玩家]
在省略玩家时,默认是自己
而在命令方块中,命令方块不可能修改自己的游戏模式,因此指令没有明确的执行目标,指令就无法执行
这个时候,就需要目标选择器了


说到目标选择器,听起来很高大上,实际上,在之前的教程中也出现过。@a、@e、@p、@r、@s都是目标选择器。a是所有玩家,e是所有实体,p是最近玩家,r是随机玩家,s是自己
因此,在上述指令中添加@p即可使命令方块正常工作

楼主 化学爱好者_C60  发布于 2019-01-29 19:57:00 +0800 CST  
但是,在实际应用中,比如我想让一部分玩家得到一种效果,但是不想让所有玩家都获得这种效果,我们就要调整目标选择器的参数,增加选择的条件,来排除一部分玩家。
比如,我想让靠近那个信标的玩家持续不断地获得钻石


我就可以在命令方块中设置如下指令
give @a[x=9.5,y=56.5,z=40.5,distance=..1.5] diamond 并调整命令方块的选项


如此操作,即可持续不断的给靠近的玩家钻石




注意观察物品栏里钻石的形态
在第二张图里,钻石呈瘦高状,说明在不停的获得钻石;在第三张图里,钻石呈正常状态,此时没有获得钻石

楼主 化学爱好者_C60  发布于 2019-01-29 20:16:00 +0800 CST  
指令解析:
give @a[x=9.5,y=56.5,z=40.5,distance=..1.5] diamond
此处信标的坐标为9,56,40
注:所有方块的坐标都是向下取整的。比如这个信标的坐标为9,56,40,它实际占据的空间是9~10,56~57,40~41。同理,如果一个方块的坐标为-5,6,-7,那么它所占据的空间是-5~-4,6~7,-7~-6
x,y,z这三个参数不再过多解释
distance表示目标距指令执行点(如果使用x,y,z参数指定了另一个地点,则为该指定的地点)的距离
如distance=1将仅选中距离该点1格远的目标(必须为1,即使1.00001都不行)
如果要指定一个范围,比如在某个范围内,就需要用连续两个小数点
比如distance=1..2表示选中距离目标点1~2格远的目标
如果要指定的范围只有上限或只有下限,空出另外一侧即可
比如distance=..5 距离目标点5格以内的目标
distance=5.. 距离目标点5格以外的目标


例:
/kill @e[distance=100..] ---杀死所有距离指令执行地点100格以外的实体
/effect give @a[x=3.5,y=4,z=5.5,distance=10..20] levitation 10 ---给所有距离点(3.5,4,5.5)10~20格远的玩家10秒的漂浮效果

楼主 化学爱好者_C60  发布于 2019-01-29 20:44:00 +0800 CST  
现在讨论另一种情况
使用distance指令指定选取范围时,使用的是圆形范围。
但有时候,我需要的是方形的范围(可能需要的不是正方形,而是长方形)
这是就需要用到另一种位置参数了,dx、dy、dz
现在我搭了一个场地


关于那块绿宝石块的作用,我一会儿会讲
在命令方块中输入指令如下


这时,我只要站在这块场地上,我就能获得钻石







楼主 化学爱好者_C60  发布于 2019-01-29 20:58:00 +0800 CST  
指令解析:
/give @a[x=8,y=56,z=39,dx=2,dy=1,dz=6] diamond
其中,(8,56,39)为绿宝石块上面一格的坐标
dx、dy、dz表示以某一个方块为起点,沿x轴、y轴、z轴的正方向延伸一定长度,以此确定一个长方体,在这个长方体范围内拥有碰撞体积的实体都会被选为目标。
如果将参数设置为负,则会向坐标正方向的反方向延伸。
刚刚的实验中,绿宝石的x坐标与z坐标都是所有矿物块中最小的,因此选择它的坐标为起始坐标
当然,也可以选择其他的角为起始坐标,例如与该绿宝石块为对角线的方块(已替换为红石块)


获得其坐标为(10,55,45)
修改命令方块中的指令如下
give @a[x=10,y=56,z=45,dx=-2,dy=1,dz=-6] diamond


注意差别,此处dx与dz改为了负值
于是又可以愉快地玩耍了


楼主 化学爱好者_C60  发布于 2019-01-29 21:17:00 +0800 CST  
讨论完这些与位置有关的参数后,我们开始介绍其他的参数
gamemode 模式
name 名字
nbt 实体的nbt标签
type 实体的种类
x_rotation 竖直俯角
y_rotation 水平旋转角


其中nbt暂时没有介绍到,这一节暂不做讨论
先举一个例子
我做了一个地图,我希望除了我以外的所有人进入后都为冒险模式,我就可以在命令方块中输入以下指令
gamemode adventure @a[name=!CHElover_C60,gamemode=!adventure]
其中CHElover_C60是我的名字


输入后我可以任意修改我的游戏模式,但是别人就只能用冒险模式
我把name标签的内容稍作修改后


即使我调整为别的模式,也会被自动设置为冒险

楼主 化学爱好者_C60  发布于 2019-01-30 20:08:00 +0800 CST  

楼主:化学爱好者_C60

字数:59733

发表时间:2019-01-27 01:23:00 +0800 CST

更新时间:2019-07-22 08:34:08 +0800 CST

评论数:924条评论

帖子来源:百度贴吧  访问原帖

 

热门帖子

随机列表

大家在看