本帖最后由 烈林凤 于 2024-5-15 20:49 编辑
我对这个功能也有点兴趣,便稍微写了一下
[RenPy] 纯文本查看 复制代码 define text_character_A = [0,1]
define text_character_B = [0]
default hovered_show = ""
screen character_screen:
fixed:
add "#fff"
xycenter(0.5,0.5)
xysize(1500,1000)
vbox:
spacing 10
align (0.05,0.05)
textbutton "角色A的故事":
hovered SetVariable("hovered_show","A")
action Jump("character_part_A")
textbutton "角色B的故事":
hovered SetVariable("hovered_show","B")
action Jump("character_part_B")
frame:
align (0.9,0.5)
xysize(1000,900)
if hovered_show == "A":
vbox:
if 0 in text_character_A:
text "这是一句话。"
if 1 in text_character_A:
text "这是之后的第一句话。"
if 2 in text_character_A:
text "这是第二句话。"
if hovered_show == "B":
vbox:
if 0 in text_character_B:
text "该角色故事未解锁,请去查看A的故事。"
if 1 in text_character_B:
text "这是角色B的故事。"
if 2 in text_character_B:
text "这是B的第二句简介"
label start:
while True:
call screen character_screen
return
label character_part_A:
"A" "我是角色A。"
"A" "我将讲述我的角色故事。"
"A" "Long long ago……"
$ text_character_A.append(2)
$ text_character_B.append(1)
$ text_character_B.remove(0)
"A" "我讲完了,你可以回到上一级进行查看了。"
return
label character_part_B:
"B" "我是角色B。"
"B" "我将讲述我的角色故事。"
"B" "Long long ago……"
$ text_character_B.append(2)
"B" "我讲完了,你可以回到上一级进行查看了。"
return
没有写注释,因为实现这样的功能非常简单,翻阅文档就能知道使用方法,代码复制运行之后能直接看到效果
诅咒章鱼大大写的解决方法稍微有些笼统,关于那个动态可视组件,那个只能显示可视化组件(image),既然你需要的是文本,那不需要使用
我写的这个方法也存在一定可优化的部分,自己再多去尝试一下吧。
|