WTS/game/scripts/gui/navigation.rpy
LoafyLemon 2f4e3c3b35 Reimplement main menu (Partial)
* Add new main menu
* Add parallax transform
* Add art placeholders
2024-11-28 18:26:00 +00:00

800 lines
30 KiB
Plaintext

init offset = -1
# screen main_menu():
# # This ensures that any other menu screen is replaced
# tag menu
# style_prefix "main_menu"
# add gui.main_menu_background
# # This empty frame darkens the main menu
# frame:
# pass
# vbox:
# spacing gui.navigation_spacing * 2
# yoffset gui.navigation_padding
# align (1.0, 0.0)
# xsize 300
# add "game_title" zoom 0.75 xalign 0.5
# if prerelease:
# text "TEST-ONLY" at transform:
# rotate 45
# vbox:
# spacing gui.navigation_spacing * 2
# yoffset -gui.navigation_padding
# align (1.0, 1.0)
# fixed:
# xysize (300, 75)
# imagebutton:
# idle Transform("discord_idle", alpha=0.5, zoom=0.5)
# hover Transform("discord_idle", alpha=0.75, zoom=0.55)
# focus_mask None
# pos (0.333, 0.5)
# anchor (0.5, 0.5)
# action OpenURL("https://discord.gg/UbQeTCJ5RW")
# tooltip "Discord"
# imagebutton:
# idle Transform("patreon_idle", alpha=0.5, zoom=0.5)
# hover Transform("patreon_idle", alpha=0.75, zoom=0.55)
# focus_mask None
# pos (0.666, 0.5)
# anchor (0.5, 0.5)
# action OpenURL("https://www.patreon.com/SilverStudioGames")
# tooltip "Patreon"
# fixed:
# xysize (300, 30)
# vbox:
# xoffset -100 - gui.navigation_padding
# yalign 0.5
# at transform:
# alpha 0.6
# if prerelease:
# text "Pre-release":
# style "main_menu_version"
# text "[config.version]":
# style "main_menu_version"
# imagebutton:
# idle Transform("silverstudiogames_idle", alpha=0.5, zoom=0.5)
# hover Transform("silverstudiogames_idle", alpha=0.75, zoom=0.55)
# focus_mask None
# align (0.5, 0.5)
# action OpenURL("https://www.silverstudiogames.org")
# use navigation_main_menu
# image main_menu_bg:
# alpha 0.5
# "#000"
# style main_menu_frame is empty
# style main_menu_vbox is vbox
# style main_menu_frame:
# xalign 1.0
# xsize 300 # 234
# yfill True
# background "main_menu_bg"
# style main_menu_text is gui_text:
# color gui.accent_color
# xalign 1.0
# style main_menu_title is main_menu_text:
# size 42
# style main_menu_version is main_menu_text:
# color "#fff"
# outlines [(1, "#000000", 1, 0)]
# screen navigation_main_menu(title=None):
# default show_quick_start = False
# default show_dev_start = False
# default is_sensitive = title != "Updater"
# key "keydown_K_LSHIFT" action SetLocalVariable("show_quick_start", True)
# key "keyup_K_LSHIFT" action SetLocalVariable("show_quick_start", False)
# if config.developer:
# key "keydown_K_LCTRL" action SetLocalVariable("show_dev_start", True)
# key "keyup_K_LCTRL" action SetLocalVariable("show_dev_start", False)
# vbox:
# style_prefix "navigation"
# if main_menu:
# yalign 1.0
# yoffset -105 - gui.navigation_padding * 2
# else:
# yalign 0.5
# transclude
# null height 28 # Half button height
# if main_menu:
# if not title:
# if not renpy.mobile:
# if version_float(UPDATE_VER) > version_float():
# textbutton "Install updates" action InstallUpdates() style_prefix "update_available" sensitive (not prerelease)
# else:
# textbutton "Check for updates" action CheckUpdates(300) sensitive (not prerelease)
# text "[UPDATE_HINT]" size 8 color "#fff" xalign 0.5
# if show_quick_start:
# textbutton _("Quick Start") action Start("start_quick") sensitive is_sensitive
# elif show_dev_start:
# textbutton _("Developer Start") action Start("start_dev") sensitive is_sensitive keysym "ctrl_mousedown_1"
# else:
# textbutton _("Start") action Start() sensitive is_sensitive
# else:
# textbutton _("Return") action Return() sensitive is_sensitive
# else:
# textbutton _("Return") action Return() sensitive is_sensitive
# textbutton _("History") action ShowMenu("history") sensitive is_sensitive
# textbutton _("Save") action ShowMenu("save") sensitive is_sensitive
# textbutton _("Load") action ShowMenu("load") sensitive is_sensitive
# textbutton _("Preferences") action ShowMenu("preferences") sensitive is_sensitive
# if main_menu:
# textbutton _("Mods") sensitive (bool(mods_list) and is_sensitive) action ShowMenu("mods")
# textbutton _("Credits") action Jump("credits") sensitive is_sensitive
# if not renpy.mobile:
# textbutton _("Quit") action Quit(confirm=not main_menu) sensitive is_sensitive
# else:
# textbutton _("Help") action ShowMenu("help") sensitive is_sensitive
# textbutton _("Quit to menu") action MainMenu() sensitive is_sensitive
screen main_menu():
style_prefix "main_menu"
add "#2e2e2e"
add At(main_menu_background, parallax(1))
add Transform("vignette", matrixcolor=ColorizeMatrix("#2e2e2e", "#fff"))
default show_quick_start = False
default show_dev_start = False
key "keydown_K_LSHIFT" action SetLocalVariable("show_quick_start", True)
key "keyup_K_LSHIFT" action SetLocalVariable("show_quick_start", False)
if config.developer:
key "keydown_K_LCTRL" action SetLocalVariable("show_dev_start", True)
key "keyup_K_LCTRL" action SetLocalVariable("show_dev_start", False)
add "main_menu_characters" anchor (0.5, 0.0) xpos 0.65 zoom 0.8
text "{size=-6}ver{/size}[config.version]" align (1.0, 0.0) offset (-15, 15)
frame:
style "empty"
align (0.0, 0.5)
xoffset 20
xsize 400
vbox:
add "game_logo" xalign 0.5
spacing 0
null height 12
if show_quick_start:
textbutton _("Quick Start") action Start("start_quick")
elif show_dev_start:
textbutton _("Dev Jump") action Start("start_dev") keysym "ctrl_mousedown_1"
else:
textbutton _("New Game") action Start() at main_menu_button_anim
textbutton _("Continue") action Show("navigation", default_category="load") keysym "game_menu" at main_menu_button_anim
textbutton _("Options") action Show("navigation", default_category="settings", default_subcategory="general") at main_menu_button_anim
# textbutton _("Mods") action ShowMenu("mods")
# textbutton _("Credits") action Show("credits")
if not renpy.mobile:
textbutton _("Quit") action Quit(confirm=not main_menu) at main_menu_button_anim
vbox:
align (1.0, 1.0)
offset (11, -16)
spacing 0
button:
xalign 0.5
xysize (157, 157)
style "main_menu_socials_button"
add studio_logo_anim align (0.5, 0.5) yoffset 15
tooltip "www.SilverStudioGames.org"
action OpenURL("https://www.silverstudiogames.org")
hbox:
spacing 6
xalign 0.5
style_prefix "main_menu_socials_button"
button:
add discord_logo_anim
tooltip _("Join the Discord!{#Content available in English Only}")
action OpenURL("https://discord.com/invite/UbQeTCJ5RW")
button:
add patreon_logo_anim
tooltip _("Join the Patreon!{#Content available in English Only}")
action OpenURL("https://www.patreon.com/SilverStudioGames")
button:
add subscribestar_logo_anim
tooltip _("Join the Subscribestar!{#Content available in English Only}")
action OpenURL("https://subscribestar.adult/ssg")
hbox:
align (0.0, 1.0)
offset (16, -10)
spacing 5
style_prefix "main_menu_flags"
for lang in ["🇬🇧", "🇨🇳", "🇷🇺", "🇵🇱", "🇺🇦", "🇸🇪", "🇫🇷"]:
textbutton lang action NullAction() at main_menu_flag_anim
style main_menu_socials_button is empty
style main_menu_button:
xalign 0.5
padding (6, 6)
xfill True
hover_background Frame(Image("gui/creamy_pumpkin_pie/choice_alt.png", oversample=4), 0, 4, 0, 4, tile=False)
style main_menu_button_text:
font gui.bold_font
color "#cccccc"
hover_color "#ffffff"
selected_color "#EA8D60"
outlines [(1, "#000000", 1, 2), (1, "#000000", 0, 1), (1, "#000000", 0, 0)]
hinting "bytecode"
size 32
text_align 0.5
xalign 0.5
style main_menu_text:
font gui.bold_font
color "#cccccc50"
size 16
style main_menu_flags_button_text:
size 32
image studio_logo_small = Image("gui/creamy_pumpkin_pie/studio_logo.png", oversample=10)
image main_menu_characters = At(Image("gui/creamy_pumpkin_pie/characters.png", oversample=1), parallax(2))
image website_logo_small = Image("gui/creamy_pumpkin_pie/website_logo.png", oversample=16)
image discord_logo_small = Image("gui/creamy_pumpkin_pie/discord_logo.png", oversample=16)
image patreon_logo_small = Image("gui/creamy_pumpkin_pie/patreon_logo.png", oversample=16)
image subscribestar_logo_small = Image("gui/creamy_pumpkin_pie/subscribestar_logo.png", oversample=16)
image vignette = Image("gui/creamy_pumpkin_pie/vignette.png", oversample=2, fit="fill")
image vignette_large = Image("gui/creamy_pumpkin_pie/vignette_large.png", oversample=2, fit="fill")
# transform main_menu_button_anim:
# subpixel True
# xzoom 1.0
# on hover:
# easein 0.1 xzoom 1.05
# easeout 0.1 xzoom 1.0
transform main_menu_button_anim:
matrixtransform ScaleMatrix(1.0, 1.0, 1.0)
on hover:
easein 0.1 matrixtransform ScaleMatrix(1.05, 1.05, 1.05)
easeout 0.1 matrixtransform ScaleMatrix(1.0, 1.0, 1.0)
transform main_menu_flag_anim:
subpixel True
# `rotate` is completely bugged and resizes the wrapper, so we will be using RotateMatrix instead.
matrixtransform RotateMatrix(0, 0, 0)
on hover:
easein 0.4 matrixtransform RotateMatrix(0, 0, 15.0)
linear 0.4 matrixtransform RotateMatrix(0, 0, 0)
easein 0.4 matrixtransform RotateMatrix(0, 0, -15.0)
linear 0.4 matrixtransform RotateMatrix(0, 0, 0)
repeat
on idle:
easein 0.4 matrixtransform RotateMatrix(0, 0, 0)
transform studio_logo_anim:
subpixel True
transform_anchor True
"studio_logo_small"
on hover:
easein 0.2 xzoom 1.25 yzoom 0.75
easein 0.2 xzoom 0.75 yzoom 1.25
easein 0.2 xzoom 1.0 yzoom 1.0
transform discord_logo_anim:
subpixel True
# `rotate` is completely bugged and resizes the wrapper, so we will be using RotateMatrix instead.
"discord_logo_small"
matrixtransform RotateMatrix(0, 0, 0)
on hover:
matrixtransform RotateMatrix(0, 0, 0)
easein 0.65 matrixtransform RotateMatrix(0, 0, 360.0)
matrixtransform RotateMatrix(0, 0, 0)
transform patreon_logo_anim:
subpixel True
"patreon_logo_small"
matrixcolor InvertMatrix(0.0)
on hover:
easein 0.4 matrixcolor InvertMatrix()
on idle:
easein 0.4 matrixcolor InvertMatrix(0.0)
transform subscribestar_logo_anim:
subpixel True
perspective True
xysize (32, 32)
"subscribestar_logo_small"
matrixtransform RotateMatrix(0, 0, 0)
on hover:
matrixtransform RotateMatrix(0, 0, 0)
easein 0.8 matrixtransform RotateMatrix(360.0, 0, 0)
matrixtransform RotateMatrix(0, 0, 0)
transform main_menu_background:
fit "fill"
# blur 48
"gui/creamy_pumpkin_pie/main_menu/test.png" with Dissolve(5, alpha=True)
pause 10
"gui/creamy_pumpkin_pie/main_menu/test2.png" with Dissolve(5, alpha=True)
pause 10
# "gui/creamy_pumpkin_pie/main_menu/test3.png"
# pause 3
repeat
screen navigation(default_category="save", default_subcategory=None):
style_prefix "navigation"
# Note: `category` and `default_category` vars must be separate otherwise we cannot override
# the screen `category` var through python. Possible scoping issue?
default last_frame = (screenshot.capture() or screenshot.image)
default category = default_category
default subcategory = default_subcategory
default page = 0
default navigation_atl = navigation_show
default navigation_last_frame_atl = navigation_last_frame_show
default navigation_exit = False
default page_right_atl = None
default page_left_atl = None
on "show" action Play("sound", "sounds/bookopen.ogg")
add last_frame at navigation_last_frame_atl
# if main_menu:
# add "gui_fade_both" at gui_fade
if navigation_exit:
timer 0.4 action (Hide("navigation") if main_menu else Return())
frame:
# We need to use a 'hacky' way to set transforms and
# set the exit timer because events aren't correctly passed to
# the children when exitting upper context
# from (what I assume) is a transient screen.
at navigation_atl
vbox:
style_prefix "navigation_tabs"
textbutton _("Save") action [SetLocalVariable("subcategory", None), SetLocalVariable("category", "save")] selected (category=="save") sensitive (not main_menu) at navigation_tabs
textbutton _("Load") action [SetLocalVariable("subcategory", None), SetLocalVariable("category", "load")] selected (category=="load") at navigation_tabs
textbutton _("Settings") action [SetLocalVariable("subcategory", "general"), SetLocalVariable("category", "settings")] at navigation_tabs
textbutton _("History") action [SetLocalVariable("subcategory", None), SetLocalVariable("category", "history")] selected (category=="history") sensitive (not main_menu) at navigation_tabs
textbutton _("Help") action [SetLocalVariable("subcategory", "tutorials"), SetLocalVariable("category", "help")] selected (category=="help") at navigation_tabs
null height 35
textbutton _("Return") action [SetScreenVariable("navigation_last_frame_atl", navigation_last_frame_hide), SetScreenVariable("navigation_atl", navigation_hide), SetScreenVariable("navigation_exit", True)] keysym "game_menu" activate_sound "sounds/bookclose.ogg" at navigation_tabs
null height 35
if not main_menu:
textbutton _("Main Menu") action MainMenu() at navigation_tabs
textbutton _("Credits") action Show("credits") at navigation_tabs
at navigation_tabs_show
vbox:
style_prefix "navigation_subtabs"
yalign 1.0
button:
add "website_logo" size (24, 24) yalign 0.5
text "Website" style "navigation_tabs_website_button_text" xoffset 32
action OpenURL("https://www.silverstudiogames.org")
style "navigation_tabs_website_button"
at navigation_tabs
button:
add "discord_logo" size (24, 24) yalign 0.5
text "Discord" style "navigation_tabs_discord_button_text" xoffset 32
action OpenURL("https://discord.com/invite/UbQeTCJ5RW")
style "navigation_tabs_discord_button"
at navigation_tabs
button:
add "patreon_logo" size (24, 24) yalign 0.5
text "Patreon" style "navigation_tabs_discord_button_text" xoffset 32
action OpenURL("https://www.patreon.com/SilverStudioGames")
style "navigation_tabs_patreon_button"
at navigation_tabs
button:
add "subscribestar_logo" size (24, 24) yalign 0.5
text "Subscribestar" style "navigation_tabs_discord_button_text" xoffset 32
action OpenURL("https://subscribestar.adult/ssg")
style "navigation_tabs_subscribestar_button"
at navigation_tabs
at navigation_subtabs_show
if category == "save":
vbox:
style_prefix "navigation_subtabs"
textbutton _("A.Saves") action FilePage("auto") at navigation_tabs
textbutton _("Q.Saves") action FilePage("quick") at navigation_tabs
null height 35
textbutton _("Next") action FilePageNext() at navigation_tabs
textbutton _("Previous") action FilePagePrevious() at navigation_tabs
null height 35
textbutton _("Last Page") action FilePageLast() at navigation_tabs
at navigation_subtabs_show
use file_slots(_("Save"))
elif category == "load":
vbox:
style_prefix "navigation_subtabs"
textbutton _("A.Saves") action FilePage("auto") at navigation_tabs
textbutton _("Q.Saves") action FilePage("quick") at navigation_tabs
null height 35
textbutton _("Next") action FilePageNext() at navigation_tabs
textbutton _("Previous") action FilePagePrevious() at navigation_tabs
null height 35
textbutton _("Last Page") action FilePageLast() at navigation_tabs
at navigation_subtabs_show
use file_slots(_("Load"))
elif category == "settings":
vbox:
style_prefix "navigation_subtabs"
textbutton _("General") action SetLocalVariable("subcategory", "general") at navigation_tabs
textbutton _("Display") action SetLocalVariable("subcategory", "display") at navigation_tabs
textbutton _("Audio") action SetLocalVariable("subcategory", "audio") at navigation_tabs
textbutton _("Other") action SetLocalVariable("subcategory", "other") at navigation_tabs
at navigation_subtabs_show
if subcategory == "audio":
use settings_audio
elif subcategory == "other":
use settings_other
elif subcategory == "display":
use settings_display
elif subcategory == "general":
use settings_general
elif category == "history":
use history
elif category == "help":
vbox:
style_prefix "navigation_subtabs"
textbutton _("Tutorials") action SetLocalVariable("subcategory", "tutorials") at navigation_tabs
textbutton _("Controls") action SetLocalVariable("subcategory", "controls") at navigation_tabs
at navigation_subtabs_show
if subcategory == "tutorials":
use help_tutorials
elif subcategory == "controls":
use help_controls
transform navigation_tabs:
subpixel True
xzoom 1.0
yanchor 0.5
on hover:
easein 0.1 xzoom 1.1
easeout 0.1 xzoom 1.0
transform navigation_last_frame_show:
matrixcolor SaturationMatrix(1.0)
easein 1.0 matrixcolor SaturationMatrix(0.33)
transform navigation_last_frame_hide:
matrixcolor SaturationMatrix(0.33)
easeout 0.4 matrixcolor SaturationMatrix(1.0)
transform navigation_show:
subpixel True
zoom 0.0
alpha 0.0
easein_back 0.4 zoom 1.0 alpha 1.0
transform navigation_hide:
subpixel True
events False
zoom 1.0
alpha 1.0
easeout_back 0.4 zoom 0.0 alpha 0.0
transform navigation_subtabs_show:
on replace:
xoffset 0
on start:
xoffset 200
pause 0.1
easein 0.4 xoffset 0
transform navigation_tabs_show:
on replace:
xoffset 0
on start:
xoffset -200
pause 0.1
easein 0.4 xoffset 0
style navigation_frame is empty:
align (0.5, 0.5)
xysize (750, 512)
background Image("gui/creamy_pumpkin_pie/book/book_background.png", oversample=4)
style navigation_page_left is empty:
fit_first True
xanchor 1.0
pos (366, 8)
xysize (343, 490)
background Image("gui/creamy_pumpkin_pie/book/book_page_left.png", oversample=4)
style navigation_page_right is empty:
fit_first True
xanchor 0.0
pos (362, 8)
xysize (343, 490)
background Image("gui/creamy_pumpkin_pie/book/book_page_right.png", oversample=4)
style navigation_vbox:
fit_first True
xfill True
pos (12, 12)
style navigation_label:
xalign 0.5
xpadding 80
xoffset -12
ysize 38
background Frame(Image("gui/creamy_pumpkin_pie/book/book_label.png", oversample=4), 80, 0, 80, 0, tile=False)
style navigation_tabs_vbox:
xfill True
yspacing 10
pos (721, 50)
style navigation_tabs_button:
ysize 35
left_padding 15
right_padding 30
selected_right_padding 50
background Frame(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), 0, 0, 80, 0, tile=False)
selected_background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), matrixcolor=HueMatrix(180.0)), 0, 0, 80, 0, tile=False)
insensitive_background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), matrixcolor=SaturationMatrix(0.0)), 0, 0, 80, 0, tile=False)
activate_sound "sounds/pageflip.ogg"
style navigation_tabs_button_text is who:
color "#ffffff"
outlines [(2, "#000000", 1, 1)]
hinting "auto"
font gui.bold_font
size 20
yalign 0.5
selected_xoffset 15
style navigation_tabs_button_special is navigation_tabs_button:
ysize 35
left_padding 15
right_padding 30
selected_right_padding 50
background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), matrixcolor=HueMatrix(90.0)), 0, 0, 80, 0, tile=False)
selected_background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), matrixcolor=HueMatrix(180.0)), 0, 0, 80, 0, tile=False)
insensitive_background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), matrixcolor=SaturationMatrix(0.0)), 0, 0, 80, 0, tile=False)
activate_sound "sounds/pageflip.ogg"
style navigation_tabs_button_special_text is navigation_tabs_button_text
style navigation_subtabs_vbox:
xfill True
xanchor 1.0
pos (24, 50)
yspacing 10
style navigation_subtabs_button:
xalign 1.0
ysize 35
right_padding 15
left_padding 30
selected_left_padding 50
background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), xzoom=-1), 80, 0, 0, 0, tile=False)
selected_background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), xzoom=-1, matrixcolor=HueMatrix(180.0)), 80, 0, 0, 0, tile=False)
insensitive_background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), xzoom=-1, matrixcolor=SaturationMatrix(0.0)), 80, 0, 0, 0, tile=False)
activate_sound "sounds/pageflip.ogg"
style navigation_subtabs_button_text is navigation_tabs_button_text:
selected_xoffset -15
style navigation_tabs_website_button is navigation_subtabs_button:
background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab.png", oversample=4), xzoom=-1), 80, 0, 0, 0, tile=False)
selected_background None
insensitive_background None
xsize 140
style navigation_tabs_website_button_text is navigation_subtabs_button_text:
size 12
style navigation_tabs_discord_button is navigation_subtabs_button:
background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab_discord.png", oversample=4), xzoom=-1), 80, 0, 0, 0, tile=False)
selected_background None
insensitive_background None
xsize 140
style navigation_tabs_discord_button_text is navigation_subtabs_button_text:
size 12
style navigation_tabs_patreon_button is navigation_subtabs_button:
background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab_patreon.png", oversample=4), xzoom=-1), 80, 0, 0, 0, tile=False)
selected_background None
insensitive_background None
xsize 140
style navigation_tabs_patreon_button_text is navigation_subtabs_button_text:
size 12
style navigation_tabs_subscribestar_button is navigation_subtabs_button:
background Frame(Transform(Image("gui/creamy_pumpkin_pie/book/book_tab_subscribestar.png", oversample=4), xzoom=-1), 80, 0, 0, 0, tile=False)
selected_background None
insensitive_background None
xsize 180
style navigation_tabs_subscribestar_button_text is navigation_subtabs_button_text:
size 12
style navigation_label_text:
ypos 8
color "#704F32"
size 28
style navigation_text:
color "#704F32"
outlines [(1, "#704f3215", -1, -1), (1, "#704f3238", 1, 1)]
size 20
style navigation_sublabel is navigation_text:
xalign 0.5
style navigation_checkbox_vbox:
fit_first True
xfill True
yspacing 4
style navigation_checkbox_label is navigation_label:
xsize 206
background Transform(Image("gui/creamy_pumpkin_pie/book/book_spacer.png", oversample=4), xalign=0.5)
style navigation_checkbox_label_text is navigation_label_text:
xalign 0.5
size 24
style navigation_button:
padding (6, 4)
hover_background Frame(Image("gui/creamy_pumpkin_pie/book/book_select.png", oversample=4), 20, 0, 20, 0, tile=False)
style navigation_button_text is navigation_text:
insensitive_color "#704F3280"
style navigation_checkbox_button:
padding (6, 4)
hover_background Frame(Image("gui/creamy_pumpkin_pie/book/book_select.png", oversample=4), 20, 0, 20, 0, tile=False)
foreground Transform(Image("gui/creamy_pumpkin_pie/book/book_button_check_empty.png", oversample=4), xpos=6, yalign=0.5)
selected_foreground Transform(Image("gui/creamy_pumpkin_pie/book/book_button_check_checked.png", oversample=4), xpos=6, yalign=0.5)
insensitive_foreground Transform(Image("gui/creamy_pumpkin_pie/book/book_button_check_empty.png", oversample=4), alpha=0.5, xpos=6, yalign=0.5)
style navigation_checkbox_button_text is navigation_text:
first_indent 24
insensitive_color "#704F3280"
style navigation_checkbox_text is navigation_text
style navigation_radio_vbox:
fit_first True
# xfill True # TODO: WTF? Why does it break the entire menu?
yspacing 4
style navigation_radio_label is navigation_label:
xsize 206
background Image("gui/creamy_pumpkin_pie/book/book_spacer.png", oversample=4)
style navigation_radio_label_text is navigation_label_text:
xalign 0.5
size 24
style navigation_radio_button:
padding (6, 4)
hover_background Frame(Image("gui/creamy_pumpkin_pie/book/book_select.png", oversample=4), 20, 0, 20, 0, tile=False)
foreground Transform(Image("gui/creamy_pumpkin_pie/book/book_button_radio_empty.png", oversample=4), xpos=6, yalign=0.5)
selected_foreground Transform(Image("gui/creamy_pumpkin_pie/book/book_button_radio_checked.png", oversample=4), xpos=6, yalign=0.5)
insensitive_foreground Transform(Image("gui/creamy_pumpkin_pie/book/book_button_radio_empty.png", oversample=4), alpha=0.5, xpos=6, yalign=0.5)
style navigation_radio_button_text is navigation_text:
first_indent 24
insensitive_color "#704F3280"
style navigation_slider:
xalign 0.5
xmaximum 300
ysize 20
left_bar Frame(Image("gui/creamy_pumpkin_pie/book/book_slider.png", oversample=4), tile=False)
right_bar Frame(Image("gui/creamy_pumpkin_pie/book/book_slider.png", oversample=4), tile=False)
thumb Image("gui/creamy_pumpkin_pie/book/book_slider_thumb.png", oversample=4)
thumb_offset 16
style navigation_vscrollbar:
xalign 0.5
xsize 20
base_bar Frame(Image("gui/creamy_pumpkin_pie/book/book_vslider.png", oversample=4), 8, 40, 8, 40, tile=False)
thumb Image("gui/creamy_pumpkin_pie/book/book_vslider_thumb.png", oversample=4)
thumb_offset 1
style navigation_bar:
xalign 0.5
xmaximum 300
ysize 20
left_bar Frame(Image("gui/creamy_pumpkin_pie/book/book_bar_full.png", oversample=4), 40, 8, 40, 8, tile=False)
right_bar Frame(Image("gui/creamy_pumpkin_pie/book/book_bar_empty.png", oversample=4), 40, 8, 40, 8, tile=False)
hover_right_bar Fixed(Frame(Image("gui/creamy_pumpkin_pie/book/book_select.png", oversample=4), 20, 4, 20, 4, tile=False), Frame(Image("gui/creamy_pumpkin_pie/book/book_bar_empty.png", oversample=4), 40, 8, 40, 8, tile=False))
hover_left_bar Fixed(Frame(Image("gui/creamy_pumpkin_pie/book/book_select.png", oversample=4), 20, 4, 20, 4, tile=False), Frame(Image("gui/creamy_pumpkin_pie/book/book_bar_full.png", oversample=4), 40, 8, 40, 8, tile=False))
thumb None
style navigation_note:
padding (6, 4)
background Frame(Image("gui/creamy_pumpkin_pie/book/book_note.png", oversample=4), 40, 40, 40, 40, tile=False)
image doodle_hermione = Image("gui/creamy_pumpkin_pie/book/book_doodles_hermione.png", oversample=4)
image doodle_hermione2 = Image("gui/creamy_pumpkin_pie/book/book_doodles_hermione2.png", oversample=4)
image doodle_letter = Image("gui/creamy_pumpkin_pie/book/book_doodles_letter.png", oversample=4)
image doodle_owl = Image("gui/creamy_pumpkin_pie/book/book_doodles_owl.png", oversample=4)
image doodle_panties = Image("gui/creamy_pumpkin_pie/book/book_doodles_panties.png", oversample=4)
image doodle_snitch = Image("gui/creamy_pumpkin_pie/book/book_doodles_snitch.png", oversample=4)
image doodle_glasses = Image("gui/creamy_pumpkin_pie/book/book_doodles_glasses.png", oversample=4)
image doodle_mountains = Image("gui/creamy_pumpkin_pie/book/book_doodles_mountains.png", oversample=4)
image doodle_brewing = Image("gui/creamy_pumpkin_pie/book/book_doodles_brewing.png", oversample=4)
image doodle_mermaid = Image("gui/creamy_pumpkin_pie/book/book_doodles_mermaid.png", oversample=4)
image website_logo = Image("gui/creamy_pumpkin_pie/website_logo.png", oversample=4)
image discord_logo = Image("gui/creamy_pumpkin_pie/discord_logo.png", oversample=4)
image patreon_logo = Image("gui/creamy_pumpkin_pie/patreon_logo.png", oversample=4)
image subscribestar_logo = Image("gui/creamy_pumpkin_pie/subscribestar_logo.png", oversample=4)