马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
之前我在到处在找密码锁相关的教程,可怎么也找不到,于是我询问了qq群里的各位大佬,终于自己摸索出来了!非常感谢各位!
因为我本职是学美术的,不太习惯使用注释,所以说我就使用图文的方式进行讲解咯!也方便萌新理解其中的原理。
(想抄代码直接翻到下面,没有注释)
那么,我们来先了解一下密码锁的每个部件吧(所有名字都是我自己随意取的……):
这些代码的原理几乎是一目了然,甚至没有用多少renpy以外的python代码,算是非常适合萌新来学习了。
首先得有一串代码接入中转站:
[RenPy] 纯文本查看 复制代码 label start:
$ number = "0000" # 将密码重置
if unlock == 0: # 判断是否拥有钥匙(否)
call lock_right # 进入密码锁
elif unlock == 1: # 判断是否拥有钥匙(是)
jump enter # 解锁成功
return
这个就看你的需求了,只是举个例子,反正能转到中转站就行
再定义一下输入框的内容和钥匙:
[RenPy] 纯文本查看 复制代码 define number = ""
define unlock = 0
接下来就是进入中转站:
[RenPy] 纯文本查看 复制代码 label lock_right:
if number == "0721": # 判断出正确的密码
$ unlock = 1 # 获得钥匙
centered "{size=50}{color=#ABFF89}解锁成功" # 解锁提示
jump fangxiang2 # 离开中转站,进行下一步剧情
else: # 判断其他错误的密码
call screen unlock_right # 打开密码锁界面
return
至于这个正确的密码,我写的是“0721”(Ciallo~(∠・ω< )⌒☆),这个可以根据自己的需求进行修改
然后就要进入密码锁的本体了:
NO.1
[RenPy] 纯文本查看 复制代码 frame: # 创建一个界面
xcenter 0.5 # 使锚点的x轴居中
ycenter 0.5 # 使锚点的y轴居中(使输入框的位置放在屏幕正中央)
xsize 300 # 使输入框的宽度改为300
ysize 75 # 使输入框的高度改为300
input value VariableInputValue("number"): # 创建输入框,使输入框的内容传给number
default "输入密码" # 默认显示内容,可有可无
length 4 # 限制输入的长度
allow "1234567890" # 限制输入的字符
copypaste True # 允许粘贴,默认是F
size 50 # 改变输入字符的大小
想要使用更多功能,可以参考中文文档:界面行为(action)、值(value)和函数 — Ren'Py 中文文档 (renpy.cn)
NO.2
[RenPy] 纯文本查看 复制代码 frame:
xcenter 0.6
ycenter 0.6
textbutton "关闭": # 创建一个文字按钮
action Jump("unknownkey_fx") # 返回进入中转站之前的界面
jump(“”)里面的内容请按需要进行修改
NO.3
[RenPy] 纯文本查看 复制代码 frame:
xcenter 0.4
ycenter 0.6
textbutton ("确定"):
text_color "#d36363ff" # 改变文字按钮的颜色
text_hover_color "#003644ff" # 获得鼠标焦点使文字改变颜色
text_selected_color "#003644ff" # 被点击后改变文字的颜色
action Jump("lock_right") # 回到中转站判断密码是否正确
颜色的代码可以看HTML颜色代码 (htmlcolorcodes.com)来选择
NO.4
[RenPy] 纯文本查看 复制代码 text "密码锁": # 显示密码锁标题
color "#ffffff"
xcenter 0.4
ycenter 0.4
这个是可有可无的部分。
可以抄代码了:
[RenPy] 纯文本查看 复制代码 define number = ""
define unlock = 0
label lock_right:
if number == "0721":
$ unlock = 1
centered "{size=50}{color=#ABFF89}解锁成功"
jump fangxiang2
else:
call screen unlock_right
return
screen unlock_right:
frame:
xcenter 0.5
ycenter 0.5
xsize 300
ysize 75
input value VariableInputValue("number"):
default "输入密码"
length 4
allow "1234567890"
copypaste True
size 50
frame:
xcenter 0.6
ycenter 0.6
textbutton "关闭":
action Jump("unknownkey_fx")
frame:
xcenter 0.4
ycenter 0.6
textbutton ("确定"):
text_color "#d36363ff"
text_hover_color "#003644ff"
text_selected_color "#003644ff"
action Jump("lock_right")
text "密码锁":
color "#ffffff"
xcenter 0.4
ycenter 0.4
第一次做经验贴,有不好的地方请见谅。
我也只不过是个刚自学了一个月的renpy的萌新,python代码不太懂,有错误欢迎指出
(反,反正代码能跑就行了嘛……)
|