本帖最后由 Yyf88 于 2016-12-16 20:28 编辑
百度上找到了一些错误的指令:
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
我把它放在了1.8.1纯版的命令方块中运行了一下
然而,不告示牌,不但没有生成,反而开始对nbt标签报错
===============[redstone_dust]以下正式开始教程[redstone_dust]===============
[diamond_gem]了解符号\"(斜杠莫打反){:10_492:}
如果你学过程序,你很幸运
如果你没有学过,没有关系,可以听我讲解
这个符号用在双引号内表示"比如c:printf("\"hello c\"");
输出:"hello c"
不懂c的同学可以跳过,这里\"和mc里是一样的,我只是懒得打指令而已,你可以试试下面这个指令:
复制代码只是举个例子,大家应该明白这个的意思了吧
来看看刚刚的指令为什么错了鉴于电脑遇见匹配的分号,就会认为那里面就是文本信息,我们用蓝色标出来
\\回调指令
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
由此你可以看到,中间有两个/say 1不在分号内,MC会认为它是NBT标签,就去解析它,/say 1是什么NBT标签,各位大神见过吗?
(\是转移符,主要用于程序中的字符串表示一些不可见字符,如换行符(\n),或者不能直接包含在双引号内的字符,如双引号(英文))
clickEvent
这个可以拆成2个单词来看 click event,意思就是点击事件
中间的action的意思是行动,作用
run_command不解释了,就是运行中的命令
联合后面value看,后面的value中的内容就是输出的命令
接着来讲一下怎么使用之前提到的\"
完整的指令
不如说,我们之前的那个指令:
\\回调指令
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:/say 1,clickEvent:{action:run_command,value:/say 1}}"}
先这样弄吧,看起好像会成功的样子,不过更多的可能是空的告示牌
这个结果有点奇葩,不好说,直接发图:
很明显,这样的做法是错误的这中间的NBT标签并没有用,大段大段地成了输出的文本信息,
而在/say后面的空格极有可能被读成了\0(文本信息结束)
正确的使用方法:
setblock ~ ~1 ~ standing_sign 0 replace {Text1:"{text:\"/sat 1\",clickEvent:{action:\"run_command\",value:\"/say 1\"}}}
下面是给伸手党的任务:{:10_525:}
复制代码看这个指令能不能运行成功
现在注意的内容:
[coca_beans]大括号
[coca_beans]中括号
[rose_red]\"的匹配
除了/say 1,还可以用其他的指令,也可以增加多个命令行
复制代码它是先执行Text1的命令,然后是Text2的命令
↑效果图(虽然我试图用彩色输入,没有显示出来,至少效果还是在的)
(入门篇已完)================================================================
进阶篇:
彩色输入:
大概的结构就是这样的
复制代码通过木牌指令来修改方块
成书点击文字产生事件:
获得一个成书直接give指令不解释复制代码
成书NBT:
[diamond_gem]pages中的extra标签
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
我把它放在了1.8.1纯版的命令方块中运行了一下
然而,不告示牌,不但没有生成,反而开始对nbt标签报错
===============[redstone_dust]以下正式开始教程[redstone_dust]===============
[diamond_gem]了解符号\"(斜杠莫打反){:10_492:}
如果你学过程序,你很幸运
如果你没有学过,没有关系,可以听我讲解
这个符号用在双引号内表示"比如c:printf("\"hello c\"");
输出:"hello c"
不懂c的同学可以跳过,这里\"和mc里是一样的,我只是懒得打指令而已,你可以试试下面这个指令:
只是举个例子,大家应该明白这个的意思了吧
来看看刚刚的指令为什么错了鉴于电脑遇见匹配的分号,就会认为那里面就是文本信息,我们用蓝色标出来
\\回调指令
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
由此你可以看到,中间有两个/say 1不在分号内,MC会认为它是NBT标签,就去解析它,/say 1是什么NBT标签,各位大神见过吗?
(\是转移符,主要用于程序中的字符串表示一些不可见字符,如换行符(\n),或者不能直接包含在双引号内的字符,如双引号(英文))
clickEvent
这个可以拆成2个单词来看 click event,意思就是点击事件
中间的action的意思是行动,作用
run_command不解释了,就是运行中的命令
联合后面value看,后面的value中的内容就是输出的命令
接着来讲一下怎么使用之前提到的\"
完整的指令
不如说,我们之前的那个指令:
\\回调指令
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:/say 1,clickEvent:{action:run_command,value:/say 1}}"}
先这样弄吧,看起好像会成功的样子,不过更多的可能是空的告示牌
这个结果有点奇葩,不好说,直接发图:

很明显,这样的做法是错误的这中间的NBT标签并没有用,大段大段地成了输出的文本信息,
而在/say后面的空格极有可能被读成了\0(文本信息结束)
正确的使用方法:
setblock ~ ~1 ~ standing_sign 0 replace {Text1:"{text:\"/sat 1\",clickEvent:{action:\"run_command\",value:\"/say 1\"}}}
下面是给伸手党的任务:{:10_525:}
看这个指令能不能运行成功
现在注意的内容:
[coca_beans]大括号
[coca_beans]中括号
[rose_red]\"的匹配
除了/say 1,还可以用其他的指令,也可以增加多个命令行
它是先执行Text1的命令,然后是Text2的命令

↑效果图(虽然我试图用彩色输入,没有显示出来,至少效果还是在的)
(入门篇已完)================================================================
进阶篇:
彩色输入:
尊重原作者,给地址:http://www.mcbbs.net/thread-443181-1-1.html
大概的结构就是这样的
通过木牌指令来修改方块
成书点击文字产生事件:
获得一个成书直接give指令不解释
成书NBT:
NBT 内容
author 修改成书的作者
title 成书的标题
pages 书,String类型(对于NBT标签MOD来说),
用MC来说就是一个中括号,里面一对引号就
是一页
实例:
[diamond_gem]pages中的extra标签
用法:和clickEvent很相似,但是作用却极大的不同
这里我就我就不详讲了
自己看指令吧,这一大段,扔进MC命令方块里,看看会发生什么神奇的事情?
是不是出来了一个箱子?箱子里有精美的成书一枚
然后打开看看,里面是不是出现了下面这段文字:
当你的光标划过“射手”的时候,是不是出现了以下文字:
对不对?
讲几个地方,其他不懂的,请在回复留言
hoverEvent 当光标划过(或者悬停在文字上面)的时候响应的事件
show_text 显示一段文字
其他的都很好理解,对不对?
我们还可以再改一下:
这样单机“射手”两字时又会产生另外的一个事件,
如果顺利的话,你应该会获得一个名为“射手凭证”的一张“厕所纸”
百度上找到了一些错误的指令:
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
我把它放在了1.8.1纯版的命令方块中运行了一下
然而,不告示牌,不但没有生成,反而开始对nbt标签报错
===============[redstone_dust]以下正式开始教程[redstone_dust]===============
[diamond_gem]了解符号\"(斜杠莫打反){:10_492:}
如果你学过程序,你很幸运
如果你没有学过,没有关系,可以听我讲解
这个符号用在双引号内表示"比如c:printf("\"hello c\"");
输出:"hello c"
不懂c的同学可以跳过,这里\"和mc里是一样的,我只是懒得打指令而已,你可以试试下面这个指令:
- /say "hello mc"
来看看刚刚的指令为什么错了鉴于电脑遇见匹配的分号,就会认为那里面就是文本信息,我们用蓝色标出来
\\回调指令
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
由此你可以看到,中间有两个/say 1不在分号内,MC会认为它是NBT标签,就去解析它,/say 1是什么NBT标签,各位大神见过吗?
(\是转移符,主要用于程序中的字符串表示一些不可见字符,如换行符(\n),或者不能直接包含在双引号内的字符,如双引号(英文))

这个可以拆成2个单词来看 click event,意思就是点击事件
中间的action的意思是行动,作用
run_command不解释了,就是运行中的命令
联合后面value看,后面的value中的内容就是输出的命令
接着来讲一下怎么使用之前提到的\"

不如说,我们之前的那个指令:
\\回调指令
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:/say 1,clickEvent:{action:run_command,value:/say 1}}"}
先这样弄吧,看起好像会成功的样子,不过更多的可能是空的告示牌
这个结果有点奇葩,不好说,直接发图:

很明显,这样的做法是错误的这中间的NBT标签并没有用,大段大段地成了输出的文本信息,
而在/say后面的空格极有可能被读成了\0(文本信息结束)
正确的使用方法:
setblock ~ ~1 ~ standing_sign 0 replace {Text1:"{text:\"/sat 1\",clickEvent:{action:\"run_command\",value:\"/say 1\"}}}
下面是给伸手党的任务:{:10_525:}
- setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
现在注意的内容:
[coca_beans]大括号
[coca_beans]中括号
[rose_red]\"的匹配
除了/say 1,还可以用其他的指令,也可以增加多个命令行
- setblock ~ ~1 ~ wall_sign 0 replace {Text1:"{text:"想成为土豪金吗?",clickEvent:{action:"run_command",value:"/give @p minecraft:diamond 64"}}",Text2:"{text:"Please click here!",color:red,clickEvent:{action:"run_command",value:"/kill @p"}}"}

↑效果图(虽然我试图用彩色输入,没有显示出来,至少效果还是在的)
(入门篇已完)================================================================
进阶篇:
彩色输入:
大概的结构就是这样的
- summon FallingSand ~ ~1 ~ {Block:command_block,Time:1,TileEntityData:{Command:/setblock ~1 ~ ~ wall_sign 5 replace {Text1:"{text:\\"Click\\",clickEvent:{action:\\"run_command\\",value:\\"(在这里写你的指令,请把万国码换成调试码)\\"}}"}}}
成书点击文字产生事件:

- give @p minecraft:written_book 1 0

[diamond_gem]pages中的extra标签
2021.12 数据,可能有更多内容
百度上找到了一些错误的指令:setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
我把它放在了1.8.1纯版的命令方块中运行了一下
然而,不告示牌,不但没有生成,反而开始对nbt标签报错
===============[redstone_dust]以下正式开始教程[redstone_dust]===============
[diamond_gem]了解符号\"(斜杠莫打反){:10_492:}
如果你学过程序,你很幸运
如果你没有学过,没有关系,可以听我讲解
这个符号用在双引号内表示"比如c:printf("\"hello c\"");
输出:"hello c"
不懂c的同学可以跳过,这里\"和mc里是一样的,我只是懒得打指令而已,你可以试试下面这个指令:
代码:
- /say "hello mc"
来看看刚刚的指令为什么错了鉴于电脑遇见匹配的分号,就会认为那里面就是文本信息,我们用蓝色标出来
\\回调指令
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
由此你可以看到,中间有两个/say 1不在分号内,MC会认为它是NBT标签,就去解析它,/say 1是什么NBT标签,各位大神见过吗?
(\是转移符,主要用于程序中的字符串表示一些不可见字符,如换行符(\n),或者不能直接包含在双引号内的字符,如双引号(英文))

这个可以拆成2个单词来看 click event,意思就是点击事件
中间的action的意思是行动,作用
run_command不解释了,就是运行中的命令
联合后面value看,后面的value中的内容就是输出的命令
接着来讲一下怎么使用之前提到的\"

不如说,我们之前的那个指令:
\\回调指令
setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:/say 1,clickEvent:{action:run_command,value:/say 1}}"}
先这样弄吧,看起好像会成功的样子,不过更多的可能是空的告示牌
这个结果有点奇葩,不好说,直接发图:

很明显,这样的做法是错误的这中间的NBT标签并没有用,大段大段地成了输出的文本信息,
而在/say后面的空格极有可能被读成了\0(文本信息结束)
正确的使用方法:
setblock ~ ~1 ~ standing_sign 0 replace {Text1:"{text:\"/sat 1\",clickEvent:{action:\"run_command\",value:\"/say 1\"}}}
下面是给伸手党的任务:{:10_525:}
代码:
- setblock ~ ~1 ~ minecraft:standing_sign 0 replace {Text1:"{text:"/say 1",clickEvent:{action:run_command,value:"/say 1"}}"}
现在注意的内容:
[coca_beans]大括号
[coca_beans]中括号
[rose_red]\"的匹配
除了/say 1,还可以用其他的指令,也可以增加多个命令行
代码:
- setblock ~ ~1 ~ wall_sign 0 replace {Text1:"{text:"想成为土豪金吗?",clickEvent:{action:"run_command",value:"/give @p minecraft:diamond 64"}}",Text2:"{text:"Please click here!",color:red,clickEvent:{action:"run_command",value:"/kill @p"}}"}

↑效果图(虽然我试图用彩色输入,没有显示出来,至少效果还是在的)
(入门篇已完)================================================================
进阶篇:
彩色输入:
尊重原作者,给地址:http://www.mcbbs.net/thread-443181-1-1.html
大概的结构就是这样的
代码:
- summon FallingSand ~ ~1 ~ {Block:command_block,Time:1,TileEntityData:{Command:/setblock ~1 ~ ~ wall_sign 5 replace {Text1:"{text:\\"Click\\",clickEvent:{action:\\"run_command\\",value:\\"(在这里写你的指令,请把万国码换成调试码)\\"}}"}}}
成书点击文字产生事件:

代码:
- give @p minecraft:written_book 1 0

NBT 内容
author 修改成书的作者
title 成书的标题
pages 书,String类型(对于NBT标签MOD来说),
用MC来说就是一个中括号,里面一对引号就
是一页
实例:
代码:
- setblock ~ ~1 ~ minecraft:chest 4 replace {Items:[{id:"minecraft:written_book",slot:1b,count:1,tag:{title:"§4§l开始游戏",author:"by yyf",pages:["选择职业"]}}]}
[diamond_gem]pages中的extra标签
用法:和clickEvent很相似,但是作用却极大的不同
代码:
- setblock ~ ~1 ~ minecraft:chest 4 replace {Items:[{id:"minecraft:written_book",slot:1b,Count:1,tag:{title:"§4§l开始游戏",author:"by yyf",pages:["{text:"选择职业",extra:[{text:"射手",color:green,hoverEvent:{action:"show_text",value:"射手有很好的机动性"}}]}"]}}]}
自己看指令吧,这一大段,扔进MC命令方块里,看看会发生什么神奇的事情?
是不是出来了一个箱子?箱子里有精美的成书一枚
然后打开看看,里面是不是出现了下面这段文字:
选择职业 射手
当你的光标划过“射手”的时候,是不是出现了以下文字:
射手有很好的机动性
对不对?
讲几个地方,其他不懂的,请在回复留言
hoverEvent 当光标划过(或者悬停在文字上面)的时候响应的事件
show_text 显示一段文字
其他的都很好理解,对不对?
我们还可以再改一下:
代码:
- setblock ~ ~1 ~ minecraft:chest 4 replace {Items:[{id:"minecraft:written_book",slot:1b,Count:1,tag:{title:"§4§l开始游戏",author:"by yyf",pages:["{text:"选择职业",extra:[{text:"射手",color:green,hoverEvent:{action:"show_text",value:"射手有很好的机动性"},clickEvent:{action:"run_command",value:"/give @p minecraft:paper 1 0 {display:{Name:\\"射手凭证\\",Lore:[\\"射手的凭证\\"]}}"}}]}"]}}]}
如果顺利的话,你应该会获得一个名为“射手凭证”的一张“厕所纸”
坐等你修改,然后直接拿过来,我是伸手党,我为自己带盐。
lorinder 发表于 2015-11-14 09:52
伸手党都不回复的23333
坐等修改……
哈哈~说说而已,别在意
然并卵,我什么都没有看懂
额……别人好像早就有全面教程了……你可以去搜一下
很棒,求赶紧更新,因为1.9对这玩意更加严格了1.8的省略内容到了1.9都不行了
此贴必火
谢谢楼主
_hua_px 发表于 2015-11-14 10:39
然并卵,我什么都没有看懂
没看懂+1
请求把第一幅图片去掉。那是本人的教程,被别的网站转了。
他们把转义删掉了,和本人一点关系也没。
原帖在这里:http://www.mcbbs.net/thread-297688-1-1.html
真是侮辱了我的脸
他们把转义删掉了,和本人一点关系也没。
原帖在这里:http://www.mcbbs.net/thread-297688-1-1.html
真是侮辱了我的脸
这个符号的作用是输出一个"
LZ我劝你是学会转义字符究竟什么作用再来发教程吧。
表示命令渣什么也没看懂,就看懂了我在百度找了n年终于找到的东西在这个帖子出现了,对,就是那个错误的指令,呵呵,真开心,再也不相信度娘了QwQ
PotatoMaster101 发表于 2015-12-25 16:06
请求把第一幅图片去掉。那是本人的教程,被别的网站转了。
他们把转义删掉了,和本人一点关系也没。
原帖在 ...
删掉了,最近突然才想起来逛mcbbs