PS:因为最近论坛图片总是崩,所以少发图
外景

效果(87x5)



结构
好了0w0接下来图片发完了,让我们来讲讲原理把
计算区域(2b大大的杰作!):先是计分版移位,比如8的按键,它所运行的指令是:
/scoreboard players operation @p a *= @p 10
/scoreboard players add @a a 8
意思是将之前的数据向左移一位,再加上8
其他同理。
再是四则运算,先
/scoreboard players set @p b 0
/scoreboard players operation @p b += @p a(将变量a的值储存在b里)
/scoreboard players set @a a 0(将变量a清零)
/scoreboard players operation @p b += @p a(用变量b加上后来输入的变量a)
其他同理
输入区:
也是输入8:
/clone 1075 23 1017 1073 19 1017 1073 31 1018(将”8“的字符复制到第一位)
/clone 1075 31 1016 1053 35 1016 1049 31 1018(将除最后一位的所有数字向右移一位[复制到它右边一位])
/fill 1073 31 1018 1075 35 1018 wool(清空第一位)
退位区域:
/scoreboard players operation @p a /= @p 10(将变量a的数据除以10[计分版不保留小数])
/clone 1071 31 1016 1049 35 1016 1053 31 1018(将除第一位的所有数字向左移一位[复制到它左边一位])
/fill 1073 31 1018 1075 35 1018 wool(清空第一位)
输出区域(空白大大和2b大大同时想到的):
/scoreboard players set @p c 0(设置变量c为0)
/scoreboard players operation @p c += @p b(将变量b的值赋给变量c)
/testfor @p[score_c_min=1,score_c=1](判断变量c是否等于1)
/testfor @p[score_c_min=2,score_c=2](判断变量c是否等于2)
/testfor @p[score_c_min=3,score_c=3](判断变量c是否等于3)
……
/testfor @p[score_c_min=9,score_c=9](判断变量c是否等于9)
/testfor @p[score_c_min=0,score_c=0](判断变量c是否等于0)
/scoreboard players operation @p c %= @p 10(将变量c除以10求余)
/clone 1075 22 1016 1066 22 1016 1066 20 1016(复位)
/scoreboard players operation @p b /= @p 10(变量b退一位)
(这是我的构造,真正稳定的还没发帖!)
PS:有价值的值得学习的地方已经讲完了,目前可以看到,指令方块凭着1.8更新的短短一段时间赶上了红石近几年的成就
那么接下来它会蜕变成什么样子呢?让我们拭目以待把!
操作方法:键入数字后按四则运算键再按求值键即可,操作键:Backspace(退格)、Clear(清空)、=(英文不会写QAQ求值)
存档: New World.zip (309.99 KB, 下载次数: 24)


[groupid=546]Command Block Logic[/groupid]