必要な変数を用意
options.rpy
default ask = "" default conf = conf1 define conf1 = _("☐次回からこの画面を表示しない") define conf2 = _("☑次回からこの画面を表示しない") define conf3 = ("persistent.ask_save","persistent.ask_del","persistent.ask_load","persistent.ask_title")
confirmを使用するボタンにactionを追加
screens_saveload.rpy
screen file_slots(title): (省略) button: (省略) action [SetVariable("ask", "persistent.ask_load"),FileLoad(slot, confirm=persistent.ask_load)] (省略) action [SetVariable("ask", "persistent.ask_save"),FileSave(slot, confirm=persistent.ask_save)] (省略) action [SetVariable("ask", "persistent.ask_del"),FileDelete(slot, confirm=persistent.ask_del)] (省略)
screens.rpy
screen navigation(): (省略) textbutton _("タイトル") action [SetVariable("ask", "persistent.ask_title"),MainMenu(confirm=persistent.ask_title)]
confirmのコードを変更
screen confirm(message, yes_action, no_action): modal True zorder 200 layer "confirm" style_prefix "confirm" add "conf_background" dismiss action [If(conf==conf2,true=SetVariable(ask, False), false=SetVariable("ask", "")),SetVariable("conf", conf1), SetVariable("ask", ""),no_action] key "game_menu" action [If(conf==conf2,true=SetVariable(ask, False), false=SetVariable("ask", "")),SetVariable("conf", conf1), SetVariable("ask", ""),no_action] frame at conf_appear: vbox: xalign .5 yalign .5 spacing 30 label _(message): style "confirm_prompt" xalign 0.5 hbox: xalign 0.5 spacing 50 if "quitload" in ask: textbutton _("Yes") action [If(conf==conf2,true=SetVariable(ask, 2), false=SetVariable("ask", "")),SetVariable("conf", conf1), SetVariable("ask", ""),yes_action] background "color2" hover_background "color4" textbutton _("No!") action [If(conf==conf2,true=SetVariable(ask, 2), false=SetVariable("ask", "")),SetVariable("conf", conf1), SetVariable("ask", ""),no_action] else: textbutton _("Yes") action [If(conf==conf2,true=SetVariable(ask, False), false=SetVariable("ask", "")),SetVariable("conf", conf1), SetVariable("ask", ""),yes_action] background "color2" hover_background "color4" textbutton _("No!") action [If(conf==conf2,true=SetVariable(ask, False), false=SetVariable("ask", "")),SetVariable("conf", conf1), SetVariable("ask", ""),no_action] if ("save" in ask and persistent.ask_save == True) or ("del" in ask and persistent.ask_del == True) or ("load" in ask and persistent.ask_load == True) or ("title" in ask and persistent.ask_title == True) or ("quitload" in ask and persistent.quitload > 0): textbutton "[conf]": style_prefix "confirm2" action [ToggleVariable("conf", true_value=conf2,false_value=conf1)]