模块:Pwd/doc:修订间差异

来自Limbo Wiki
无编辑摘要
标签(旧)WikiEditor
无编辑摘要
标签(旧)WikiEditor
第5行: 第5行:


不写教程了,自己去看模块的注释,我先爬了
不写教程了,自己去看模块的注释,我先爬了
==简要教程(来自AtomTheory)==
<poem>
===一、密码盘源代码===
模块:Pwd的密码盘分为数字密码盘和字母密码盘,二者对应的最基础的源代码如下(未指定任何特殊按键,即为上方出现的密码盘):
数字密码盘:<nowiki>{{#invoke:pwd|get|Number|a}}</nowiki>
字母密码盘:<nowiki>{{#invoke:pwd|get|Word|b}}</nowiki>
目前已有使用的页面的密码盘通常都以以下源代码为基础,在其中添加元素而成:
<nowiki>{{#invoke:pwd|get|Word|class=def|2=w|2-10=def|3-8=def}}</nowiki>
(请注意,此处的“3-8=def”在有的地方“def”需要变成其他内容,具体在下方有提及)
'''每一个<nowiki>{{#invoke:pwd|get|Word|a}}</nowiki>对应一个键盘,密码盘包括多行此类代码'''
此处可以按照自己的需求加上指定按钮,只需要在其中加入相应指定内容(详见下方第二部分),用“|”隔开即可
===二、指定按钮===
以字母密码盘为例,在模块中,若需要指定正确密码为password,并且指定此步骤输入字母正确为r,错误为w。
*那么在第一步时密码盘就应该是这个样子:
''<nowiki>{{#invoke:pwd|get|Word|class=def|2=w|2-10=def|3-8=def|1-10=r}}</nowiki>''
此处的class=def指密码盘处于初始状态,“def”可以更改为其他任何文本内容
这里2-10对应的是“X”,即清空按钮;3-8对应的是退格按钮
“1-10=r”即指定第一行第十个按钮(p)对应r状态(相当于就是指定了一个TreeButton)
“2=w”即指定剩余所有没有被指定的按钮对应w状态
*假设第一步输入正确,第二部则是这个样子:
''<nowiki>{{#invoke:pwd|get|Word|class=r|2=rw|2-10=def|3-8=def|2-1=rr|style=display:none;}}</nowiki>''
此处,密码盘第一步正确(class=r)。此时若输入错误,为了让下一步退格可以回到此步骤而非被直接判错,指定错误状态为rw,相当于按照步骤顺序记录了不同步骤的正确情况,下一步时按退格可以回到r状态(3-8=r)。输入a正确,则a对应状态为rr。
*假设第一步输入错误,第二步则是这个样子:
''<nowiki>{{#invoke:pwd|get|Word|class=w|2=ww|2-10=def|3-8=def|style=display:none;}}</nowiki>''
此处的“style=display:none;”即指这行代码对应的键盘只有在密码盘处于w状态时才会展示,避免页面打开时此键盘错误地出现(页面打开时应当只有初始状态键盘显示)影响观感以及解密体验。
显然,此处由于第一步已经错误(因此密码盘已经处于w的状态,class=w),所以接下来除了退格和删除之外无论做什么都是错误的,故不需要指定特殊按钮,只需要指定“2=ww”即可
*假设前面均输入正确,最后一步则是这个样子:
''<nowiki>{{#invoke:pwd|get|Word|class=rrrrrrr|2=wwwwwwww|2-10=def|3-8=rrrrrr|2-3=rrrrrrrr|style=display:none;}}</nowiki>''
这里因为是最后一步,输入过后直接判定密码是否正确,故不论任何的含有错误字母的情况都视作全错处理更佳。
===排版建议&其他===
对于一般的只有一个密码的密码盘,建议按照如下排版顺序摆放(这里用def,w,r等代指处于不同状态的键盘):
def
w
r
ww
rw
rr
www
rww
rrw
rrr
……
参考:
[[金域]]的密码盘,含有两个6位字母密码,占用字节约3400
[[末日的幻想乡]]的密码盘,4位数字密码,占用字节不足1000
</poem>

2022年12月10日 (六) 08:17的版本

123
456
789
X0

qwertyuiop
asdfghjklX
zxcvbnm

不写教程了,自己去看模块的注释,我先爬了

简要教程(来自AtomTheory)

===一、密码盘源代码===

模块:Pwd的密码盘分为数字密码盘和字母密码盘,二者对应的最基础的源代码如下(未指定任何特殊按键,即为上方出现的密码盘):
数字密码盘:{{#invoke:pwd|get|Number|a}}
字母密码盘:{{#invoke:pwd|get|Word|b}}

目前已有使用的页面的密码盘通常都以以下源代码为基础,在其中添加元素而成:
{{#invoke:pwd|get|Word|class=def|2=w|2-10=def|3-8=def}}
(请注意,此处的“3-8=def”在有的地方“def”需要变成其他内容,具体在下方有提及)

每一个{{#invoke:pwd|get|Word|a}}对应一个键盘,密码盘包括多行此类代码

此处可以按照自己的需求加上指定按钮,只需要在其中加入相应指定内容(详见下方第二部分),用“|”隔开即可

===二、指定按钮===

以字母密码盘为例,在模块中,若需要指定正确密码为password,并且指定此步骤输入字母正确为r,错误为w。

  • 那么在第一步时密码盘就应该是这个样子:

{{#invoke:pwd|get|Word|class=def|2=w|2-10=def|3-8=def|1-10=r}}

此处的class=def指密码盘处于初始状态,“def”可以更改为其他任何文本内容
这里2-10对应的是“X”,即清空按钮;3-8对应的是退格按钮
“1-10=r”即指定第一行第十个按钮(p)对应r状态(相当于就是指定了一个TreeButton)
“2=w”即指定剩余所有没有被指定的按钮对应w状态

  • 假设第一步输入正确,第二部则是这个样子:

{{#invoke:pwd|get|Word|class=r|2=rw|2-10=def|3-8=def|2-1=rr|style=display:none;}}

此处,密码盘第一步正确(class=r)。此时若输入错误,为了让下一步退格可以回到此步骤而非被直接判错,指定错误状态为rw,相当于按照步骤顺序记录了不同步骤的正确情况,下一步时按退格可以回到r状态(3-8=r)。输入a正确,则a对应状态为rr。

  • 假设第一步输入错误,第二步则是这个样子:

{{#invoke:pwd|get|Word|class=w|2=ww|2-10=def|3-8=def|style=display:none;}}

此处的“style=display:none;”即指这行代码对应的键盘只有在密码盘处于w状态时才会展示,避免页面打开时此键盘错误地出现(页面打开时应当只有初始状态键盘显示)影响观感以及解密体验。
显然,此处由于第一步已经错误(因此密码盘已经处于w的状态,class=w),所以接下来除了退格和删除之外无论做什么都是错误的,故不需要指定特殊按钮,只需要指定“2=ww”即可

  • 假设前面均输入正确,最后一步则是这个样子:

{{#invoke:pwd|get|Word|class=rrrrrrr|2=wwwwwwww|2-10=def|3-8=rrrrrr|2-3=rrrrrrrr|style=display:none;}}

这里因为是最后一步,输入过后直接判定密码是否正确,故不论任何的含有错误字母的情况都视作全错处理更佳。

===排版建议&其他===

对于一般的只有一个密码的密码盘,建议按照如下排版顺序摆放(这里用def,w,r等代指处于不同状态的键盘):

 def
 
 w
 r

 ww
 rw
 rr
 
 www
 rww
 rrw
 rrr
 
 ……

参考:
金域的密码盘,含有两个6位字母密码,占用字节约3400
末日的幻想乡的密码盘,4位数字密码,占用字节不足1000