Minecraft(我的世界)中文论坛

标题: MC1.9: 指令方块新版单指令原理

作者: PotatoMaster101    时间: 2015-10-14 22:20
标题: MC1.9: 指令方块新版单指令原理
本帖最后由 PotatoMaster101 于 2015-10-14 22:26 编辑

大家好。今天就发一个短贴,来讲解一下1.9的单指令执行多条指令的新方法。由于1.9的Riding被删了,有一些单指令系统已被损坏。今天本人花了10分钟研制出了一个新的单指令方法。(版本最好在15w41a+)

-------------正题--------------
首先给大家看下格式:
  1. /summon FallingSand ~-2 ~ ~
  2. {Time:1,Block:"minecraft:redstone_block",Passengers:[{id:"FallingSand",Time:1,Block:"minecraft:activator_rail",Passengers:[{id:"MinecartCommandBlock",Command:"/say 1",CustomName:"First"},{id:"MinecartCommandBlock",Command:"/say 2",CustomName:"Second"},{id:"MinecartCommandBlock",Command:"/say 3",CustomName:"Third"},{id:"MinecartCommandBlock",Command:"/say 4",CustomName:"Fourth"},{id:"MinecartCommandBlock",Command:"/say 5",CustomName:"Fifth"},{id:"MinecartCommandBlock",Command:"/say 6",CustomName:"Sixth"},{id:"MinecartCommandBlock",Command:"/say 7",CustomName:"Seventh"},{id:"MinecartCommandBlock",Command:"/say 8",CustomName:"Eighth"},{id:"MinecartCommandBlock",Command:"/say 9",CustomName:"Nineth"},{id:"MinecartCommandBlock",Command:"/say 10",CustomName:"Tenth"},{id:"MinecartCommandBlock",Command:"/setblock ~ ~-1 ~ minecraft:lava 7 replace"},{id:"MinecartCommandBlock",Command:"/fill ~ ~ ~ ~ ~-1 ~ minecraft:air 0 replace"}]}]}
复制代码
这个就是指令总体。主要用新的{Passengers}这个标签来制作的。由于以前的{Riding}被删了,所以导致了一些单指令系统坏掉。这个Passengers我将不会多做解释(把机会留给其他的教程户)。
因为用了Passengers,这条指令的运行速度将会比以前旧版的快很多,来减少卡顿(原理还是指令方块矿车)。指令方块矿车的激活一般是瞬间的,然后瞬间清场。但是在这瞬间的过程中,指令方块矿车并不会打乱激活顺序,所以这点可以放心。

-------------指令分拆------------
第一部分
  1. /summon FallingSand ~-2 ~ ~
  2. {Time:1,Block:"minecraft:redstone_block",Passengers:[{id:"FallingSand",Time:1,Block:"minecraft:activator_rail",Passengers:
复制代码
这是指令的开头,也就是本人花了10分钟研制的地方。主要用的指令方块矿车来达到多指令这个效果。这一部分用处就是刷出红石快和铁轨,给指令方块矿车做激活准备。

第二部分(多指令部分):
  1. [{id:"MinecartCommandBlock",Command:"/say 1",CustomName:"First"},{id:"MinecartCommandBlock",Command:"/say 2",CustomName:"Second"},{id:"MinecartCommandBlock",Command:"/say 3",CustomName:"Third"},{id:"MinecartCommandBlock",Command:"/say 4",CustomName:"Fourth"},{id:"MinecartCommandBlock",Command:"/say 5",CustomName:"Fifth"},{id:"MinecartCommandBlock",Command:"/say 6",CustomName:"Sixth"},{id:"MinecartCommandBlock",Command:"/say 7",CustomName:"Seventh"},{id:"MinecartCommandBlock",Command:"/say 8",CustomName:"Eighth"},{id:"MinecartCommandBlock",Command:"/say 9",CustomName:"Nineth"},{id:"MinecartCommandBlock",Command:"/say 10",CustomName:"Tenth"},
复制代码
这里是控制激活指令的地方。指令会从上到下的顺序激活。这里想有多少指令都可以,本人这个例子是10个,但是测试了1个指令也照样可以运行。这里也不多做解释了,大家要玩的话就自己改下{Command}标签里的指令(本人还加入了{CustomName}标签,其实没什么必要,是本人在测试的时候看效果的而已)。这里最多就是复制粘贴的活。

第三部分(清场):
  1. {id:"MinecartCommandBlock",Command:"/setblock ~ ~-1 ~ minecraft:lava 7 replace"},{id:"MinecartCommandBlock",Command:"/fill ~ ~ ~ ~ ~-1 ~ minecraft:air 0 replace"}]}]}
复制代码
这里也不多说了,就是先把矿车烧掉,以防重复激活,然后再把场地用/fill清了。这样不会留下激活痕迹。

到这里结束了吧。感谢PCA带来的Passengers的测试
========END=======
(其实本人现在在写这种指令格式的生成器,内测中)

作者: ufof    时间: 2015-10-14 22:26
PM不是说隐退吗{:10_532:}
作者: simon3000    时间: 2015-10-14 22:26
命令方块越来越高深了
我又一个问题,为什么不弄多几个命令方块,还是就研究着玩?



防黑客魔咒: [sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup][sub]C[/sub][sup]Y[/sup][sub]Q[/sub][sup]C[/sup][sub]Y[/sub][sup]Q[/sup]
作者: chyx    时间: 2015-10-14 22:28
simon3000 发表于 2015-10-14 22:26
命令方块越来越高深了
我又一个问题,为什么不弄多几个命令方块,还是就研究着玩?

你没见过原版模组么。。。。。。。。。。。。。。。。。。。。
作者: simon3000    时间: 2015-10-14 22:29
chyx 发表于 2015-10-14 22:28
你没见过原版模组么。。。。。。。。。。。。。。。。。。。。

哦,那为什么要一个命令方块执行呢?
作者: pca006132    时间: 2015-10-14 22:30
果然大更新PM就会出现
作者: chyx    时间: 2015-10-14 23:40
simon3000 发表于 2015-10-14 22:29
哦,那为什么要一个命令方块执行呢?

方便传播
你看我做了cb作品 我要给你一个大表说让你按顺序粘进去你干么
作者: 林扬骐    时间: 2015-10-15 17:49
本帖最后由 林扬骐 于 2015-10-15 17:59 编辑

然而lz还比我晚……我甚至1.8就用了命令车……1.9上个星期天就做了
http://www.mcbbs.net/forum.php?m ... 6orderby%3Ddateline

然后其实我也可以把红石块放铁轨下面,但是因为想保留原来的坐标位置而用的命令方块


作者: 林扬骐    时间: 2015-10-15 17:51
本帖最后由 林扬骐 于 2016-6-8 18:13 编辑

(另外岩浆清场后其实后面的setblock air是无法执行的)

作者: PotatoMaster101    时间: 2015-10-15 22:39
林扬骐 发表于 2015-10-15 17:49
然而lz还比我晚……我甚至1.8就用了命令车……1.9上个星期天就做了
http://www.mcbbs.net/forum.php?m ...  ...

1.8的版本我以前发过,那个太慢

这个版本很少会出错,指令方块矿车都是按照顺序运行的
作者: 林扬骐    时间: 2015-10-15 22:54
PotatoMaster101 发表于 2015-10-15 22:39
1.8的版本我以前发过,那个太慢

这个版本很少会出错,指令方块矿车都是按照顺序运行的 ...

{:10_493:}1.8比我早,1.9比我晚……这逻辑……

看下我的1.8版的吧,可以在激活命令方块之后用指令车kill,激活的命令方块才又会用fill:
http://www.mcbbs.net/thread-481006-1-1.html

注意里面的基础指令有更新,在另一个贴


作者: 林扬骐    时间: 2015-10-15 22:59
不过你用岩浆清除倒是启发了我,这样我又可以少影响一格了!
作者: 林扬骐    时间: 2015-10-16 19:37
你把岩浆换成火会更快
作者: ddung    时间: 2015-10-16 20:23
PM又回来了!
作者: 1186626517    时间: 2016-2-17 13:08
Passengers是什么 没人发帖教学案
作者: Java_command    时间: 2016-2-21 18:04
simon3000 发表于 2015-10-14 22:29
哦,那为什么要一个命令方块执行呢?

难道模组还要发教程让玩家一个一个放命令方块吗……
作者: Chewing    时间: 2016-3-11 18:27
simon3000 发表于 2015-10-14 22:26
命令方块越来越高深了
我又一个问题,为什么不弄多几个命令方块,还是就研究着玩?

请问那个魔咒是什么
作者: 回调然后他    时间: 2016-4-18 13:05
PM要不然你做passengers的教程吧,实在没人做了
作者: 飞泉瀑布    时间: 2016-4-18 23:01
提示: 作者被禁止或删除 内容自动屏蔽
作者: 981867644    时间: 2016-6-7 18:26
其他我都懂了,可是最后一个{id:"MinecartCommandBlock",Command:"/fill ~ ~ ~ ~ ~-1 ~ minecraft:air 0 replace"}这个不明白,为什么已经放置岩浆来进行清理了后面还需要加这个指令?
作者: PotatoMaster101    时间: 2016-6-7 18:39
981867644 发表于 2016-6-7 18:26
其他我都懂了,可是最后一个{id:"MinecartCommandBlock",Command:"/fill ~ ~ ~ ~ ~-1 ~ minecraft:air 0 re ...

这是前面忘记移除的指令。因为在研究这个的时候,第一版本是直接/fill,而没有岩浆。第二版才加入了岩浆,但是没把第一版的东西删掉。
作者: 981867644    时间: 2016-6-7 18:41
PotatoMaster101 发表于 2016-6-7 18:39
这是前面忘记移除的指令。因为在研究这个的时候,第一版本是直接/fill,而没有岩浆。第二版才加入了岩浆 ...

后来发现fill并不能清理掉掉落的命令方块矿车是吗233333(别笑,我也是刚刚才发现{:10_492:})
作者: 981867644    时间: 2016-6-7 18:41
推荐最后用{id:"MinecartCommandBlock",Command:"/fill ~-1 ~-1 ~1 ~1 ~-1 ~-1 minecraft:lava 7 replace"}来结尾,这样可以100%清除掉落的红石铁轨
作者: 981867644    时间: 2016-6-7 19:39
大神大神我有个问题,为什么我用这段指令召唤的牌子没有文本?我明明写在里面了
/summon FallingSand ~ ~1 ~
{Time:1,Block:"minecraft:redstone_block",Passengers:[{id:"FallingSand",Time:1,Block:"minecraft:activator_rail",Passengers:[{id:"MinecartCommandBlock",Command:" /setblock ~ ~2 ~ wall_sign 1 replace {Text1:\"{text:\\\"文本\\\",bold:False,italic:False,underlined:False,strikethrough:False,color:颜色,clickEvent:{action:run_command,value:\\\"命令\\\"}}\",Text2:\"{text:\\\"文本\\\",bold:False,italic:False,underlined:False,strikethrough:False,color:颜色,clickEvent:{action:run_command,value:\\\"命令\\\"}}\",Text3:\"{text:\\\"文本\\\",bold:False,italic:False,underlined:False,strikethrough:False,color:颜色,clickEvent:{action:run_command,value:\\\"命令\\\"}}\",Text4:\"{text:\\\"文本\\\",bold:False,italic:False,underlined:False,strikethrough:False,color:颜色,clickEvent:{action:run_command,value:\\\"命令\\\"}}\"}"},{id:"MinecartCommandBlock",Command:"/setblock ~ ~-1 ~ minecraft:lava 7 replace"}]}]}
作者: PotatoMaster101    时间: 2016-6-9 19:39
981867644 发表于 2016-6-7 19:39
大神大神我有个问题,为什么我用这段指令召唤的牌子没有文本?我明明写在里面了
/summon FallingSand ~ ~1  ...

bold:False,italic:False,underlined:False,strikethrough:False,color:颜色
作者: 981867644    时间: 2016-6-11 12:13
PotatoMaster101 发表于 2016-6-9 19:39
bold:False,italic:False,underlined:False,strikethrough:False,color:颜色

我已经解决了,是要在所有的代码前面和后面都加入///"不然命令方块无法分析。。坑爹的mojang,越改越麻烦
作者: PotatoMaster101    时间: 2016-6-11 23:08
本帖最后由 PotatoMaster101 于 2017-12-6 18:39 编辑
981867644 发表于 2016-6-11 12:13
我已经解决了,是要在所有的代码前面和后面都加入///"不然命令方块无法分析。。坑爹的mojang,越改越麻烦 ...

23333 要转译
作者: ColorPencil    时间: 2018-7-25 11:19
simon3000 发表于 2015-10-14 22:26
命令方块越来越高深了
我又一个问题,为什么不弄多几个命令方块,还是就研究着玩?

CYQ哈哈哈
网曝临时工cyq攻击自家论坛?