在我的世界中用命令方块实现各种功能是一种乐趣,最近研究出用命令方块的制作密码锁的办法,需要的玩家可以看一下。
命令制作密码锁的方法
这个按钮锁是用1.7的新指令 /setblock 完成。由于/setblock指令无延迟,所以这个按钮锁也是速度极快,级稳定的。这个按钮锁还可以重复密码,所以即使是2*2的一个键盘,就可拥有10位数的密码。键盘也可以无限加大,因为键盘后面纯指令方块,无任何红石。键盘讲解:
大家看到有些键后面没有指令方块,是因为当初设密码时并没有用到那个按钮。按钮键盘是设置密码的关键。密码不是从锁存器,移位器那些地方设置的,而是直接在键盘设置。如果密码是123456789的话,那按钮1就会链接到第一个输入,2就会链接到第二个输入,以此类推。等最后个输入完成后,密码就是正确,打开输出。但如果第一个输入还没打开,就开第二个输入,此后会激活一条清空线路,把已打开的输入全部关闭,只开启第一个,到时就要重新打密码了。
之后就是锁存器/移位器部分。这个机器是永远不会卡机的。当按钮输入密码时,每个按钮会在一个独特的输入放一个红石块。红石块一放下来就会被清空,之后红石块的信号会被一档的中续器传输到机器里。之后第一步是再清空下红石块的地方,以防有人按按钮太快导致红石块卡住。清空完毕后就进入锁存器探测了。如果那个输入还没开启,就会激活一条清空线,清空所有输入。如果输入开启,就代表密码正确,开启下一位输入。之后每次打对一位密码时,输入会关闭自己,打开下一个输入。所以如果同时按两次相同的密码时,也算是错误密码,会被重置,除非设置成两次重复密码。
上图是移位器正在运行,当时第四个输入开启了,玩家就要输入第四位密码。之后就是重复密码部位。如果玩家设置的密码里没有重复密码,那这个按钮锁将会是十分的简单,只需一排内存就够了。如果有重复密码,需要两排。如果有位密码有重复,每次按按钮时会在那位密码地方放置2个红石块 - 第一个在第一位重复,第二个在第二位重复。这个有一点点延迟,因为键盘后已经没位置放置2个指令方块了,而一个指令方块无法同时刷出2个红石块在两个不同的区域,于是本人用的方法是:当第一位重复密码激活时,又会激活另一个指令方块,会在第二位重复密码的地方放一个红石块。这期间差不都有低于一档的延迟,所以种的来说还是十分的快。这就是第二层内存的用处了,确保重复密码的正确性,要达到当第一位重复密码正确时,才会开启第二位重复密码的输入。
OK,按钮锁部位就说完了。指令方块做按钮锁好处是:键盘可以无限增大/不限形状等等。之后部位也可以分拆,适合隐蔽。这个按钮锁的输出我用的是无线红石,用8tick的时间激活一个活塞。当然可以随意改动,弄成T触发器也可以。