找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 996|回复: 0

[经验] 使用集合set记录,给选择过的选项加上标签以标记

[复制链接]
发表于 2022-1-22 23:55:55 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
前面我已经讲过,别的引擎都有的功能,咱们renpy不能没有,拼了老命也要写出来,除非python无法实现
首先感谢lemma论坛Ocelot老哥的支持!

直接完全改写screen choice另外附带了选项多于6个以列表显示的功能
[RenPy] 纯文本查看 复制代码
default menuset = set()#一个无序不重复集合

screen choice(items):
    style_prefix "choice"

    # on "hide" action With(Dissolve(1.0))
    # on "show" action With(Dissolve(2.0))

    if len(items) >= 6:
        viewport:
            draggable True
            mousewheel True
            scrollbars "vertical"

            xsize gui.choice_button_width
            ysize config.screen_height - 180

            xalign 0.5
            yalign 0.5

            vbox:
                for i in items:
                        if i.caption in menuset:
                            textbutton "{image=bookmark}[i.caption]" action i.action
                        else:
                            textbutton i.caption:
                                action [AddToSet(menuset, i.caption),i.action]
    else:
        vbox:
            for i in items:
                if i.caption in menuset:
                    textbutton "{image=bookmark}[i.caption]" action i.action
                else:
                    textbutton i.caption:
                        action [AddToSet(menuset, i.caption),i.action]

QQ截图20220122235622.png
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|RenPy中文空间 ( 苏ICP备17067825号|苏公网安备 32092302000068号 )

GMT+8, 2024-4-26 12:19 , Processed in 0.060062 second(s), 14 queries , File On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表