init python: if not hasattr(persistent, 'gallery_unlock_mode'): persistent.gallery_unlock_mode = "normal" def unlock_all_gallery_scenes(): persistent.gallery_scene1_unlocked = True persistent.gallery_scene2_unlocked = True persistent.gallery_scene3_unlocked = True persistent.gallery_scene4_unlocked = True persistent.gallery_scene5_unlocked = True persistent.gallery_scene6_unlocked = True persistent.gallery_scene7_unlocked = True persistent.gallery_scene8_unlocked = True persistent.gallery_scene9_unlocked = True persistent.gallery_scene10_unlocked = True persistent.gallery_scene11_unlocked = True persistent.gallery_intro_seen = True persistent.gallery_mode = "full" def lock_all_gallery_scenes(): persistent.gallery_scene1_unlocked = False persistent.gallery_scene2_unlocked = False persistent.gallery_scene3_unlocked = False persistent.gallery_scene4_unlocked = False persistent.gallery_scene5_unlocked = False persistent.gallery_scene6_unlocked = False persistent.gallery_scene7_unlocked = False persistent.gallery_scene8_unlocked = False persistent.gallery_scene9_unlocked = False persistent.gallery_scene10_unlocked = False persistent.gallery_scene11_unlocked = False persistent.gallery_intro_seen = False persistent.gallery_mode = "safe" def toggle_gallery_mode(): if persistent.gallery_unlock_mode == "normal": persistent.gallery_unlock_mode = "all" unlock_all_gallery_scenes() else: persistent.gallery_unlock_mode = "normal" lock_all_gallery_scenes() if persistent.gallery_unlock_mode == "all": unlock_all_gallery_scenes() else: lock_all_gallery_scenes() screen gallery_unlock_mode(): modal True frame: xfill True yfill True background "#000000cc" frame: xsize 600 ysize 550 xalign 0.5 yalign 0.5 background "#2a2a2a" padding (20, 20) vbox: spacing 20 hbox: xfill True spacing 10 text "Gallery Unlocker" size 22 color "#ffffff" bold True textbutton "✕": action Hide("gallery_unlock_mode") xalign 1.0 text_size 18 text_color "#cccccc" text_hover_color "#ffffff" frame: xfill True ysize 1 background "#444444" text "Toggle individual scenes on/off:" size 14 color "#cccccc" xalign 0.0 frame: xfill True ysize 350 background "#333333" padding (15, 15) viewport: scrollbars "vertical" mousewheel True vbox: spacing 10 hbox: xfill True spacing 10 text "Scene" size 16 color "#ffffff" bold True xsize 100 text "Status" size 16 color "#ffffff" bold True xsize 100 text "Action" size 16 color "#ffffff" bold True xsize 100 frame: xfill True ysize 1 background "#555555" hbox: xfill True spacing 10 text "Scene 1" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene1_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene1_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene1_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene1_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 2" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene2_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene2_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene2_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene2_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 3" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene3_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene3_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene3_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene3_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 4" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene4_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene4_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene4_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene4_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 5" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene5_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene5_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene5_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene5_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 6" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene6_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene6_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene6_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene6_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 7" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene7_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene7_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene7_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene7_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 8" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene8_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene8_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene8_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene8_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 9" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene9_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene9_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene9_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene9_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 10" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene10_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene10_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene10_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene10_unlocked") text_size 12 xsize 80 hbox: xfill True spacing 10 text "Scene 11" size 14 color "#ffffff" xsize 100 text persistent.gallery_scene11_unlocked and "Unlocked" or "Locked" size 14 color persistent.gallery_scene11_unlocked and "#00ff00" or "#ff0000" xsize 100 textbutton persistent.gallery_scene11_unlocked and "Lock" or "Unlock": action ToggleField(persistent, "gallery_scene11_unlocked") text_size 12 xsize 80 hbox: xalign 1.0 spacing 10 textbutton "Unlock All": action Function(unlock_all_gallery_scenes) text_size 14 text_color "#ffffff" text_hover_color "#00ff00" background "#007acc" hover_background "#005a99" xsize 100 ysize 35 text_xalign 0.5 textbutton "Lock All": action Function(lock_all_gallery_scenes) text_size 14 text_color "#ffffff" text_hover_color "#ff0000" background "#cc0000" hover_background "#990000" xsize 100 ysize 35 text_xalign 0.5 textbutton "Close": action Hide("gallery_unlock_mode") text_size 14 text_color "#ffffff" text_hover_color "#cccccc" background "#444444" hover_background "#666666" xsize 80 ysize 35 text_xalign 0.5 screen gallery_unlocker_button(): pass screen gallery_hotkey(): key "g" action Show("gallery_unlock_mode") key "G" action Show("gallery_unlock_mode") init python: config.overlay_screens.append("gallery_hotkey")