From 0a3a44ef20268ce35849ec8d1408335a4dd718f1 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Tue, 16 Dec 2025 15:26:14 -0600 Subject: [PATCH 01/20] feat: re-code the content warning screen --- game/act_two/poems_special.rpy | 2 + game/wip/content_warnings.rpy | 80 ++++++++++++++++++++++++++++++ game/wip/py/content_warning_ren.py | 68 +++++++++++++++++++++++++ 3 files changed, 150 insertions(+) create mode 100644 game/wip/content_warnings.rpy create mode 100644 game/wip/py/content_warning_ren.py diff --git a/game/act_two/poems_special.rpy b/game/act_two/poems_special.rpy index dd57840e..9a013dfc 100644 --- a/game/act_two/poems_special.rpy +++ b/game/act_two/poems_special.rpy @@ -33,6 +33,8 @@ label poem_special(poem=1): $ quick_menu = False play sound page_turn + $ show_poem_content_warning(poem) + if poem == 7: show poem_special7a as ps with Dissolve(1.0) else: diff --git a/game/wip/content_warnings.rpy b/game/wip/content_warnings.rpy new file mode 100644 index 00000000..c176b1d4 --- /dev/null +++ b/game/wip/content_warnings.rpy @@ -0,0 +1,80 @@ +# This file contains the content warning popup screen used in the mobile version of DDLC. + +# The logic for displaying the content warning is handled in `content_warning_ren.py` in the `py` directory. +# To show a content warning, call the `show_content_warning(warning_text)` function. + +default persistent.enable_content_warnings = False +default cw_prev_volume = preferences.get_mixer('music') + +image cw_darken: + Solid("#000") + alpha 0.8 + +image cw_warning_icon = "wip/gui/cwicon.png" + +screen content_warning_popup(warning_text): + modal True + zorder 200 + style_prefix "cw_popup" + + default cw_screen_shown = False + + frame at cw_fade: + background "cw_darken" + + frame at cw_popup_fade: + padding (50, 30) + xalign 0.5 + yalign 0.5 + + has vbox + xminimum 500 + ymaximum 1.0 + spacing 20 + + add "cw_warning_icon" xalign 0.5 zoom 0.3 + + text "[warning_text!t]" + + textbutton _("OK"): + sensitive cw_screen_shown + action [Function(cw_restore_volume), Hide()] + + timer 3.0 action SetLocalVariable("cw_screen_shown", True) + +style cw_popup_text is default: + xalign 0.5 + outlines [] + color "#000" + size get_variable_size(24, 32, 1.0) + textalign 0.5 + +style cw_popup_frame: + background Frame(Transform("wip/gui/cw_frame.png", zoom=1.0), 30, 30) + +style cw_popup_button is confirm_button: + xalign 0.5 +style cw_popup_button_text is confirm_button_text + +transform cw_fade: + on show: + alpha 0.0 + linear 0.5 alpha 1.0 + on hide: + alpha 1.0 + linear 0.5 alpha 0.0 + +transform cw_popup_fade: + subpixel True + on show: + alpha 0.0 + yoffset 40 + parallel: + easein_quad 0.4 alpha 1.0 + parallel: + easein_quad 1.2 yoffset 0 + on hide: + parallel: + easeout_quad 0.4 alpha 0.0 + parallel: + easeout_quad 1.2 yoffset 40 \ No newline at end of file diff --git a/game/wip/py/content_warning_ren.py b/game/wip/py/content_warning_ren.py new file mode 100644 index 00000000..d672d975 --- /dev/null +++ b/game/wip/py/content_warning_ren.py @@ -0,0 +1,68 @@ +# This file contains the Python code for the Content Warning system from the mobile version of DDLC. + +# The logic for displaying the content warning is handled here, +# while the display code is in `content_warnings.rpy` in the `wip` directory. + +## These import is not used when the game is running, but exists so IDEs reports +## one warning than multiple. +from game.definitions.py.core_ren import pause, persistent, store +import renpy # type: ignore + +persistent.enable_content_warnings = False + +"""renpy +init python: +""" + + +def show_content_warning(warning_text: str): + """ + Shows a content warning popup with the given warning text. + + :param warning_text: The content warning text to display. + :type warning_text: str + """ + if not persistent.enable_content_warnings: + return + + store.cw_prev_volume = renpy.store.preferences.get_mixer("music") + if store.cw_prev_volume > 0: + renpy.audio.music.set_volume(store.cw_prev_volume / 2) + + renpy.show_screen("content_warning_popup", warning_text=warning_text) + store.mc.add_history(None, "", (_("Content Warning: ") + warning_text)) + + pause(3.0) + + +def cw_restore_volume(): + """ + Restores the volume levels after the content warning screen is dismissed. + """ + renpy.music.set_volume(store.cw_prev_volume, 2) + +## TODO: Move elsewhere? +def get_variable_size(min: int, max: int, mod=None): + if mod is None: + mod = renpy.gui.text_scale + return round(min * (1 - mod) + max * mod) + +def show_poem_content_warning(special_poem: int): + """ + Shows a content warning for specific special poems. + Displays a content warning for certain special poems based on their number + or None if no warning is needed. + + :param special_poem: The special poem number. + :type special_poem: int + """ + poem_warnings = { + 1: "Crude sketch of a stick figure in the likeness of a character hanging from a noose.", + 4: "First-person written account glorifying self-harm via cutting, and considering potential suicide. Visual depiction of blood smeared on paper.", + 9: "First-person written references to implied neglect and potential parental abuse, including withholding food.", + 10: "Brief, first person written account of implied mental health struggles and potential future self harm.", + 11: "First-person written account of implied drowning and accompanying panic, physical struggle, and claustrophobia." + } + + if special_poem in poem_warnings.keys(): + show_content_warning(poem_warnings[special_poem]) From 4402707a417040fc0201c247992c3aae71a7137f Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Tue, 16 Dec 2025 15:28:07 -0600 Subject: [PATCH 02/20] chore: axe uncensored mode --- game/definitions/definitions.rpy | 4 ---- game/screens.rpy | 7 +------ 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/game/definitions/definitions.rpy b/game/definitions/definitions.rpy index 803411dd..b261f2b7 100644 --- a/game/definitions/definitions.rpy +++ b/game/definitions/definitions.rpy @@ -1349,10 +1349,6 @@ define ny = Character('Nat & Yuri', what_prefix='"', what_suffix='"', ctc="ctc", # once you packaged your mod. define _dismiss_pause = config.developer -## Extra Settings Variables -# This section controls whether the mod is censored or is in let's play mode. -default persistent.uncensored_mode = False - ## Variables # This section declares variables when the mod runs for the first time on all saves. # To make a new persistent variable, make a new variable with the 'persistent.' in it's name diff --git a/game/screens.rpy b/game/screens.rpy index 81c3067d..804dfa6e 100644 --- a/game/screens.rpy +++ b/game/screens.rpy @@ -1221,12 +1221,7 @@ screen template_preferences(): vbox: style_prefix "check" label _("Game Modes") - textbutton _("Uncensored Mode") action If(persistent.uncensored_mode, - ToggleField(persistent, "uncensored_mode"), - Show("confirm", message="Are you sure you want to turn on Uncensored Mode?\nDoing so will enable more adult/sensitive\ncontent in your playthrough.\n\nThis setting will be dependent on the modder if\nthey programmed these checks in their story.", - yes_action=[Hide("confirm"), ToggleField(persistent, "uncensored_mode")], - no_action=Hide("confirm") - )) + textbutton _("Enable Content Warnings") action ToggleField(persistent, "enable_content_warnings") vbox: style_prefix "name" From 36015eb54be8ea96ea8d3fd4f054732a274563c5 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Tue, 16 Dec 2025 15:37:58 -0600 Subject: [PATCH 03/20] chore: add `n_cg2_static` --- game/definitions/transforms.rpy | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/game/definitions/transforms.rpy b/game/definitions/transforms.rpy index e64ee934..da0e476c 100644 --- a/game/definitions/transforms.rpy +++ b/game/definitions/transforms.rpy @@ -300,7 +300,7 @@ transform r21: rightin(400) transform r22: rightin(880) -transform r11: +transform r11:6 rightin(640) # This transform acts as in your eyes are opening up to see where you are at. @@ -320,6 +320,11 @@ transform cgfade: alpha 1.0 linear 0.5 alpha 0.0 +# From Mobile Version of DDLC. Keeps the base CG of Natsuki's closet scene static. +transform n_cg2_static: + xoffset 0 + alpha 1.0 + # This transform causes Natsuki to wiggle on screen when she panics in her closet CG. transform n_cg2_wiggle: subpixel True @@ -332,6 +337,8 @@ transform n_cg2_wiggle: easeout 0.15 xoffset 0 easein 0.15 xoffset -5 ease 0.15 xoffset 0 + on replaced: + xoffset 0 # This transform loop repeats the wiggle effect each second. transform n_cg2_wiggle_loop: From 5dd2f166623051cd1ce6d60e72df450da4cefcf0 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Tue, 16 Dec 2025 16:10:41 -0600 Subject: [PATCH 04/20] chore: store skip state --- game/definitions/py/core_ren.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/game/definitions/py/core_ren.py b/game/definitions/py/core_ren.py index 5c02e315..5ad7ed81 100644 --- a/game/definitions/py/core_ren.py +++ b/game/definitions/py/core_ren.py @@ -184,6 +184,7 @@ def pause(time=None): :param time: The time to pause in seconds. If None, pauses indefinitely. """ global _windows_hidden + skipping_state = renpy.config.allow_skipping if not time: _windows_hidden = True @@ -191,11 +192,13 @@ def pause(time=None): renpy.ui.interact(mouse="pause", type="pause", roll_forward=None) _windows_hidden = False return - if time <= 0: + if time <= 0: return _windows_hidden = True + renpy.config.allow_skipping = False renpy.pause(time) _windows_hidden = False + renpy.config.allow_skipping = skipping_state ## OS Functions From c19beb19b71601868428487694143de92c462cd5 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Tue, 16 Dec 2025 16:11:43 -0600 Subject: [PATCH 05/20] chore: derp --- game/definitions/transforms.rpy | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/game/definitions/transforms.rpy b/game/definitions/transforms.rpy index da0e476c..bcef5f0a 100644 --- a/game/definitions/transforms.rpy +++ b/game/definitions/transforms.rpy @@ -300,7 +300,7 @@ transform r21: rightin(400) transform r22: rightin(880) -transform r11:6 +transform r11: rightin(640) # This transform acts as in your eyes are opening up to see where you are at. From f3f41597a2eb436f90fdd4e740562129d9c49dc2 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Tue, 16 Dec 2025 23:31:42 -0600 Subject: [PATCH 06/20] chore: import mobile ddlc variables and functions --- game/definitions/definitions.rpy | 12 ++ game/definitions/py/core_ren.py | 172 ++++++++++++++++++++++++++--- game/definitions/transforms.rpy | 3 + game/gui.rpy | 160 ++++++++++++--------------- game/wip/py/content_warning_ren.py | 6 - 5 files changed, 244 insertions(+), 109 deletions(-) diff --git a/game/definitions/definitions.rpy b/game/definitions/definitions.rpy index dc3f87ab..e2861fc1 100644 --- a/game/definitions/definitions.rpy +++ b/game/definitions/definitions.rpy @@ -1348,6 +1348,10 @@ define ny = Character('Nat & Yuri', what_prefix='"', what_suffix='"', ctc="ctc", # once you packaged your mod. define _dismiss_pause = config.developer +## Extra Settings Variables +# This section controls whether the mod is censored or is in let's play mode. +default persistent.uncensored_mode = False + ## Variables # This section declares variables when the mod runs for the first time on all saves. # To make a new persistent variable, make a new variable with the 'persistent.' in it's name @@ -1390,6 +1394,14 @@ default chapter = 0 default currentpos = 0 default faint_effect = None +# Variables brough from DDLC Mobile +default hide_quick_skip_and_auto = False + +default persistent.reduce_motion = False +default persistent.use_alt_poem_font = False +default persistent.reduce_transparency = False +default persistent.high_contrast = False + # Default Name Variables # To define a default name make a character name variable like in this example: # default e_name = "Eileen" diff --git a/game/definitions/py/core_ren.py b/game/definitions/py/core_ren.py index 5ad7ed81..b0227b76 100644 --- a/game/definitions/py/core_ren.py +++ b/game/definitions/py/core_ren.py @@ -8,6 +8,7 @@ import subprocess import sys import platform +import math import renpy # type: ignore """renpy @@ -31,6 +32,7 @@ ## DDLC Functions + def _get_android_data_directory() -> str | None: """ Returns the Android data directory path. @@ -40,14 +42,16 @@ def _get_android_data_directory() -> str | None: """ if not renpy.android: return None - + import jnius # type: ignore + activity = jnius.autoclass("org.renpy.android.PythonSDLActivity") current_activity = jnius.cast("android.app.Activity", activity.mActivity) data_directory = current_activity.getFilesDir().getAbsolutePath() return data_directory + def get_characters_folder(): """ Returns the path to the characters folder. @@ -61,7 +65,9 @@ def get_characters_folder(): if android_public_directory: characters_folder = os.path.join(android_public_directory, "characters") else: - characters_folder = os.path.join(renpy.config.basedir, "characters").replace("\\", "/") + characters_folder = os.path.join(renpy.config.basedir, "characters").replace( + "\\", "/" + ) return characters_folder @@ -192,7 +198,7 @@ def pause(time=None): renpy.ui.interact(mouse="pause", type="pause", roll_forward=None) _windows_hidden = False return - if time <= 0: + if time <= 0: return _windows_hidden = True renpy.config.allow_skipping = False @@ -211,9 +217,9 @@ def get_process_list(): :return: A list of process names. :rtype: set[str] """ - if renpy.android: + if renpy.mobile: return set() # Process listing is not supported on Android - + process_list: set[str] = set() if renpy.windows: try: @@ -301,9 +307,9 @@ def get_user_account_name(): :return: The username of the current user or None if it cannot be determined. :rtype: str | None """ - if renpy.android: - return None # User account retrieval is not supported on Android - + if renpy.mobile: + return None # User account retrieval is not supported on Android + # Reject if streaming to protect privacy if is_user_streaming(): return None @@ -407,6 +413,15 @@ def recolorize( ### Dynamic Super Positioning +def get_resolution_scale() -> float: + """ + Returns the scale factor based on the current screen width compared to the original game's width (1280). + + :return: The scale factor. + :rtype: float + """ + return renpy.config.screen_width / 1280.0 + def dsp(original_position_value: int | float) -> int: """ Dynamically adjusts the position value of an element based on the @@ -414,11 +429,8 @@ def dsp(original_position_value: int | float) -> int: This assumes that the original position value is set for a 1280x720 resolution. """ - valueIsInt = isinstance(original_position_value, int) - scale_position_by = renpy.config.screen_width / 1280.0 - if valueIsInt: - return int(original_position_value * scale_position_by) - return original_position_value * scale_position_by + scale_position_by = get_resolution_scale() + return int(original_position_value * scale_position_by) ### Dynamic Super Resolution @@ -435,6 +447,133 @@ def dsr(image_path: str): ) +### DDLC Mobile Scaling Functions +def get_variable_size(min: int, max: int, mod: float | None = None) -> int: + """ + Returns a size value that scales between min and max based on the mod value. + + :param min: The minimum size value. + :param max: The maximum size value. + :param mod: The modifier value to determine the scaling factor. If None, uses the current text scale. + :type min: int + :type max: int + :type mod: float | None + + :return: The calculated size value. + :rtype: int + """ + scale = mod + if scale is None: + scale = renpy.store.gui.text_scale + return round(min * (1 - scale) + max * scale) + + +def get_variable_size_f(min: int, max: int, mod: float | None = None) -> float: + """ + Returns a size value that scales between min and max based on the mod value. + + :param min: The minimum size value. + :param max: The maximum size value. + :param mod: The modifier value to determine the scaling factor. If None, uses the current text scale. + :type min: int + :type max: int + :type mod: float | None + + :return: The calculated size value. + :rtype: float + """ + scale = mod + if scale is None: + scale = renpy.store.gui.text_scale + return min * (1 - scale) + max * scale + + +def get_relative_size( + size: int, ref_min: int, ref_max: int, mod: float | None = None +) -> int: + """ + Returns a size value that is relative to a reference size range based on the mod value. + :param size: The base size value. + :param ref_min: The minimum reference size value. + :param ref_max: The maximum reference size value. + :param mod: The modifier value to determine the scaling factor. If None, uses the current text scale. + :type size: int + :type ref_min: int + :type ref_max: int + :type mod: float | None + + :return: The calculated relative size value. + :rtype: int + """ + scale = mod + if scale is None: + scale = renpy.store.gui.text_scale + return round(size * (get_variable_size(ref_min, ref_max, scale) / ref_min)) + + +def get_relative_size_f( + size: int, ref_min: int, ref_max: int, mod: float | None = None +) -> float: + """ + Returns a size value that is relative to a reference size range based on the mod value. + :param size: The base size value. + :param ref_min: The minimum reference size value. + :param ref_max: The maximum reference size value. + :param mod: The modifier value to determine the scaling factor. If None, uses the current text scale. + :type size: int + :type ref_min: int + :type ref_max: int + :type mod: float | None + + :return: The calculated relative size value. + :rtype: float + """ + scale = mod + if scale is None: + scale = renpy.store.gui.text_scale + return size * (get_variable_size_f(ref_min, ref_max, scale) / ref_min) + + +def get_scaled_outlines(outlines, ref_min: int, ref_max: int, mod: float | None = None): + """ + Returns a list of outlines with sizes scaled relative to a reference size range based on the mod value. + + :param outlines: + :param ref_min: The minimum reference size value. + :param ref_max: The maximum reference size value. + :param mod: The modifier value to determine the scaling factor. If None, uses the current text scale. + :type ref_min: int + :type ref_max: int + :type mod: float | None + + :return: A list of tuples representing the scaled outlines. + :rtype: list[tuple[int, str, int, int]] + """ + scale = mod + if scale is None: + scale = renpy.store.gui.text_scale + + if isinstance(outlines[0], int): + return ( + math.ceil(get_relative_size_f(outlines[0], ref_min, ref_max, scale)), + outlines[1], + outlines[2], + outlines[3], + ) + else: + scaled_outlines = [] + for outline in outlines: + scaled_outlines.append( + ( + math.ceil(get_relative_size_f(outline[0], ref_min, ref_max, scale)), + outline[1], + outline[2], + outline[3], + ) + ) + return scaled_outlines + + ## Initialize Core Code # Setup mapping for the game menu and hide windows. @@ -450,6 +589,11 @@ def dsr(image_path: str): # Initialize gesture mapping for Android devices. if renpy.android: renpy.config.keymap["rollback"] = [] - renpy.config.keymap["history"] = [ 'K_PAGEUP', 'repeat_K_PAGEUP', 'K_AC_BACK', 'mousedown_4' ] + renpy.config.keymap["history"] = [ + "K_PAGEUP", + "repeat_K_PAGEUP", + "K_AC_BACK", + "mousedown_4", + ] renpy.pure(dsp) diff --git a/game/definitions/transforms.rpy b/game/definitions/transforms.rpy index bcef5f0a..1f57ac53 100644 --- a/game/definitions/transforms.rpy +++ b/game/definitions/transforms.rpy @@ -560,3 +560,6 @@ init python: transform malpha(a=1.00): i11 alpha a + +transform loc_text_fit: + fit "scale-down" \ No newline at end of file diff --git a/game/gui.rpy b/game/gui.rpy index d96d7536..2a6f5af1 100644 --- a/game/gui.rpy +++ b/game/gui.rpy @@ -10,6 +10,9 @@ init -2 python: # This sets the resolution of DDLC to 1280x720p gui.init(1280, 720) +default preferences.text_scale = (1.0 if renpy.variant("small") else 0.0) +define gui.text_scale = gui.preference("text_scale", (1.0 if renpy.variant("small") else 0.0)) + ## GUI Sounds # These variables set the sound effects for the GUI elements in the game. define -2 gui.hover_sound = "gui/sfx/hover.ogg" # Hover Sound Effect @@ -51,54 +54,60 @@ define -2 gui.interface_text_color = '#ffffff' # These variables set the font and its' size for DDLC's text in-game. # This font is used for in-game text. -define -2 gui.default_font = "gui/font/Aller_Rg.ttf" +define gui.text_font = "gui/font/Aller_Rg.ttf" # This font is used for character names. -define -2 gui.name_font = "gui/font/RifficFree-Bold.ttf" +define gui.name_text_font = "gui/font/RifficFree-Bold.ttf" # This font is used for out-of-game text. -define -2 gui.interface_font = "gui/font/Aller_Rg.ttf" +define gui.interface_text_font = "gui/font/Aller_Rg.ttf" # The text size of normal dialogue text. -define -2 gui.text_size = 24 +define gui.text_size = 24 +define gui.max_text_size = 36 # This determines the text size of character names. -define -2 gui.name_text_size = 24 +define gui.name_text_size = 24 +define gui.max_name_text_size = 36 # This determines the text size of the game's user interface. -define -2 gui.interface_text_size = 24 +define gui.interface_text_size = 24 +define gui.max_interface_text_size = 36 # This determines the text size of the game's label in the user interface. -define -2 gui.label_text_size = 28 +define gui.label_text_size = 28 +define gui.max_label_text_size = 36 # This determines the text size of the notification screen. -define -2 gui.notify_text_size = 16 +define gui.notify_text_size = 16 +define gui.max_notify_text_size = 25 # This determines the text size of the game's title on the bottom-right. -define -2 gui.title_text_size = 38 +define gui.title_text_size = 38 ## Main Menu and Game Menu # These variables set what is shown in the game menu. # This sets the background for the main menu -define -2 gui.main_menu_background = "menu_bg" +define gui.main_menu_background = "menu_bg" # This sets background for the pause/game menu -define -2 gui.game_menu_background = "game_menu_bg" +define gui.game_menu_background = "game_menu_bg" ## Dialogue # These variables set the dialogue box positions and placement in-game. # This controls the height of the textbox containing dialogue. -define -2 gui.textbox_height = 182 +define gui.textbox_height = 147 +define gui.max_textbox_height = 211 # This controls the placement of the textbox vertically on the screen. # 0.0 is the top, 0.5 is the center, and 1.0 is the bottom. -define -2 gui.textbox_yalign = 0.99 +define gui.textbox_yalign = 0.99 # This controls the placement of the speaking character's name. -define gui.name_xpos = 350 -define gui.name_ypos = -3 +define gui.name_xpos = 0.13 +define gui.name_ypos = 0.0 # This controls the horizontal alignment of the character's name. define gui.name_xalign = 0.5 @@ -107,6 +116,8 @@ define gui.name_xalign = 0.5 # characters' name. define gui.namebox_width = 168 define gui.namebox_height = 39 +define gui.max_namebox_width = 224 +define gui.max_namebox_height = 52 # This controls the borders of the box containing the characters' name in # left, top, right, and bottom order. @@ -116,14 +127,18 @@ define gui.namebox_borders = Borders(5, 5, 5, 2) define gui.namebox_tile = False # This controls the placement of dialogue relative to the textbox. -define gui.text_xpos = 268 -define gui.text_ypos = 62 +define gui.dialogue_xpos = 40 +define gui.dialogue_ypos = 23 # This controls the maximum width of dialogue text. -define gui.text_width = 744 +define gui.dialogue_width = 764 +define gui.max_dialogue_width = 1146 # This controls the horizontal alignment of the dialogue text. -define gui.text_xalign = 0.0 +define gui.dialogue_text_xalign = 0.0 + +define gui.ctc_xalign = get_variable_size_f(0.81, 0.96, gui.text_scale) +define gui.ctc_zoom = ((1.25 if renpy.mobile else 1.0) + get_variable_size_f(0, 0.5, gui.text_scale)) ## Buttons # These variables set the buttons in-game. @@ -143,10 +158,11 @@ define gui.button_borders = Borders(4, 4, 4, 4) define gui.button_tile = False # This controls the font that the button will use. -define gui.button_text_font = gui.interface_font +define gui.button_text_font = gui.interface_text_font # This controls the font size of the text used by the button. define gui.button_text_size = gui.interface_text_size +define gui.max_button_text_size = gui.max_interface_text_size # This controls the color of button text in various states. define gui.button_text_idle_color = gui.idle_color @@ -159,8 +175,14 @@ define gui.button_text_xalign = 0.0 # This controls the borders on each side of the # check/radio buttons in left, top, right, bottom order. -define gui.radio_button_borders = Borders(28, 4, 4, 4) -define gui.check_button_borders = Borders(28, 4, 4, 4) +define gui.radio_button_borders = Borders((34 + get_variable_size(0, 16, gui.text_scale)), 4, 4, 4) +define gui.check_button_borders = Borders((34 + get_variable_size(0, 16, gui.text_scale)), 4, 4, 4) + +define gui.radio_button_text_yalign = (0.5 if renpy.mobile else 0.0) +define gui.radio_button_text_xoffset = (5 if renpy.mobile else 0) + +define gui.check_button_text_yoffset = get_variable_size(-8, -12, gui.text_scale) +define gui.check_button_text_xoffset = (5 if renpy.mobile else 0) # This controls the horizontal alignment of the confirm button. define gui.confirm_button_text_xalign = 0.5 @@ -171,9 +193,11 @@ define gui.page_button_borders = Borders(10, 4, 10, 4) ## Quick Buttons # These variables set the buttons in the quick menu and it's text. +define gui.quick_menu_spacing = 0 +define gui.max_quick_menu_spacing = 30 define gui.quick_button_text_size = 14 - +define gui.max_quick_button_text_size = 20 define gui.quick_button_text_idle_color = "#522" define gui.quick_button_text_hover_color = "#fcc" define gui.quick_button_text_selected_color = gui.accent_color @@ -183,15 +207,17 @@ define gui.quick_button_text_insensitive_color = "#a66" # These variables set the buttons of the choice (menu) buttons. define gui.choice_button_width = 420 +define gui.max_choice_button_width = 600 define gui.choice_button_height = None - define gui.choice_button_tile = False define gui.choice_button_borders = Borders(100, 5, 100, 5) -define gui.choice_button_text_font = gui.default_font +define gui.choice_button_text_font = gui.text_font define gui.choice_button_text_size = gui.text_size define gui.choice_button_text_xalign = 0.5 +define gui.max_choice_button_text_size = gui.max_text_size +define gui.choice_button_text_xalign = 0.5 define gui.choice_button_text_idle_color = "#000" define gui.choice_button_text_hover_color = "#fa9" @@ -222,8 +248,11 @@ define gui.file_slot_rows = 2 # These variables control the positioning and spacing of various user interface # elements. -define gui.navigation_xpos = 80 +define gui.navigation_xpos = 50 +define gui.max_navigation_xpos = 80 + define gui.skip_ypos = 10 + define gui.notify_ypos = 45 # This controls the spacing between each menu/choice option in the choice screen. @@ -231,6 +260,7 @@ define gui.choice_spacing = 22 # This controls the spacing between each navigation option in the navigation screen. define gui.navigation_spacing = 6 +define gui.max_navigation_spacing = 36 # This controls the spacing between each preference and preference button option # in the preference screen. @@ -239,9 +269,11 @@ define gui.pref_button_spacing = 0 # This controls the spacing between each page option in the page screen. define gui.page_spacing = 0 +define gui.slot_spacing = 10 # This controls the spacing between each save/load slot option in the save/load screen. -define gui.slot_spacing = 10 +define gui.pref_button_spacing = 10 +define gui.max_pref_button_spacing = 20 ## Frames # These variables control the border of frames in-game such as the confirm prompt. @@ -307,13 +339,13 @@ define gui.history_height = None define gui.history_name_xpos = 150 define gui.history_name_ypos = 0 define gui.history_name_width = 150 -define gui.history_name_xalign = 1.0 +define gui.history_name_xalign = 0.0 # This controls the position, width, and alignment of the characters' dialogue in # the history menu. -define gui.history_text_xpos = 170 -define gui.history_text_ypos = 5 -define gui.history_text_width = 740 +define gui.history_text_xpos = 20 +define gui.history_text_ypos = get_variable_size(40, 57) +define gui.history_text_width = 800 define gui.history_text_xalign = 0.0 ## NVL @@ -354,67 +386,17 @@ define gui.nvl_thought_xalign = 0.0 define gui.nvl_button_xpos = 450 define gui.nvl_button_xalign = 0.0 +define gui.riffic_font = "gui/font/RifficFree-Bold.ttf" +define gui.halogen_font = "gui/font/Halogen.ttf" + ## Mobile Phones & Tablets # These variables control how DDLC is displayed on a mobile platform. init python: - # This increases the size of the quick buttons to make them easier to touch - # on tablets and phones. - if renpy.variant("touch"): - - gui.quick_button_borders = Borders(20, 14, 20, 0) - - # This changes the size and spacing of various GUI elements to ensure they - # are easily visible on smaller devices. - if renpy.variant("small"): - - ## Font Size - gui.text_size = 24 - gui.name_text_size = 24 - gui.notify_text_size = 24 - gui.interface_text_size = 26 - gui.button_text_size = 26 - gui.label_text_size = 28 - - ## Dialogue Box/Name Box Positions, Heights and Alignments. - gui.textbox_height = 182 - gui.name_xpos = 350 - gui.text_xpos = 268 - gui.text_ypos = 62 - gui.text_width = 744 - gui.text_xalign = 0.0 - - ## Choice Button Width - gui.choice_button_width = 420 - - ## Spacing - gui.navigation_spacing = 6 - gui.pref_button_spacing = 10 - - ## History - gui.history_height = None - gui.history_text_width = 740 - - ## Save/Load File Slots - gui.file_slot_cols = 3 + @gui.variant + def small(): + gui.file_slot_cols = 2 gui.file_slot_rows = 2 - - ## NVL - gui.nvl_height = 115 - - gui.nvl_name_width = 150 - gui.nvl_name_xpos = 430 - - gui.nvl_text_width = 590 - gui.nvl_text_xpos = 450 - gui.nvl_text_ypos = 8 - - gui.nvl_thought_width = 780 - gui.nvl_thought_xpos = 240 - - gui.nvl_button_width = 1240 - gui.nvl_button_xpos = 450 - - ## Quick Menu - gui.quick_button_text_size = 14 + + gui.quick_button_borders = Borders(60, 14, 60, 0) diff --git a/game/wip/py/content_warning_ren.py b/game/wip/py/content_warning_ren.py index d672d975..01f9f846 100644 --- a/game/wip/py/content_warning_ren.py +++ b/game/wip/py/content_warning_ren.py @@ -41,12 +41,6 @@ def cw_restore_volume(): """ renpy.music.set_volume(store.cw_prev_volume, 2) -## TODO: Move elsewhere? -def get_variable_size(min: int, max: int, mod=None): - if mod is None: - mod = renpy.gui.text_scale - return round(min * (1 - mod) + max * mod) - def show_poem_content_warning(special_poem: int): """ Shows a content warning for specific special poems. From b9e84528c0f978808f50b86df1bc7700fa66a70a Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Tue, 16 Dec 2025 23:32:19 -0600 Subject: [PATCH 07/20] refactor: mobile ddlc settings ui (languages wip) --- game/screens.rpy | 420 ++++++++++++++++++++++++++++------------------- 1 file changed, 252 insertions(+), 168 deletions(-) diff --git a/game/screens.rpy b/game/screens.rpy index 6a788aa9..2f65a3db 100644 --- a/game/screens.rpy +++ b/game/screens.rpy @@ -45,10 +45,10 @@ define -2 text_outline_color = "#b59" ################################################################################ style default: - font gui.default_font - size gui.text_size + font gui.text_font + size get_variable_size(gui.text_size, gui.max_text_size, gui.text_scale) color gui.text_color - outlines [(2, "#000000aa", 0, 0)] + outlines get_scaled_outlines([(2, "#000000aa", 0, 0)], gui.text_size, gui.max_text_size, gui.text_scale) line_overlap_split 1 line_spacing 1 @@ -1109,190 +1109,237 @@ style viewframe_text is confirm_prompt_text: # textbutton _("Reset") action [Hide("display_options"), Function(renpy.reset_physical_size)] # textbutton _("Set") action [Hide("display_options"), Function(set_physical_resolution, scale)] -screen ddlc_preferences(): - hbox: - box_wrap True - - if renpy.variant("pc"): +screen display_preferences(): + vbox: + fixed: + ysize 200 + + if not renpy.mobile: + vbox: + style_prefix "radio" + label _("Display") + textbutton _("Windowed") action Preference("display", "window") + textbutton _("Fullscreen") action Preference("display", "fullscreen") + # textbutton _("More") action Show("display_options") vbox: - style_prefix "radio" - label _("Display") - textbutton _("Windowed") action Preference("display", "window") - textbutton _("Fullscreen") action Preference("display", "fullscreen") - # textbutton _("More") action Show("display_options") + style_prefix "slider" + xalign (1.0 if not renpy.mobile else 0.0) + ysize 1.0 - if config.developer: - vbox: - style_prefix "radio" - label _("Rollback Side") - textbutton _("Disable") action Preference("rollback side", "disable") - textbutton _("Left") action Preference("rollback side", "left") - textbutton _("Right") action Preference("rollback side", "right") + if config.has_music: + label _("Music Volume") - vbox: - style_prefix "check" - label _("Skip") - textbutton _("Unseen Text") action Preference("skip", "toggle") - textbutton _("After Choices") action Preference("after choices", "toggle") - # textbutton _("Transitions") action InvertSelected(Preference("transitions", "toggle")) - - null height (4 * gui.pref_spacing) + null width 5 - hbox: - style_prefix "slider" - box_wrap True + text "[round(music_volume_val) * 100]" style "value_text" - vbox: - - hbox: - label _("Text Speed") - - null width 5 + side "c l r": + bar: + value ScreenVariableValue("music_volume_val", range=1.0, offset=0, step=0.1, force_step=True) + changed preferences.set_mixer("music", music_volume_val) + add "slider_volume_icon_min" yalign 0.5 zoom 0.5 + add "slider_volume_icon_max" yalign 0.5 zoom 0.5 - text str(preferences.text_cps) style "value_text" + if config.has_sound: + label _("Sound Volume") - #bar value Preference("text speed") - bar value FieldValue(_preferences, "text_cps", range=180, max_is_zero=False, style="slider", offset=20) + null width 5 - hbox: - label _("Auto-Forward Time") + text str(round(sound_volume * 100)) style "value_text" + + side "c l r": + bar: + value ScreenVariableValue("sound_volume", range=1.0, offset=0, step=0.1, force_step=True) + changed preferences.set_mixer("sfx", sound_volume) + add "slider_volume_icon_min" yalign 0.5 zoom 0.5 + add "slider_volume_icon_max" yalign 0.5 zoom 0.5 + + if config.sample_sound: + textbutton _("Test") action Play("sound", config.sample_sound) + if config.has_voice: + hbox: + label _("Voice Volume") + null width 5 + text str(round(voice_volume * 100)) style "value_text" + + side "c l r": + bar: + value ScreenVariableValue("voice_volume", range=1.0, offset=0, step=0.1, force_step=True, style="slider") + changed preferences.set_mixer("voice", voice_volume) + add "slider_volume_icon_min" yalign 0.5 zoom 0.5 + add "slider_volume_icon_max" yalign 0.5 zoom 0.5 + + if config.sample_voice: + textbutton _("Test") action Play("voice", config.sample_voice) + + if config.has_music or config.has_sound or config.has_voice: + null height gui.pref_spacing + + textbutton _("Mute All"): + action Preference("all mute", "toggle") + style "mute_all_button" + +screen language_preferences(): + vbox: + hbox: + style_prefix "slider" + box_wrap False + + vbox: + label _("Text Speed") + null width 5 - - text str(round(preferences.afm_time)) style "value_text" - bar value Preference("auto-forward time") + text str(round(preferences.text_cps)) style "value_text" - vbox: - - if config.has_music: - hbox: - label _("Music Volume") - - null width 5 - - text str(round(preferences.get_mixer("music") * 100)) style "value_text" + side "c l r": + bar value FieldValue(_preferences, "text_cps", range=180, step=30, force_step=True, max_is_zero=False, offset=20): + alt "Text Speed" + add "slider_speed_icon_min" yalign 0.5 zoom 0.5 + add "slider_speed_icon_max" yalign 0.5 zoom 0.5 - hbox: - bar value Preference("music volume") + label _("Auto-Forward Speed") - if config.has_sound: + null width 5 - hbox: - label _("Sound Volume") - - null width 5 + text str(round(preferences.afm_time)) style "value_text" + + side "c l r": + bar value FieldValue(_preferences, "afm_time", range=18, step=3, force_step=True, offset=1): + bar_invert True + add "slider_autopace_icon_min" yalign 0.5 zoom 0.5 + add "slider_autopace_icon_max" yalign 0.5 zoom 0.5 - text str(round(preferences.get_mixer("sfx") * 100)) style "value_text" + label _("Text Size") - hbox: - bar value Preference("sound volume") + side "c l r": + bar value FieldValue(_preferences, "text_scale", range=0.5, offset=0.5, step=0.25, force_step=True): + released gui.SetPreference("text_scale", preferences.text_scale) + alt "Text Size" - if config.sample_sound: - textbutton _("Test") action Play("sound", config.sample_sound) + vbox: + xsize 1.0 + if renpy.mobile: + style_prefix "radio" + label _("Allow Skipping") + textbutton _("Previously Read Text Only") action Preference("skip", "seen") + textbutton _("All Text") action Preference("skip", "all") + else: + style_prefix "check" + label _("Skip") + textbutton _("Unseen Text") action Preference("skip", "toggle") + textbutton _("After Choices") action Preference("after choices", "toggle") - if config.has_voice: - hbox: - label _("Voice Volume") - - null width 5 + if persistent.high_contrast: + python: + a = "temp" + else: + add "wip/gui/long_divider_dark.png": + xzoom 0.65 + yzoom 0.8 + xoffset 30 + + null height 14 + + label _("Language") + + # hbox: + # xsize 1.0 - text str(round(preferences.get_mixer("voice") * 100)) style "value_text" + # fixed: + # # xysize (get_variable_size_f(0.6, 0.7, gui.text_scale), get_variable_size(40, 70, gui.text_scale)) + # imagebutton: + # xalign 0.0 + # yalign 0.5 + # action Function(settings_scroll_language, increment=-1) + # idle Transform("settings_arrow", zoom=0.4, rotate=180) + # hover Transform("settings_arrow_selected", zoom=0.4, rotate=180) + # text str() + +screen accessibility_preferences(): + viewport id "settings_accessibility_viewport": + # at vp_vert_scroll_mask + draggable True + mousewheel True + ysize 1.0 + has vbox + null height 20 - hbox: - bar value Preference("voice volume") + vbox: + style_prefix "check" + xsize 1.0 - if config.sample_voice: - textbutton _("Test") action Play("voice", config.sample_voice) + textbutton _("Content Warnings") action ToggleField(persistent, "show_content_warnings", True, False) alt _("Enable Content Warnings") + text _("Enables content warnings that will appear before scenes with disturbing subject matter.") style "pref_hint_text" + textbutton _("High Contrast Textboxes") action [ToggleField(persistent, "high_contrast", True, False), Function(gui.rebuild)] alt _("High Contrast Textboxes") + text _("Replaces the dialogue box with a darker variant, making dialogue easier to read.") style "pref_hint_text" + textbutton _("Reduce Textbox Transparency") action [ToggleField(persistent, "reduce_transparency", True, False), Function(gui.rebuild)] alt _("Reduce Textbox Transparency") + text _("Makes the dialogue box opaque, making dialogue easier to read.") style "pref_hint_text" + textbutton _("Alternate Poem Font") action ToggleField(persistent, "use_alt_poem_font", True, False) alt _("Use Alternate Poem Font") style "check_button" + text _("Switches handwritten fonts in characters' poems with an easier-to-read font.") style "pref_hint_text" - if config.has_music or config.has_sound or config.has_voice: - null height gui.pref_spacing + null height 20 - textbutton _("Mute All"): - action Preference("all mute", "toggle") - style "mute_all_button" + vbar value YScrollValue("settings_accessibility_viewport") xpos 1.0 xoffset -10 style ("vscrollbar" if not persistent.high_contrast else "vscrollbar_hc") screen template_preferences(): - hbox: - box_wrap True + vbox: + hbox: + style_prefix "name" + box_wrap False - if extra_settings: vbox: - style_prefix "check" - label _("Game Modes") - textbutton _("Enable Content Warnings") action ToggleField(persistent, "enable_content_warnings") - - vbox: - style_prefix "name" - label _("Player Name") + label _("Player Name") - null height 3 + null height 3 - if player == "": - text _("No Name Set") xalign 0.5 - else: - text "[player]" xalign 0.5 + if player == "": + text _("No Name Set") xalign 0.5 + else: + text "[player]" xalign 0.5 - textbutton _("Change Name") action Show(screen="name_input", message="Please enter your name", ok_action=Function(FinishEnterName, launchGame=False)): - text_style "navigation_button_text" + textbutton _("Change Name") action Show(screen="name_input", message="Please enter your name", ok_action=Function(FinishEnterName, launchGame=False)): + text_style "navigation_button_text" - python: - has_discord_module = True - try: - RPC - except NameError: - has_discord_module = False - - if not renpy.android and has_discord_module: - vbox: - style_prefix "name" - label _("Discord RPC") - - python: - connect_status = _("Disconnected") - if not persistent.enable_discord: - connect_status = _("Disabled") - if RPC.rpc_connected: - connect_status = _("Connected") - - null height 3 - - text "[connect_status]" xalign 0.5 - - python: - enable_text = _("Enable") - if persistent.enable_discord: - enable_text = _("Disable") + python: + has_discord_module = True + try: + RPC + except NameError: + has_discord_module = False + + if not renpy.mobile and has_discord_module: + vbox: + style_prefix "name" + label _("Discord RPC") + + python: + connect_status = _("Disconnected") + if not persistent.enable_discord: + connect_status = _("Disabled") + if RPC.rpc_connected: + connect_status = _("Connected") + + null height 3 - textbutton enable_text action [ToggleField(persistent, "enable_discord"), - If(persistent.enable_discord, Function(RPC.disconnect), Function(RPC.connect))]: - text_style "navigation_button_text" - if persistent.enable_discord and not RPC.rpc_connected: - textbutton _("Reconnect") action Function(RPC.connect): - text_style "navigation_button_text" + text "[connect_status]" xalign 0.5 - null height (4 * gui.pref_spacing) + python: + enable_text = _("Enable") + if persistent.enable_discord: + enable_text = _("Disable") - hbox: - box_wrap True + textbutton enable_text action [ToggleField(persistent, "enable_discord"), + If(persistent.enable_discord, Function(RPC.disconnect), Function(RPC.connect))]: + text_style "navigation_button_text" + if persistent.enable_discord and not RPC.rpc_connected: + textbutton _("Reconnect") action Function(RPC.connect): + text_style "navigation_button_text" - if enable_languages and translations: - vbox: - style_prefix "radio" - label _("Language") - hbox: - viewport: - mousewheel True - scrollbars "vertical" - ysize 120 - has vbox + null height 80 - for tran in translations: - vbox: - for tlid, tlname in tran: - textbutton tlname: - action Language(tlid) ## Preferences screen ########################################################## ## @@ -1302,34 +1349,71 @@ screen template_preferences(): ## https://www.renpy.org/doc/html/screen_special.html#preferences screen preferences(): - tag menu + default current_tab = "display" + if renpy.mobile: $ cols = 2 else: $ cols = 4 - default ddlc_settings = True - - use game_menu(_("Settings"), scroll="viewport"): - - vbox: - xoffset 50 - + use game_menu(_("Settings")): + side "t c": hbox: - style_prefix "navigation" - xoffset 150 - spacing 5 - textbutton _("DDLC Settings") action [SetScreenVariable("ddlc_settings", True), SensitiveIf(not ddlc_settings)] - textbutton _("Template Settings") action [SetScreenVariable("ddlc_settings", False), SensitiveIf(ddlc_settings)] + xalign 0.5 + button: + style ("pref_active_tab_button" if current_tab == "display" else "pref_tab_button") + action SetScreenVariable("current_tab", "display") + left_padding 10 + has side 'l c' + + if renpy.mobile: + add ("wip/gui/pref_display_icon_mobile_selected.png" if current_tab == "display" else "wip/gui/pref_display_icon_mobile.png"): + yalign 0.75 + zoom 0.5 + else: + add ("wip/gui/pref_display_icon_selected.png" if current_tab == "display" else "wip/gui/pref_display_icon.png"): + yalign 0.75 + zoom 0.5 + label (_("Audio") if renpy.mobile else _("Display & Sound")) yalign 0.0 text_size 24 at loc_text_fit + if enable_languages and translations: + button: + style ("pref_active_tab_button" if current_tab == "gameplay" else "pref_tab_button") + action SetScreenVariable("current_tab", "language") + has side 'l c' + add ("wip/gui/pref_language_icon_selected.png" if current_tab == "gameplay" else "wip/gui/pref_language_icon.png"): + yalign 0.75 + zoom 0.5 + label _("Language & Text") yalign 0.0 text_size 24 at loc_text_fit + button: + style ("pref_active_tab_button" if current_tab == "gameplay" else "pref_tab_button") + action SetScreenVariable("current_tab", "accessibility") + has side 'l c' + add ("wip/gui/pref_accessibility_icon_selected.png" if current_tab == "accessibility" else "wip/gui/pref_accessibility_icon.png"): + yalign 0.75 + zoom 0.5 + label _("Accessibility") yalign 0.0 text_size 24 at loc_text_fit + button: + style ("pref_active_tab_button" if current_tab == "mods" else "pref_tab_button") + action SetScreenVariable("current_tab", "bronya") + has side 'l c' + add ("wip/gui/pref_bronya_icon_selected.png" if current_tab == "bronya" else "wip/gui/pref_bronya_icon.png"): + yalign 0.75 + zoom 0.5 + label _("Mod Template") yalign 0.0 text_size 24 at loc_text_fit - null height 10 - - if ddlc_settings: - use ddlc_preferences - else: - use template_preferences + frame: + padding (30, 30) + + showif current_tab == "display": + use display_preferences + elif current_tab == "language" and enable_languages and translations: + use language_preferences + elif current_tab == "accessibility": + use accessibility_preferences + elif current_tab == "bronya": + use template_preferences text "v[config.version]": xalign 1.0 yalign 1.0 From c527119d096c2460fe9cb4d0e4943fed438fabba Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Tue, 16 Dec 2025 23:34:34 -0600 Subject: [PATCH 08/20] feat: mod template settings icons --- game/gui/pref_bronya_icon.png | Bin 0 -> 2526 bytes game/gui/pref_bronya_icon_selected.png | Bin 0 -> 2572 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 game/gui/pref_bronya_icon.png create mode 100644 game/gui/pref_bronya_icon_selected.png diff --git a/game/gui/pref_bronya_icon.png b/game/gui/pref_bronya_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..c5184be4ddb25dd0eae05145f42709dcdbc57eef GIT binary patch literal 2526 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 i^=SkfVu@R*75@k6rT3$bObZJD0000 Date: Mon, 26 Jan 2026 13:32:55 -0600 Subject: [PATCH 09/20] chore: bump copyright, auto-width scaler for settings button --- .../Better BSODs/extras/bsod.rpy | 2 +- .../Gallery/extras/gallery.rpy | 2 +- .../Gallery/extras/py/gallery_ren.py | 2 +- README.md | 2 +- game/definitions/cgs.rpy | 2 +- game/definitions/definitions.rpy | 2 +- game/definitions/effects.rpy | 196 +++-- game/definitions/py/0core_ren.py | 2 +- game/definitions/py/core_ren.py | 2 +- game/definitions/py/splash_ren.py | 2 +- game/definitions/splash.rpy | 2 +- game/definitions/transforms.rpy | 2 +- game/poem_game/py/poemgame_chibi_ren.py | 2 +- game/poem_game/py/poemgame_ren.py | 2 +- game/poem_game/py/poemwords_ren.py | 2 +- game/poem_game/script-poemgame.rpy | 2 +- game/poem_responses/poems.rpy | 2 +- game/poem_responses/py/poemresponses_ren.py | 2 +- game/poem_responses/py/poems_ren.py | 2 +- game/py/screens_ren.py | 28 + game/screens.rpy | 692 ++++++++++-------- 21 files changed, 535 insertions(+), 417 deletions(-) create mode 100644 game/py/screens_ren.py diff --git a/Additional Mod Features/Better BSODs/extras/bsod.rpy b/Additional Mod Features/Better BSODs/extras/bsod.rpy index ba5f8425..72873b82 100644 --- a/Additional Mod Features/Better BSODs/extras/bsod.rpy +++ b/Additional Mod Features/Better BSODs/extras/bsod.rpy @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # bsod.rpy # This file contains the screen code to display a fake Blue Screen of death. diff --git a/Additional Mod Features/Gallery/extras/gallery.rpy b/Additional Mod Features/Gallery/extras/gallery.rpy index 8413a47d..46fe08f1 100644 --- a/Additional Mod Features/Gallery/extras/gallery.rpy +++ b/Additional Mod Features/Gallery/extras/gallery.rpy @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains the screen code for the Gallery Menu. # The code is designed to work with Ren'Py 8 and uses the `_ren.py` approach for Python code. diff --git a/Additional Mod Features/Gallery/extras/py/gallery_ren.py b/Additional Mod Features/Gallery/extras/py/gallery_ren.py index c11f94de..f3cf0a25 100644 --- a/Additional Mod Features/Gallery/extras/py/gallery_ren.py +++ b/Additional Mod Features/Gallery/extras/py/gallery_ren.py @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains the Python code for the Gallery Menu. # The code is designed to work with Ren'Py 8 and uses the `_ren.py` approach for Python code. diff --git a/README.md b/README.md index 70352bc6..a8ab547e 100644 --- a/README.md +++ b/README.md @@ -218,5 +218,5 @@ Thanks to the following people for their contributions to the DDLC Mod Template: ---

- Copyright © 2019-2025 Azariel "Bronya Rand" Del Carmen (bronya_rand). All rights reserved. Doki Doki Literature Club, the Doki Doki Literature Club code, is the property of Team Salvato. Copyright © 2017 Team Salvato. All rights reserved. + Copyright © 2019-2026 Azariel "Bronya Rand" Del Carmen (bronya_rand). All rights reserved. Doki Doki Literature Club, the Doki Doki Literature Club code, is the property of Team Salvato. Copyright © 2017 Team Salvato. All rights reserved.

diff --git a/game/definitions/cgs.rpy b/game/definitions/cgs.rpy index 332370c0..28a0d846 100644 --- a/game/definitions/cgs.rpy +++ b/game/definitions/cgs.rpy @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file defines all the character graphics (CGs) in DDLC such as Yuri's # Chocolate CG and Natsuki's Manga CG. diff --git a/game/definitions/definitions.rpy b/game/definitions/definitions.rpy index e2861fc1..2fa0bf8e 100644 --- a/game/definitions/definitions.rpy +++ b/game/definitions/definitions.rpy @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file defines important stuff for DDLC and your mod! # This variable declares whether to enable Developer Tools from Ren'Py. diff --git a/game/definitions/effects.rpy b/game/definitions/effects.rpy index 7c6242c3..f56d1409 100644 --- a/game/definitions/effects.rpy +++ b/game/definitions/effects.rpy @@ -1,26 +1,12 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file defines all the effects in DDLC used in Act 2 and beyond. +define effects = object() init python: - # This function returns the size of a 16:9 screenshot surface. - def screenshot_srf_size(): - width, height = renpy.get_physical_size() - if float(width) / float(height) > 16.0/9.0: - width = height * 16 / 9 - else: - height = width * 9 / 16 - return (width, height) - # This screenshot is used to screenshot the game which is used for different # effects in-game. def screenshot_srf(): - if renpy.version_tuple > (7, 3, 5, 606): - srf = renpy.display.draw.screenshot(None) - else: - srf = renpy.display.draw.screenshot(None, False) - - # The screenshot's size must match the window. - srf = renpy.display.scale.smoothscale(srf, screenshot_srf_size()) + srf = renpy.display.draw.screenshot(None) return srf # This function inverts the image in-game for the Invert Class. @@ -35,16 +21,21 @@ init python: class Invert(renpy.Displayable): def __init__(self, delay=0.0, screenshot_delay=0.0): super(Invert, self).__init__() - self.width, self.height = screenshot_srf_size() - self.srf = invert() + self.width, self.height = renpy.get_physical_size() + self.height = self.width * 9 / 16 + effects.invert_srf = invert() self.delay = delay def render(self, width, height, st, at): render = renpy.Render(self.width, self.height) if st >= self.delay: - render.blit(self.srf, (0, 0)) + render.blit(effects.invert_srf, (0, 0)) return render + def hide_windows_enabled(enabled=True): + global _windows_hidden + _windows_hidden = not enabled + ## Invert(length, delay) # This screen is called using the state `show screen invert(0.15, 0.3)` to invert the screen. # Syntax @@ -55,8 +46,11 @@ screen invert(length, delay=0.0): timer delay action PauseAudio("music") timer delay action Play("sound", "sfx/glitch1.ogg") timer length + delay action Hide("invert") + on "show" action Function(hide_windows_enabled, enabled=False) on "hide" action PauseAudio("music", False) on "hide" action Stop("sound") + on "hide" action Function(hide_windows_enabled, enabled=True) + init python: # This class defines the code for the tear piece effect in 'screen tear'. @@ -81,26 +75,39 @@ init python: class Tear(renpy.Displayable): def __init__(self, number, offtimeMult, ontimeMult, offsetMin, offsetMax, srf=None): super(Tear, self).__init__() - self.width, self.height = screenshot_srf_size() + self.width, self.height = renpy.get_physical_size() + screenshot_offset_x = 0 + screenshot_offset_y = 0 + if float(self.width) / float(self.height) > 16.0/9.0: + screenshot_offset_x = int((self.width - int(self.height * 16 / 9)) / 2) + self.width = int(self.height * 16 / 9) + else: + screenshot_offset_y = int((self.height - int(self.width * 9 / 16)) / 2) + self.height = int(self.width * 9 / 16) self.number = number + if not srf: effects_vars.tear_srf = screenshot_srf() + else: effects_vars.tear_srf = srf + + if (screenshot_offset_x != 0 or screenshot_offset_y != 0) and effects_vars.tear_srf.get_size() == renpy.get_physical_size(): + effects_vars.tear_srf = screenshot_srf().subsurface(screenshot_offset_x, screenshot_offset_y, self.width, self.height) if not srf: self.srf = screenshot_srf() else: self.srf = srf self.pieces = [] tearpoints = [0, self.height] for i in range(number): - tearpoints.append(random.randint(10, int(self.height) - 10)) + tearpoints.append(random.randint(10, int(self.height - 10))) tearpoints.sort() for i in range(number+1): self.pieces.append(TearPiece(tearpoints[i], tearpoints[i+1], offtimeMult, ontimeMult, offsetMin, offsetMax)) def render(self, width, height, st, at): render = renpy.Render(self.width, self.height) - render.blit(self.srf, (0,0)) + render.blit(effects_vars.tear_srf, (0,0)) for piece in self.pieces: piece.update(st) - subsrf = self.srf.subsurface((0, max(0, piece.startY - 1), self.width, max(0, piece.endY - piece.startY))) + subsrf = effects_vars.tear_srf.subsurface((0, max(0, piece.startY - 1), self.width, max(0, piece.endY - piece.startY))) render.blit(subsrf, (piece.offset, piece.startY)) renpy.redraw(self, 0) return render @@ -117,6 +124,8 @@ init python: screen tear(number=10, offtimeMult=1, ontimeMult=1, offsetMin=0, offsetMax=50, srf=None): zorder 150 add Tear(number, offtimeMult, ontimeMult, offsetMin, offsetMax, srf) size (1280,720) + on "show" action Function(hide_windows_enabled, enabled=False) + on "hide" action Function(hide_windows_enabled, enabled=True) # RectStatic # These images transforms show glitched rectangles in-game during Act 3 when Monika @@ -171,7 +180,7 @@ init python: ## ParticleBurst # This class declares the code used for the ParticleBurst effect. class ParticleBurst(object): - def __init__(self, theDisplayable, explodeTime=0, numParticles=20, particleTime = 0.500, particleXSpeed = 3, particleYSpeed = 5): + def __init__(self, theDisplayable, explodeTime=0, numParticles=20, particleTime = 0.500, particleTimeOffset = 0.0, particleXSpeed = 3, particleYSpeed = 5): self.sm = SpriteManager(update=self.update) self.stars = [ ] @@ -179,6 +188,7 @@ init python: self.explodeTime = explodeTime self.numParticles = numParticles self.particleTime = particleTime + self.particleTimeOffset = particleTimeOffset self.particleXSpeed = particleXSpeed self.particleYSpeed = particleYSpeed self.gravity = 240 @@ -200,10 +210,11 @@ init python: def update(self, st): sindex=0 + st_offset = st - self.particleTimeOffset for s, ySpeed, xSpeed, particleTime in self.stars: - if (st < particleTime): - s.x = xSpeed * 120 * (st + .20) - s.y = (ySpeed * 120 * (st + .20) + (self.gravity * st * st)) + if ((st_offset) < particleTime): + s.x = xSpeed * 120 * (st_offset + .20) + s.y = (ySpeed * 120 * (st_offset + .20) + (self.gravity * st_offset * st_offset)) else: s.destroy() self.stars.pop(sindex) @@ -288,49 +299,6 @@ init python: pindex += 1 return 0 -# This image transform adds a blood drop that gets longer and -# thinner over time. -image blood_particle_drip: - "gui/blood_drop.png" - yzoom 0 yanchor 0.2 subpixel True - linear 10 yzoom 8 - -# This image transform adds a blood drop that gets thinner -# randomly by time. -image blood_particle: - subpixel True - "gui/blood_drop.png" - zoom 0.75 - alpha 0.75 - choice: - linear 0.25 zoom 0 - choice: - linear 0.35 zoom 0 - choice: - linear 0.35 zoom 0 - choice: - linear 0.55 zoom 0 - -# This image transform adds a blood drop that squirts and -# drops for three minutes. -image blood: - size (1, 1) - truecenter - Blood("blood_particle").sm - -# This image transform adds a blood drop that doesn't squirts, -# and increases the chance of dropping. -image blood_eye: - size (1, 1) - truecenter - Blood("blood_particle", dripChance=0.5, numSquirts=0).sm - -# This image transform adds a blood drop that has a very low -# chance to drop. -image blood_eye2: - size (1, 1) - truecenter - Blood("blood_particle", dripChance=0.005, numSquirts=0, burstSize=0).sm init python: ## AnimatedMask @@ -358,7 +326,6 @@ init python: mr = renpy.render(self.mask, width, height, st, at) mb = renpy.Render(width, height) - if self.moving: mb.place(self.mask, ((-st * 50) % (width * 2)) - (width * 2), 0) mb.place(self.maskb, -width / 2, 0) @@ -366,8 +333,6 @@ init python: mb.place(self.mask, 0, 0) mb.place(self.maskb, 0, 0) - - cw, ch = cr.get_size() mw, mh = mr.get_size() @@ -381,49 +346,72 @@ init python: nr = renpy.render(self.null, width, height, st, at) rv = renpy.Render(w, h) + rv.mesh = True + rv.add_shader("renpy.imagedissolve") - complete = self.oc + math.pow(math.sin(st * self.speed / 8), 64 * self.frequency) * self.amount - - rv.operation = renpy.display.render.IMAGEDISSOLVE - rv.operation_alpha = 1.0 - rv.operation_complete = complete - rv.operation_parameter = self.op + mult = self.op if (self.op > 0) else 1 + progress = self.oc + math.pow(math.sin(st * self.speed / 8), 64 * self.frequency) * self.amount - if renpy.display.render.models: - - target = rv.get_size() - - op = self.op - - # Prevent a DBZ if the user gives us a 0 ramp. - if op < 1: - op = 1 - - # Compute the offset to apply to the alpha. - start = -1.0 - end = op / 256.0 - offset = start + (end - start) * complete - - rv.mesh = True - - rv.add_shader("renpy.imagedissolve",) - rv.add_uniform("u_renpy_dissolve_offset", offset) - rv.add_uniform("u_renpy_dissolve_multiplier", 256.0 / op) - rv.add_property("mipmap", renpy.config.mipmap_dissolves if (self.style.mipmap is None) else self.style.mipmap) + offset = ((mult / 256.0) + 1) * progress - 1.0 - rv.blit(mb, (0, 0), focus=False, main=False) + rv.add_uniform("u_renpy_dissolve_offset", offset) + rv.add_uniform("u_renpy_dissolve_multiplier", 256.0 / mult) + + rv.blit(mb, (0, 0), focus=False, main=False) rv.blit(nr, (0, 0), focus=False, main=False) rv.blit(cr, (0, 0)) renpy.redraw(self, 0) return rv - # This function makes a image be transparent for a bit then - # fade in and out in Act 3. def monika_alpha(trans, st, at): trans.alpha = math.pow(math.sin(st / 8), 64) * 1.4 return 0 +# This image transform adds a blood drop that gets longer and +# thinner over time. +image blood_particle_drip: + "gui/blood_drop.png" + yzoom 0 yanchor 0.2 subpixel True + linear 10 yzoom 8 + +# This image transform adds a blood drop that gets thinner +# randomly by time. +image blood_particle: + subpixel True + "gui/blood_drop.png" + zoom 0.75 + alpha 0.75 + choice: + linear 0.25 zoom 0 + choice: + linear 0.35 zoom 0 + choice: + linear 0.35 zoom 0 + choice: + linear 0.55 zoom 0 + +# This image transform adds a blood drop that squirts and +# drops for three minutes. +image blood: + size (1, 1) + truecenter + Blood("blood_particle").sm + +# This image transform adds a blood drop that doesn't squirts, +# and increases the chance of dropping. +image blood_eye: + size (1, 1) + truecenter + Blood("blood_particle", dripChance=0.5, numSquirts=0).sm + +# This image transform adds a blood drop that has a very low +# chance to drop. +image blood_eye2: + size (1, 1) + truecenter + Blood("blood_particle", dripChance=0.005, numSquirts=0, burstSize=0).sm + ## The Old Blue Screen of Death # These images tricks the player to think their PC has crashed. # This feature has been depreciated in favor for Better BSODs diff --git a/game/definitions/py/0core_ren.py b/game/definitions/py/0core_ren.py index b62c3e07..3c2be0dc 100644 --- a/game/definitions/py/0core_ren.py +++ b/game/definitions/py/0core_ren.py @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file handles locking the game to ensure that only one instance is running at a time. # This is basically a revamped version of `singleton.py` to allow enabling/disabling singleton behavior. diff --git a/game/definitions/py/core_ren.py b/game/definitions/py/core_ren.py index b0227b76..5dce8651 100644 --- a/game/definitions/py/core_ren.py +++ b/game/definitions/py/core_ren.py @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains the major Python code for DDLC and the Mod Template + Features. # Altering this file may break the game or mod functionality. diff --git a/game/definitions/py/splash_ren.py b/game/definitions/py/splash_ren.py index 97bfcee8..b9979f76 100644 --- a/game/definitions/py/splash_ren.py +++ b/game/definitions/py/splash_ren.py @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file checks that 'audio.rpa', 'fonts.rpa' and 'images.rpa' are in the # game folder and if the project is in a cloud folder (OneDrive). # Note: For building a mod for PC/Android, you must keep the DDLC RPAs diff --git a/game/definitions/splash.rpy b/game/definitions/splash.rpy index e6ea7a84..cb78453c 100644 --- a/game/definitions/splash.rpy +++ b/game/definitions/splash.rpy @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This is where the splashscreen, disclaimer and menu code reside in. # This image text shows the splash message when the game loads. diff --git a/game/definitions/transforms.rpy b/game/definitions/transforms.rpy index 1f57ac53..cf6a08c4 100644 --- a/game/definitions/transforms.rpy +++ b/game/definitions/transforms.rpy @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file defines the placements and animations in DDLC. # This transform sizes the character properly at the given X position. diff --git a/game/poem_game/py/poemgame_chibi_ren.py b/game/poem_game/py/poemgame_chibi_ren.py index 6743b322..a1d18cc5 100644 --- a/game/poem_game/py/poemgame_chibi_ren.py +++ b/game/poem_game/py/poemgame_chibi_ren.py @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains the transform code for the Chibi animations in the DDLC poem game. # The code is designed to work with Ren'Py 8 and uses the `_ren.py` approach for Python code. diff --git a/game/poem_game/py/poemgame_ren.py b/game/poem_game/py/poemgame_ren.py index 33c03b8d..93af3173 100644 --- a/game/poem_game/py/poemgame_ren.py +++ b/game/poem_game/py/poemgame_ren.py @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains the Python code for DDLC's poem game. # The code logic has been rewritten to use the Ren'Py `_ren.py` approach for Python code. diff --git a/game/poem_game/py/poemwords_ren.py b/game/poem_game/py/poemwords_ren.py index d9e4f4a0..10c0e756 100644 --- a/game/poem_game/py/poemwords_ren.py +++ b/game/poem_game/py/poemwords_ren.py @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains the Python code of assigning words to characters in the poem game of DDLC. # This file replaces the original `poemwords.txt` file and defines the words used in the poem game diff --git a/game/poem_game/script-poemgame.rpy b/game/poem_game/script-poemgame.rpy index 4ae47afa..e3d801f4 100644 --- a/game/poem_game/script-poemgame.rpy +++ b/game/poem_game/script-poemgame.rpy @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains the Ren'Py code for the Poem Game in DDLC. # For the Python code, see `poemgame_ren.py` in the `py` directory. diff --git a/game/poem_responses/poems.rpy b/game/poem_responses/poems.rpy index a6166f72..c334bd02 100644 --- a/game/poem_responses/poems.rpy +++ b/game/poem_responses/poems.rpy @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains the Ren'Py code for displaying poems in DDLC. # For the Python code, see `poems_ren.py` in the `py` directory. diff --git a/game/poem_responses/py/poemresponses_ren.py b/game/poem_responses/py/poemresponses_ren.py index d357c3a3..661892e3 100644 --- a/game/poem_responses/py/poemresponses_ren.py +++ b/game/poem_responses/py/poemresponses_ren.py @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains code that manages parts of the poem response minigame. ## Not included in the game, but used for IDEs to avoid multiple warnings. diff --git a/game/poem_responses/py/poems_ren.py b/game/poem_responses/py/poems_ren.py index 45fe15ad..5d96d3e5 100644 --- a/game/poem_responses/py/poems_ren.py +++ b/game/poem_responses/py/poems_ren.py @@ -1,4 +1,4 @@ -# Copyright 2019-2025 Azariel Del Carmen (bronya_rand). All rights reserved. +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file contains the Python code for displaying poems in DDLC. # The logic for displaying poems has been changed drastically compared to the original diff --git a/game/py/screens_ren.py b/game/py/screens_ren.py new file mode 100644 index 00000000..4b38225a --- /dev/null +++ b/game/py/screens_ren.py @@ -0,0 +1,28 @@ +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. +# This file contains utility functions for screen adjustments in the Mod Template (some used for DDLC Mobile features). + +"""renpy +init python: +""" + +TABS = 4 # Default number of tabs in preferences. + +# (230 - 300) / (4 - 3) from DDLC Mobile to Mod Template defaults +# If adding more tabs, adjust accordingly. +WIDTH_LINEAR_SLOPE = -70 + + +def get_pref_tab_button_width(): + """ + Docstring for get_button_width + + :param tabs: Description + :type tabs: int + """ + # y - 300 = WIDTH_LINEAR_SLOPE(x - 3) using DDLC Mobile original + # width of 300 at 3 tabs (or y = WIDTH_LINEAR_SLOPE * x + 510) + width = WIDTH_LINEAR_SLOPE * TABS + 510 + + # Ensure the width is within reasonable bounds + min_width = 150 + return max(width, min_width) diff --git a/game/screens.rpy b/game/screens.rpy index 2f65a3db..ad2ec500 100644 --- a/game/screens.rpy +++ b/game/screens.rpy @@ -1,5 +1,4 @@ -## screens.rpy - +# Copyright 2019-2026 Azariel Del Carmen (bronya_rand). All rights reserved. # This file declares all the screens and styles in DDLC. ## Initialization @@ -58,64 +57,73 @@ style default_monika is normal: style edited is default: font "gui/font/VerilySerifMono.otf" kerning 8 - outlines [(10, "#000", 0, 0)] - xpos gui.text_xpos - xanchor gui.text_xalign - xsize gui.text_width - ypos gui.text_ypos - text_align gui.text_xalign - layout ("subtitle" if gui.text_xalign else "tex") + outlines get_scaled_outlines([(10, "#000", 0, 0)], gui.text_size, gui.max_text_size, gui.text_scale) + xpos gui.dialogue_xpos + xanchor gui.dialogue_text_xalign + xsize get_variable_size(gui.dialogue_width, gui.max_dialogue_width, gui.text_scale) + ypos gui.dialogue_ypos + text_align gui.dialogue_text_xalign + layout ("subtitle" if gui.dialogue_text_xalign else "tex") style normal is default: - xpos gui.text_xpos - xanchor gui.text_xalign - xsize gui.text_width - ypos gui.text_ypos + xpos gui.dialogue_xpos + xanchor gui.dialogue_text_xalign + xsize get_variable_size(gui.dialogue_width, gui.max_dialogue_width, gui.text_scale) + ypos gui.dialogue_ypos - text_align gui.text_xalign - layout ("subtitle" if gui.text_xalign else "tex") + text_align gui.dialogue_text_xalign + layout ("subtitle" if gui.dialogue_text_xalign else "tex") style input: color gui.accent_color +style hyperlink_text: + color gui.accent_color + hover_color gui.hover_color + hover_underline True + style splash_text: - size 24 + size get_variable_size(24, 36, gui.text_scale) color "#000" - font gui.default_font + font gui.text_font text_align 0.5 outlines [] +style poemgame_button is button: + xsize 226 + ysize 63 + style poemgame_text: yalign 0.5 - font "gui/font/Halogen.ttf" - size 30 + font gui.halogen_font + size get_variable_size(30, 36, gui.text_scale) color "#000" outlines [] hover_xoffset -3 - hover_outlines [(3, "#fef", 0, 0), (2, "#fcf", 0, 0), (1, "#faf", 0, 0)] + hover_outlines get_scaled_outlines([(3, "#fef", 0, 0), (2, "#fcf", 0, 0), (1, "#faf", 0, 0)], 30, 36, gui.text_scale) style gui_text: - font gui.interface_font + font gui.interface_text_font color gui.interface_text_color - size gui.interface_text_size - + size get_variable_size(gui.interface_text_size, gui.max_interface_text_size, gui.text_scale) style button: properties gui.button_properties("button") style button_text is gui_text: properties gui.button_text_properties("button") + size get_variable_size(gui.button_text_size, gui.max_button_text_size, gui.text_scale) yalign 0.5 style label_text is gui_text: color gui.accent_color - size gui.label_text_size + size get_variable_size(gui.label_text_size, gui.max_label_text_size, gui.text_scale) style prompt_text is gui_text: color gui.text_color - size gui.interface_text_size + size get_variable_size(gui.interface_text_size, gui.max_interface_text_size, gui.text_scale) style vbar: xsize gui.bar_size @@ -134,23 +142,30 @@ style scrollbar: unscrollable "hide" bar_invert True + style vscrollbar: xsize 18 base_bar Frame("gui/scrollbar/vertical_poem_bar.png", tile=False) - thumb Frame("gui/scrollbar/vertical_poem_thumb.png", left=6, top=6, tile=True) + thumb Frame("gui/slider/horizontal_hover_thumb.png", left=6, top=6, tile=True) unscrollable "hide" bar_invert True + thumb_offset (8, 8) + +style vscrollbar_hc is vscrollbar: + base_bar Frame("gui/scrollbar/vertical_poem_bar_hc.png", tile=False) + thumb Frame("gui/slider/horizontal_hover_thumb_hc.png", left=6, top=6, tile=True) style slider: - ysize 18 + ysize (34 if renpy.mobile else 18) base_bar Frame("gui/scrollbar/horizontal_poem_bar.png", tile=False) - thumb "gui/slider/horizontal_hover_thumb.png" + thumb Transform("gui/slider/horizontal_hover_thumb.png", zoom=(1.0 if renpy.mobile else 0.7), anchor=(0.5, 0.5)) + thumb_offset 8 style vslider: xsize gui.slider_size base_bar Frame("gui/slider/vertical_[prefix_]bar.png", gui.vslider_borders, tile=gui.slider_tile) thumb "gui/slider/vertical_[prefix_]thumb.png" - + thumb_offset (8, 8) style frame: padding gui.frame_borders.padding @@ -229,30 +244,63 @@ style namebox: style say_label: color gui.accent_color - font gui.name_font - size gui.name_text_size + font gui.name_text_font + size get_variable_size(gui.name_text_size, gui.max_name_text_size, gui.text_scale) xalign gui.name_xalign yalign 0.5 - outlines [(3, text_outline_color, 0, 0), (1, text_outline_color, 1, 1)] - #outlines [(3, "#b59", 0, 0), (1, "#b59", 1, 1)] + outlines get_scaled_outlines([(3, text_outline_color, 0, 0), (1, text_outline_color, 1, 1)], gui.name_text_size, gui.max_name_text_size, gui.text_scale) style say_dialogue: - xpos gui.text_xpos - xanchor gui.text_xalign - xsize gui.text_width - ypos gui.text_ypos - - text_align gui.text_xalign - layout ("subtitle" if gui.text_xalign else "tex") - -image ctc: - xalign 0.81 yalign 0.98 xoffset -5 alpha 0.0 subpixel True - "gui/ctc.png" + xpos gui.dialogue_xpos + xanchor gui.dialogue_text_xalign + xfill True + ypos gui.dialogue_ypos + xsize get_variable_size(gui.dialogue_width, gui.max_dialogue_width, gui.text_scale) + text_align gui.dialogue_text_xalign + layout ("subtitle" if gui.dialogue_text_xalign else "tex") + +image ctc_image: + subpixel True + alpha 0.0 + xoffset -5 + Transform("gui/ctc.png", zoom=get_resolution_scale()) block: easeout 0.75 alpha 1.0 xoffset 0 easein 0.75 alpha 0.5 xoffset -5 repeat +image auto_ctc_base = Transform("gui/auto_ctc_base.png", zoom=get_resolution_scale()) +image auto_ctc_fill = Transform("gui/auto_ctc_fill.png", zoom=get_resolution_scale()) + +transform auto_ctc_pos: + zoom 0.7 + yalign 0.98 + xoffset -5 + alpha 0.0 + easeout 0.1 alpha 0.8 + on hide: + easeout 0.1 alpha 0.0 + +screen ctc: + fixed at auto_ctc_pos: + style "ctc_fixed" + + if _preferences.afm_enable == True: + add "auto_ctc_base" at auto_ctc_pos: + fit "cover" + align (0.5, 0.5) + # add "auto_ctc_fill" at radial_alpha(wait_timer=get_automode_time()), auto_ctc_pos: + # fit "cover" + # align (0.5, 0.5) + else: + add "ctc_image" at auto_ctc_pos: + fit "scale-up" + align (0.5, 0.5) + +style ctc_fixed: + xalign gui.ctc_xalign + xysize (round(50 * gui.ctc_zoom), round(50 * gui.ctc_zoom)) + ## Input screen ################################################################ ## ## This screen is used to display renpy.input. The prompt parameter is used to @@ -264,7 +312,7 @@ image ctc: ## http://www.renpy.org/doc/html/screen_special.html#input image input_caret: - Solid("#b59") + Solid(text_outline_color) size (2,25) subpixel True block: linear 0.35 alpha 0 @@ -275,26 +323,25 @@ screen input(prompt): style_prefix "input" window: + has vbox + xpos gui.dialogue_xpos + xanchor 0.5 + ypos gui.dialogue_ypos - vbox: - xpos gui.text_xpos - xanchor 0.5 - ypos gui.text_ypos - - text prompt style "input_prompt" - input id "input" + text prompt style "input_prompt" + input id "input" style input_prompt is default style input_prompt: - xmaximum gui.text_width - xalign gui.text_xalign - text_align gui.text_xalign + xmaximum gui.dialogue_width + xalign gui.dialogue_text_xalign + text_align gui.dialogue_text_xalign style input: caret "input_caret" - xmaximum gui.text_width + xmaximum gui.dialogue_width xalign 0.5 text_align 0.5 @@ -372,13 +419,13 @@ style choice_vbox: style choice_button is default: properties gui.button_properties("choice_button") - hover_sound gui.hover_sound + xsize get_variable_size(gui.choice_button_width, gui.max_choice_button_width, gui.text_scale) + hover_sound (gui.hover_sound if not renpy.mobile else None) activate_sound gui.activate_sound - idle_background Frame("gui/button/choice_idle_background.png", gui.choice_button_borders) - hover_background Frame("gui/button/choice_hover_background.png", gui.choice_button_borders) style choice_button_text is default: properties gui.button_text_properties("choice_button") + size get_variable_size(gui.choice_button_text_size, gui.max_choice_button_text_size, gui.text_scale) outlines [] @@ -445,8 +492,12 @@ style quick_button: style quick_button_text: properties gui.button_text_properties("quick_button") + size get_variable_size(gui.quick_button_text_size, gui.max_quick_button_text_size, gui.text_scale) outlines [] +style quick_hbox: + spacing get_variable_size(gui.quick_menu_spacing, gui.max_quick_menu_spacing, gui.text_scale) + ################################################################################ # Main and Game Menu Screens @@ -458,8 +509,11 @@ style quick_button_text: ## to other menus, and to start the game. init python: - def FinishEnterName(launchGame=True): - if not player: return + def FinishEnterName(start_game=True): + if not player: + if renpy.mobile: + renpy.hide_screen("name_input") + return persistent.playername = player renpy.save_persistent() renpy.hide_screen("name_input") @@ -467,38 +521,44 @@ init python: renpy.jump_out_of_context("start") screen navigation(): + if main_menu: + add "menu_nav" + else: + add "game_nav" vbox: style_prefix "navigation" - xpos gui.navigation_xpos - yalign 0.8 - - spacing gui.navigation_spacing + if renpy.mobile: + xpos gui.navigation_xpos + spacing gui.max_navigation_spacing + else: + xpos get_variable_size(gui.max_navigation_xpos, gui.navigation_xpos, gui.text_scale) + spacing get_variable_size(gui.navigation_spacing, gui.max_navigation_spacing, gui.text_scale) + + yanchor 1.0 + yalign 0.85 + xmaximum 200 if not persistent.autoload or not main_menu: if main_menu: if persistent.playthrough == 1: - textbutton _("ŔŗñĮ¼»ŧþŀÂŻŕěōì«") action If(persistent.playername, true=Start(), false=Show(screen="name_input", message="Please enter your name", ok_action=Function(FinishEnterName))) + textbutton _("ŔŗñĮ¼»ŧþŀÂŻŕěōì«") action If(persistent.playername, true=Start(), false=Show(screen="name_input", message="Please enter your name", ok_action=Function(FinishEnterName))) at loc_text_fit else: - textbutton _("New Game") action If(persistent.playername, true=Start(), false=Show(screen="name_input", message="Please enter your name", ok_action=Function(FinishEnterName))) + textbutton _("New Game") action If(persistent.playername, true=Start(), false=Show(screen="name_input", message="Please enter your name", ok_action=Function(FinishEnterName))) at loc_text_fit else: - textbutton _("History") action [ShowMenu("history"), SensitiveIf(renpy.get_screen("history") == None)] + textbutton _("History") action [ShowMenu("history"), SensitiveIf(renpy.get_screen("history") == None)] at loc_text_fit - textbutton _("Save Game") action [ShowMenu("save"), SensitiveIf(renpy.get_screen("save") == None)] + textbutton _("Save Game") action [ShowMenu("save"), SensitiveIf(renpy.get_screen("save") == None)] at loc_text_fit - textbutton _("Load Game") action [ShowMenu("load"), SensitiveIf(renpy.get_screen("load") == None)] + textbutton _("Load Game") action [ShowMenu("load"), SensitiveIf(renpy.get_screen("load") == None)] at loc_text_fit if enable_extras_menu: - textbutton _("Extras") action [ShowMenu("extras"), SensitiveIf(renpy.get_screen("extras") == None)] - - if _in_replay: - - textbutton _("End Replay") action EndReplay(confirm=True) + textbutton _("Extras") action [ShowMenu("extras"), SensitiveIf(renpy.get_screen("extras") == None)] at loc_text_fit elif not main_menu: if persistent.playthrough != 3: @@ -511,6 +571,9 @@ screen navigation(): if not enable_extras_menu: textbutton _("Credits") action ShowMenu("about") + if _in_replay: + textbutton _("End Replay") action EndReplay(confirm=True) at loc_text_fit + if renpy.variant("pc"): ## Help isn't necessary or relevant to mobile devices. @@ -523,22 +586,24 @@ screen navigation(): style navigation_button is gui_button -style navigation_button_text is gui_button_text +style navigation_button_text is gui_button_text: + size (gui.max_button_text_size if renpy.mobile else get_variable_size(gui.button_text_size, gui.max_button_text_size, gui.text_scale)) style navigation_button: size_group "navigation" properties gui.button_properties("navigation_button") - hover_sound gui.hover_sound + ysize (54 if renpy.mobile else gui.button_height) + hover_sound (gui.hover_sound if not renpy.mobile else None) activate_sound gui.activate_sound style navigation_button_text: properties gui.button_text_properties("navigation_button") - font "gui/font/RifficFree-Bold.ttf" + layout "nobreak" + font gui.riffic_font color "#fff" - outlines [(4, text_outline_color, 0, 0), (2, text_outline_color, 2, 2)] - #outlines [(4, "#b59", 0, 0), (2, "#b59", 2, 2)] - hover_outlines [(4, "#fac", 0, 0), (2, "#fac", 2, 2)] - insensitive_outlines [(4, "#fce", 0, 0), (2, "#fce", 2, 2)] + outlines get_scaled_outlines([(4, text_outline_color, 0, 0), (2, text_outline_color, 2, 2)], (gui.max_button_text_size if renpy.mobile else gui.button_text_size), gui.max_button_text_size, gui.text_scale) + hover_outlines get_scaled_outlines([(4, "#fac", 0, 0), (2, "#fac", 2, 2)], (gui.max_button_text_size if renpy.mobile else gui.button_text_size), gui.max_button_text_size, gui.text_scale) + insensitive_outlines get_scaled_outlines([(4, "#fce", 0, 0), (2, "#fce", 2, 2)], (gui.max_button_text_size if renpy.mobile else gui.button_text_size), gui.max_button_text_size, gui.text_scale) ## Main Menu screen ############################################################ @@ -568,6 +633,13 @@ screen main_menu(): ## contents of the main menu are in the navigation screen. use navigation + if gui.show_name: + vbox: + text "[config.name!t]": + style "main_menu_title" + text "[config.version!t]": + style "main_menu_version" + if not persistent.ghost_menu: add "menu_particles" add "menu_particles" @@ -576,6 +648,9 @@ screen main_menu(): if persistent.ghost_menu: add "menu_art_s_ghost" add "menu_art_m_ghost" + + if renpy.mobile: + timer 4.0 action Show("fullscreen_return_button") else: if persistent.playthrough == 1 or persistent.playthrough == 2: add "menu_art_s_glitch" @@ -586,17 +661,13 @@ screen main_menu(): add "menu_art_m" add "menu_fade" - if gui.show_name: - - vbox: - text "[config.name!t]": - style "main_menu_title" - - text "[config.version]": - style "main_menu_version" - key "K_ESCAPE" action Quit(confirm=False) +screen fullscreen_return_button: + button: + xysize (1.0, 1.0) + action Jump("quit") + style main_menu_frame is empty style main_menu_vbox is vbox style main_menu_text is gui_text @@ -610,7 +681,7 @@ style main_menu_frame: xsize 310 yfill True - background "menu_nav" + background None style main_menu_vbox: xalign 1.0 @@ -655,60 +726,67 @@ screen game_menu(title, scroll=None): style_prefix "game_menu" + use navigation + frame: style "game_menu_outer_frame" - hbox: + has hbox - # Reserve space for the navigation section. - frame: - style "game_menu_navigation_frame" + frame: + style "game_menu_navigation_frame" - frame: - style "game_menu_content_frame" + frame: + style "game_menu_content_frame" - if scroll == "viewport": + # if renpy.get_screen("history"): + # background Frame("history_background") + # padding (10, 10) + # xsize 1.0 - viewport: - scrollbars "vertical" - mousewheel True - draggable True - yinitial 1.0 + if scroll == "viewport": - side_yfill True + viewport: + at vp_vert_scroll_mask + scrollbars "vertical" + vscrollbar_xoffset -30 + mousewheel True + draggable True - vbox: - transclude + side_yfill True - elif scroll == "vpgrid": + has vbox + transclude - vpgrid: - cols 1 - yinitial 1.0 + elif scroll == "vpgrid": - scrollbars "vertical" - mousewheel True - draggable True + vpgrid: + cols 1 - side_yfill True + scrollbars "vertical" + mousewheel True + draggable True - transclude - - else: + side_yfill True transclude - use navigation + else: - if not main_menu and persistent.playthrough == 2 and not persistent.menu_bg_m and renpy.random.randint(0, 49) == 0: + transclude + + if not main_menu and persistent.playthrough == 2 and not persistent.menu_bg_m and renpy.random.randint(0, 49) == 0 and persistent.content_warnings_enabled == False: on "show" action Show("game_menu_m") textbutton _("Return"): style "return_button" - + if renpy.mobile: + xpos gui.navigation_xpos + else: + xpos get_variable_size(gui.max_navigation_xpos, gui.navigation_xpos, gui.text_scale) action Return() - label title + label title xoffset -16 if main_menu: key "game_menu" action ShowMenu("main_menu") @@ -729,10 +807,9 @@ style return_button_text is navigation_button_text style game_menu_outer_frame: bottom_padding 30 - top_padding 120 + top_padding 30 - background "gui/overlay/game_menu.png" - # background recolorize("gui/overlay/game_menu.png") + background None style game_menu_navigation_frame: xsize 280 @@ -757,15 +834,14 @@ style game_menu_label: ysize 120 style game_menu_label_text: - font "gui/font/RifficFree-Bold.ttf" + font gui.riffic_font size gui.title_text_size color "#fff" outlines [(6, text_outline_color, 0, 0), (3, text_outline_color, 2, 2)] - #outlines [(6, "#b59", 0, 0), (3, "#b59", 2, 2)] yalign 0.5 style return_button: - xpos gui.navigation_xpos + xpos get_variable_size(gui.max_navigation_xpos, gui.navigation_xpos, gui.text_scale) yalign 1.0 yoffset -30 @@ -978,14 +1054,15 @@ style page_button_text: style slot_button: properties gui.button_properties("slot_button") - idle_background Frame("gui/button/slot_idle_background.png", gui.choice_button_borders) - hover_background Frame("gui/button/slot_hover_background.png", gui.choice_button_borders) style slot_button_text: properties gui.button_text_properties("slot_button") color "#666" outlines [] +style mobile_slot_time_text is slot_button_text: + size 24 + screen viewframe_options(title): style_prefix "viewframe" @@ -1109,7 +1186,22 @@ style viewframe_text is confirm_prompt_text: # textbutton _("Reset") action [Hide("display_options"), Function(renpy.reset_physical_size)] # textbutton _("Set") action [Hide("display_options"), Function(set_physical_resolution, scale)] -screen display_preferences(): +image slider_volume_icon_min: + ("gui/slider_volume_icon_min.png" if not persistent.high_contrast else "gui/slider_volume_icon_hc_min.png") +image slider_volume_icon_max: + ("gui/slider_volume_icon_max.png" if not persistent.high_contrast else "gui/slider_volume_icon_hc_max.png") + +image slider_autopace_icon_min: + ("gui/slider_autopace_icon_min.png" if not persistent.high_contrast else "gui/slider_autopace_icon_hc_min.png") +image slider_autopace_icon_max: + ("gui/slider_autopace_icon_max.png" if not persistent.high_contrast else "gui/slider_autopace_icon_hc_max.png") + +image slider_textsize_icon_min: + ("gui/slider_textsize_icon_min.png" if not persistent.high_contrast else "gui/slider_textsize_icon_hc_min.png") +image slider_textsize_icon_max: + ("gui/slider_textsize_icon_max.png" if not persistent.high_contrast else "gui/slider_textsize_icon_hc_max.png") + +screen display_preferences(music_volume, sound_volume, voice_volume): vbox: fixed: ysize 200 @@ -1117,6 +1209,7 @@ screen display_preferences(): if not renpy.mobile: vbox: style_prefix "radio" + xalign 0.0 label _("Display") textbutton _("Windowed") action Preference("display", "window") textbutton _("Fullscreen") action Preference("display", "fullscreen") @@ -1130,27 +1223,19 @@ screen display_preferences(): if config.has_music: label _("Music Volume") - null width 5 - - text "[round(music_volume_val) * 100]" style "value_text" - side "c l r": bar: - value ScreenVariableValue("music_volume_val", range=1.0, offset=0, step=0.1, force_step=True) - changed preferences.set_mixer("music", music_volume_val) + value ScreenVariableValue("music_volume", range=1.0, offset=0, step=0.1, force_step=True, style="slider") + changed preferences.set_mixer("music", music_volume) add "slider_volume_icon_min" yalign 0.5 zoom 0.5 add "slider_volume_icon_max" yalign 0.5 zoom 0.5 if config.has_sound: label _("Sound Volume") - null width 5 - - text str(round(sound_volume * 100)) style "value_text" - side "c l r": bar: - value ScreenVariableValue("sound_volume", range=1.0, offset=0, step=0.1, force_step=True) + value ScreenVariableValue("sound_volume", range=1.0, offset=0, step=0.1, force_step=True, style="slider") changed preferences.set_mixer("sfx", sound_volume) add "slider_volume_icon_min" yalign 0.5 zoom 0.5 add "slider_volume_icon_max" yalign 0.5 zoom 0.5 @@ -1159,10 +1244,7 @@ screen display_preferences(): textbutton _("Test") action Play("sound", config.sample_sound) if config.has_voice: - hbox: - label _("Voice Volume") - null width 5 - text str(round(voice_volume * 100)) style "value_text" + label _("Voice Volume") side "c l r": bar: @@ -1190,24 +1272,16 @@ screen language_preferences(): vbox: label _("Text Speed") - null width 5 - - text str(round(preferences.text_cps)) style "value_text" - side "c l r": - bar value FieldValue(_preferences, "text_cps", range=180, step=30, force_step=True, max_is_zero=False, offset=20): + bar value FieldValue(_preferences, "text_cps", style="slider", range=180, step=30, force_step=True, max_is_zero=False, offset=20): alt "Text Speed" - add "slider_speed_icon_min" yalign 0.5 zoom 0.5 - add "slider_speed_icon_max" yalign 0.5 zoom 0.5 + add "slider_autopace_icon_min" yalign 0.5 zoom 0.5 + add "slider_autopace_icon_max" yalign 0.5 zoom 0.5 label _("Auto-Forward Speed") - null width 5 - - text str(round(preferences.afm_time)) style "value_text" - side "c l r": - bar value FieldValue(_preferences, "afm_time", range=18, step=3, force_step=True, offset=1): + bar value FieldValue(_preferences, "afm_time", style="slider", range=18, step=3, force_step=True, offset=1): bar_invert True add "slider_autopace_icon_min" yalign 0.5 zoom 0.5 add "slider_autopace_icon_max" yalign 0.5 zoom 0.5 @@ -1215,9 +1289,11 @@ screen language_preferences(): label _("Text Size") side "c l r": - bar value FieldValue(_preferences, "text_scale", range=0.5, offset=0.5, step=0.25, force_step=True): + bar value FieldValue(_preferences, "text_scale", style="slider", range=0.5, offset=0.5, step=0.25, force_step=True): released gui.SetPreference("text_scale", preferences.text_scale) alt "Text Size" + add "slider_textsize_icon_min" yalign 0.5 zoom 0.5 + add "slider_textsize_icon_max" yalign 0.5 zoom 0.5 vbox: xsize 1.0 @@ -1232,31 +1308,27 @@ screen language_preferences(): textbutton _("Unseen Text") action Preference("skip", "toggle") textbutton _("After Choices") action Preference("after choices", "toggle") - if persistent.high_contrast: - python: - a = "temp" - else: - add "wip/gui/long_divider_dark.png": - xzoom 0.65 - yzoom 0.8 - xoffset 30 + # null height 40 + + # if persistent.high_contrast == True: + # add "gui/long_divider_dark_hc.png": + # xzoom 0.65 + # yzoom 0.80 + # xoffset 30 + # else: + # add "gui/long_divider_dark.png": + # xzoom 0.65 + # yzoom 0.80 + # xoffset 30 - null height 14 + # null height 14 - label _("Language") + # label _("Language") - # hbox: - # xsize 1.0 - - # fixed: - # # xysize (get_variable_size_f(0.6, 0.7, gui.text_scale), get_variable_size(40, 70, gui.text_scale)) - # imagebutton: - # xalign 0.0 - # yalign 0.5 - # action Function(settings_scroll_language, increment=-1) - # idle Transform("settings_arrow", zoom=0.4, rotate=180) - # hover Transform("settings_arrow_selected", zoom=0.4, rotate=180) - # text str() + # hbox: + # xsize 1.0 + + ## TODO: Language selection dropdown/menu screen accessibility_preferences(): viewport id "settings_accessibility_viewport": @@ -1277,7 +1349,7 @@ screen accessibility_preferences(): text _("Replaces the dialogue box with a darker variant, making dialogue easier to read.") style "pref_hint_text" textbutton _("Reduce Textbox Transparency") action [ToggleField(persistent, "reduce_transparency", True, False), Function(gui.rebuild)] alt _("Reduce Textbox Transparency") text _("Makes the dialogue box opaque, making dialogue easier to read.") style "pref_hint_text" - textbutton _("Alternate Poem Font") action ToggleField(persistent, "use_alt_poem_font", True, False) alt _("Use Alternate Poem Font") style "check_button" + textbutton _("Alternate Poem Font") action ToggleField(persistent, "use_alt_poem_font", True, False) alt _("Use Alternate Poem Font") text _("Switches handwritten fonts in characters' poems with an easier-to-read font.") style "pref_hint_text" null height 20 @@ -1287,10 +1359,10 @@ screen accessibility_preferences(): screen template_preferences(): vbox: hbox: - style_prefix "name" box_wrap False vbox: + style_prefix "name" label _("Player Name") null height 3 @@ -1338,8 +1410,12 @@ screen template_preferences(): textbutton _("Reconnect") action Function(RPC.connect): text_style "navigation_button_text" - null height 80 + # null height 80 +style name_label is pref_label +style name_label_text is pref_label_text +style name_text is radio_button_text: + color "#000" ## Preferences screen ########################################################## ## @@ -1348,10 +1424,21 @@ screen template_preferences(): ## ## https://www.renpy.org/doc/html/screen_special.html#preferences +init python: + def vp_vert_scroll_mask(d): + return AlphaMask(d, Frame("gui/viewport-vertical-fade.png", 0, 13)) + +image pref_background: + textbox_frame(high_contrast=persistent.high_contrast, opaque=persistent.reduce_transparency, dots=False, glare=False) + screen preferences(): tag menu + default music_volume = preferences.get_mixer("music") + default sound_volume = preferences.get_mixer("sfx") + default voice_volume = preferences.get_mixer("voice") default current_tab = "display" + on "show" action [SetScreenVariable("music_volume", preferences.get_mixer("music")), SetScreenVariable("sound_volume", preferences.get_mixer("sfx")), SetScreenVariable("voice_volume", preferences.get_mixer("voice"))] if renpy.mobile: $ cols = 2 @@ -1369,46 +1456,45 @@ screen preferences(): has side 'l c' if renpy.mobile: - add ("wip/gui/pref_display_icon_mobile_selected.png" if current_tab == "display" else "wip/gui/pref_display_icon_mobile.png"): + add ("gui/pref_display_icon_mobile_selected.png" if current_tab == "display" else "gui/pref_display_icon_mobile.png"): yalign 0.75 zoom 0.5 else: - add ("wip/gui/pref_display_icon_selected.png" if current_tab == "display" else "wip/gui/pref_display_icon.png"): - yalign 0.75 - zoom 0.5 - label (_("Audio") if renpy.mobile else _("Display & Sound")) yalign 0.0 text_size 24 at loc_text_fit - if enable_languages and translations: - button: - style ("pref_active_tab_button" if current_tab == "gameplay" else "pref_tab_button") - action SetScreenVariable("current_tab", "language") - has side 'l c' - add ("wip/gui/pref_language_icon_selected.png" if current_tab == "gameplay" else "wip/gui/pref_language_icon.png"): + add ("gui/pref_display_icon_selected.png" if current_tab == "display" else "gui/pref_display_icon.png"): yalign 0.75 zoom 0.5 - label _("Language & Text") yalign 0.0 text_size 24 at loc_text_fit + label (_("Audio") if renpy.mobile else _("Display & Sound")) yalign 0.0 text_size (24 if renpy.mobile else 18) at loc_text_fit style "pref_tab_label" button: - style ("pref_active_tab_button" if current_tab == "gameplay" else "pref_tab_button") - action SetScreenVariable("current_tab", "accessibility") + style ("pref_active_tab_button" if current_tab == "language" else "pref_tab_button") + action SetScreenVariable("current_tab", "language") has side 'l c' - add ("wip/gui/pref_accessibility_icon_selected.png" if current_tab == "accessibility" else "wip/gui/pref_accessibility_icon.png"): + add ("gui/pref_language_icon_selected.png" if current_tab == "language" else "gui/pref_language_icon.png"): yalign 0.75 zoom 0.5 - label _("Accessibility") yalign 0.0 text_size 24 at loc_text_fit + label _("Language & Text") yalign 0.0 text_size (24 if renpy.mobile else 18) at loc_text_fit style "pref_tab_label" + button: + style ("pref_active_tab_button" if current_tab == "accessibility" else "pref_tab_button") + action SetScreenVariable("current_tab", "accessibility") + has side 'l c' + add ("gui/pref_accessibility_icon_selected.png" if current_tab == "accessibility" else "gui/pref_accessibility_icon.png"): + yalign 0.75 + zoom 0.25 # For some reason this icon is larger than the others :BronyaUhhhhh: + label _("Accessibility") yalign 0.0 text_size (24 if renpy.mobile else 18) at loc_text_fit style "pref_tab_label" button: - style ("pref_active_tab_button" if current_tab == "mods" else "pref_tab_button") + style ("pref_active_tab_button" if current_tab == "bronya" else "pref_tab_button") action SetScreenVariable("current_tab", "bronya") has side 'l c' - add ("wip/gui/pref_bronya_icon_selected.png" if current_tab == "bronya" else "wip/gui/pref_bronya_icon.png"): + add ("gui/pref_bronya_icon_selected.png" if current_tab == "bronya" else "gui/pref_bronya_icon.png"): yalign 0.75 zoom 0.5 - label _("Mod Template") yalign 0.0 text_size 24 at loc_text_fit + label _("Mod Template") yalign 0.0 text_size (24 if renpy.mobile else 18) at loc_text_fit style "pref_tab_label" frame: padding (30, 30) showif current_tab == "display": - use display_preferences - elif current_tab == "language" and enable_languages and translations: + use display_preferences(music_volume, sound_volume, voice_volume) + elif current_tab == "language": use language_preferences elif current_tab == "accessibility": use accessibility_preferences @@ -1416,9 +1502,9 @@ screen preferences(): use template_preferences text "v[config.version]": - xalign 1.0 yalign 1.0 - xoffset -10 yoffset -10 - style "main_menu_version" + xalign 1.0 yalign 1.0 + xoffset -10 yoffset -10 + style "main_menu_version" style pref_label is gui_label style pref_label_text is gui_label_text @@ -1451,41 +1537,77 @@ style pref_label: bottom_margin 2 style pref_label_text: - font "gui/font/RifficFree-Bold.ttf" - size 24 + font gui.riffic_font + size get_variable_size(24, 28, gui.text_scale) color "#fff" - outlines [(3, "#b59", 0, 0), (1, "#b59", 1, 1)] + outlines (get_scaled_outlines([(3, text_outline_color, 0, 0), (1, text_outline_color, 1, 1)], 24, 28, gui.text_scale) if not persistent.high_contrast else get_scaled_outlines([(2, gui.hc_label_outline_color, 0, 0), (1, gui.hc_label_outline_color, 1, 1)], 24, 28, gui.text_scale)) yalign 1.0 +style pref_tab_button: + xysize (get_pref_tab_button_width(), 60) + yalign 1.0 + background Frame("gui/namebox-deselected.png", 3, 3) + hover_sound (gui.hover_sound if not renpy.mobile else None) + activate_sound gui.activate_sound + yoffset 9 +style pref_active_tab_button is pref_tab_button: + background Frame("gui/namebox-selected.png", 3, 3) + yoffset 0 +style pref_tab_label is pref_label +style pref_tab_label_text is pref_label_text: + outlines [(4, text_outline_color, 0, 0), (1, text_outline_color, 1, 1)] + layout "nobreak" + +style pref_header_label is pref_label +style pref_header_label_text is pref_label_text: + size get_variable_size(28, 38, gui.text_scale) + outlines get_scaled_outlines([(4, text_outline_color, 0, 0), (1, text_outline_color, 1, 1)], 28, 38, gui.text_scale) + +style pref_hint_text: + font gui.halogen_font + size get_variable_size(24, 30, gui.text_scale) + outlines [] + color (text_outline_color if not persistent.high_contrast else "#ffdfee") + xoffset get_variable_size(40, 60, gui.text_scale) + xmaximum 800 + style pref_vbox: xsize 225 style radio_vbox: - spacing gui.pref_button_spacing + spacing get_variable_size(gui.pref_button_spacing, gui.max_pref_button_spacing, gui.text_scale) style radio_button: properties gui.button_properties("radio_button") foreground "gui/button/check_[prefix_]foreground.png" + # yminimum get_variable_size(24, 32, gui.text_scale) + # ymaximum get_variable_size(48, 64, gui.text_scale) style radio_button_text: properties gui.button_text_properties("radio_button") font "gui/font/Halogen.ttf" outlines [] + style check_vbox: - spacing gui.pref_button_spacing + spacing get_variable_size(gui.pref_button_spacing, gui.max_pref_button_spacing, gui.text_scale) style check_button: properties gui.button_properties("check_button") foreground "gui/button/check_[prefix_]foreground.png" + # ysize get_variable_size(24, 32, gui.text_scale) style check_button_text: properties gui.button_text_properties("check_button") font "gui/font/Halogen.ttf" outlines [] + style slider_slider: xsize 350 + base_bar ("gui/scrollbar/horizontal_poem_bar_short.png" if not persistent.high_contrast else "gui/scrollbar/horizontal_poem_bar_short_hc.png") + thumb ("gui/slider/horizontal_hover_thumb.png" if not persistent.high_contrast else "gui/slider/horizontal_hover_thumb_hc.png") + yalign 0.5 style slider_button: properties gui.button_properties("slider_button") @@ -1498,21 +1620,6 @@ style slider_button_text: style slider_vbox: xsize 450 -style name_label is pref_label -style name_label_text is pref_label_text - -style name_text: - font "gui/font/Halogen.ttf" - size 24 - color gui.idle_color - outlines [] - -style value_text: - size 18 - color "#000" - outlines [] - yalign 0.65 - ## History screen ############################################################## ## ## This is a screen that displays the dialogue history to the player. While @@ -1527,17 +1634,15 @@ screen history(): ## Avoid predicting this screen, as it can be very large. predict False - use game_menu(_("History"), scroll=("vpgrid" if gui.history_height else "viewport")): - + use game_menu(_("History"), scroll=("vpgrid" if gui.history_height else "viewport"), yinitial=1.0): style_prefix "history" for h in _history_list: window: - ## This lays things out properly if history_height is None. - has fixed: - yfit True + has fixed + yfit True if h.who: @@ -1550,15 +1655,13 @@ screen history(): if "color" in h.who_args: text_color h.who_args["color"] - $ what = renpy.filter_text_tags(h.what, allow=gui.history_allow_tags) - text what: - substitute False + text h.what: + ypos (gui.history_text_ypos if h.who else gui.history_name_ypos) + null height get_variable_size(12, 15) if not _history_list: label _("The dialogue history is empty.") -define gui.history_allow_tags = set() - style history_window is empty style history_name is gui_label @@ -1580,9 +1683,11 @@ style history_name: ypos gui.history_name_ypos xsize gui.history_name_width -style history_name_text: +style history_name_text is namebox_label: min_width gui.history_name_width text_align gui.history_name_xalign + xalign 0.0 + layout "nobreak" style history_text: xpos gui.history_text_xpos @@ -1763,18 +1868,27 @@ style history_label_text: ################################################################################ screen name_input(message, ok_action): - ## Ensure other screens do not get input while this screen is displayed. modal True - zorder 200 - style_prefix "confirm" + default inv = VariableInputValue("player") + add "gui/overlay/confirm.png" - key "K_RETURN" action [Play("sound", gui.activate_sound), ok_action] + if renpy.mobile: + key "K_RETURN" action [inv.Disable(), Play("sound", gui.activate_sound), ok_action] + else: + key "K_RETURN" action [Play("sound", gui.activate_sound), ok_action] + if renpy.mobile: + button: + xysize (1.0, 1.0) + action [inv.Disable(), Function(FinishEnterName)] frame: + if renpy.mobile: + yalign 0.0 + yoffset 10 vbox: xalign .5 @@ -1785,8 +1899,17 @@ screen name_input(message, ok_action): style "confirm_prompt" xalign 0.5 - input default "" value VariableInputValue("player") length 12 allow "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя" - #additionally added Cyrillic characters to support Russian names for MC + fixed: + fit_first True + yminimum 10 + + xalign 0.5 + input default "" value VariableInputValue("player") length 12 allow "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдеёжзийклмнопрстуфхцчшщъыьэюя" + if renpy.mobile: + button: + action inv.Enable() + xysize (get_variable_size(280, 400, gui.text_scale), 90) + align (0.5, 0.5) hbox: xalign 0.5 @@ -1795,10 +1918,8 @@ screen name_input(message, ok_action): textbutton _("OK") action ok_action screen dialog(message, ok_action): - ## Ensure other screens do not get input while this screen is displayed. modal True - zorder 200 style_prefix "confirm" @@ -1806,21 +1927,20 @@ screen dialog(message, ok_action): add "gui/overlay/confirm.png" frame: + has vbox + xalign .5 + yalign .5 + spacing 30 - vbox: - xalign .5 - yalign .5 - spacing 30 - - label _(message): - style "confirm_prompt" - xalign 0.5 + label _(message): + style "confirm_prompt" + xalign 0.5 - hbox: - xalign 0.5 - spacing 100 + hbox: + xalign 0.5 + spacing 100 - textbutton _("OK") action ok_action + textbutton _("OK") action ok_action image confirm_glitch: "gui/overlay/confirm_glitch.png" @@ -1836,45 +1956,29 @@ image confirm_glitch: ## ## http://www.renpy.org/doc/html/screen_special.html#confirm screen confirm(message, yes_action, no_action): - ## Ensure other screens do not get input while this screen is displayed. modal True - zorder 200 - style_prefix "confirm" add "gui/overlay/confirm.png" frame: + has vbox + xalign .5 + yalign .5 + spacing 30 - vbox: - xalign .5 - yalign .5 - spacing 30 - - ## This if-else statement either shows a normal textbox or - ## glitched textbox if you are in Sayori's Death Scene and are - ## quitting the game. - # if in_sayori_kill and message == layout.QUIT: - # add "confirm_glitch" xalign 0.5 - # else: - label _(message): - style "confirm_prompt" - xalign 0.5 + label _(message): + style "confirm_prompt" + xalign 0.5 - hbox: - xalign 0.5 - spacing 100 + hbox: + xalign 0.5 + spacing 100 - ## This if-else statement disables quitting from the quit box - ## if you are in Sayori's Death Scene, else normal box. - # if in_sayori_kill and message == layout.QUIT: - # textbutton _("Yes") action NullAction() - # textbutton _("No") action Hide("confirm") - # else: - textbutton _("Yes") action yes_action - textbutton _("No") action no_action + textbutton _("Yes") action yes_action + textbutton _("No") action no_action ## Right-click and escape answer "no". #key "game_menu" action no_action @@ -1887,8 +1991,7 @@ style confirm_button is gui_medium_button style confirm_button_text is gui_medium_button_text style confirm_frame: - background Frame("gui/frame.png", gui.confirm_frame_borders, tile=gui.frame_tile) - # background Frame(recolorize("gui/frame.png"), gui.confirm_frame_borders, tile=gui.frame_tile) + background Frame([ "gui/confirm_frame.png", "gui/frame.png"], gui.confirm_frame_borders, tile=gui.frame_tile) padding gui.confirm_frame_borders.padding xalign .5 yalign .5 @@ -1901,7 +2004,7 @@ style confirm_prompt_text: style confirm_button: properties gui.button_properties("confirm_button") - hover_sound gui.hover_sound + hover_sound (gui.hover_sound if not renpy.mobile else None) activate_sound gui.activate_sound style confirm_button_text is navigation_button_text: @@ -1918,13 +2021,12 @@ screen fake_skip_indicator(): use skip_indicator screen skip_indicator(): - zorder 100 style_prefix "skip" - frame: - - hbox: + if not renpy.mobile: + frame: + has hbox spacing 6 text _("Skipping") @@ -1958,7 +2060,7 @@ style skip_frame: padding gui.skip_frame_borders.padding style skip_text: - size gui.notify_text_size + size get_variable_size(gui.notify_text_size, gui.max_notify_text_size, gui.text_scale) style skip_triangle: # We have to use a font that has the BLACK RIGHT-POINTING SMALL TRIANGLE From 62b6894119d538bace24d36aca1ada3e09f830d3 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Mon, 26 Jan 2026 13:58:30 -0600 Subject: [PATCH 10/20] feat: implement content warnings with mod template ui --- game/{wip => core}/content_warnings.rpy | 4 ++-- game/{wip => core}/py/content_warning_ren.py | 0 game/gui/cw_frame.png | Bin 0 -> 2254 bytes game/gui/cwicon.png | Bin 0 -> 7643 bytes 4 files changed, 2 insertions(+), 2 deletions(-) rename game/{wip => core}/content_warnings.rpy (93%) rename game/{wip => core}/py/content_warning_ren.py (100%) create mode 100644 game/gui/cw_frame.png create mode 100644 game/gui/cwicon.png diff --git a/game/wip/content_warnings.rpy b/game/core/content_warnings.rpy similarity index 93% rename from game/wip/content_warnings.rpy rename to game/core/content_warnings.rpy index c176b1d4..4b6876c6 100644 --- a/game/wip/content_warnings.rpy +++ b/game/core/content_warnings.rpy @@ -10,7 +10,7 @@ image cw_darken: Solid("#000") alpha 0.8 -image cw_warning_icon = "wip/gui/cwicon.png" +image cw_warning_icon = "gui/cwicon.png" screen content_warning_popup(warning_text): modal True @@ -50,7 +50,7 @@ style cw_popup_text is default: textalign 0.5 style cw_popup_frame: - background Frame(Transform("wip/gui/cw_frame.png", zoom=1.0), 30, 30) + background Frame(Transform("gui/cw_frame.png", zoom=1.0), 30, 30) style cw_popup_button is confirm_button: xalign 0.5 diff --git a/game/wip/py/content_warning_ren.py b/game/core/py/content_warning_ren.py similarity index 100% rename from game/wip/py/content_warning_ren.py rename to game/core/py/content_warning_ren.py diff --git a/game/gui/cw_frame.png b/game/gui/cw_frame.png new file mode 100644 index 0000000000000000000000000000000000000000..960747fb790d6dc0e2066ff83491511b396e6026 GIT binary patch literal 2254 zcmeHJ`#;l*8{ce)Da4uN$fYmln%kknajCf-HfM|^lFNzAVwS8CnTfBkhPJ4d>uIA_ zqug1fqQY_exEAGhjI|IZB7Aqg|Hb$9`u^~K-akCg>v=uT^TYf7WMMtsK z+51wd@Klxbp9zI}^0A+7$TK0dRy%$j4rfhX4d9c%?l4xJE$u`On>?K0F0Otg(rV~* zK=5tx6ZRW~gRamK^+p$iZgvCQQ&Ns#s}1m;KrQGv=A-e$*n(VC zqBpRgp|>Qy4zX){%q~G~Jp{u45J9?DiM3tHrSnmrj^VHRtBvc>M>x~XwYUdk3ek1> z8MV)hOe&RAR0=rXIOmdxdj;Y`;BOvJ)}Y%BvEvVH%rDrJ?=ur2g8|f;lZrd0mAaHC@%xd@y0c3wf)lcGh^XJ{PveT z5-BB?4w;azAfJo_eCAZVZy_HxvJXJ?3nsBl4(8VBz`qwSu&?e zQn5+UMtk~;LrZfknY4I}c=AyZeE(CMbv6**I%+sU%SS=<LGn@=H zQptEdv9as5@w#W=)pq^ttd!kgho}QHdd!k>d@`8YOo1l0DtjrbTBA}O$sy;<+EPab zWkkP~9@UEJiLY{CD6UK#qE)7XwvRY&hE16GR!w8lLM>C_HT2vJh3k#371{S;^u z0+EA4Rbeo5Ma9q~N7|4`YAO{30fVKbr2e1y-#v+CDPmrpnmVwc*O(ikTQVYNK18W@W;HG%!|7xk{REW5j<_i>>ppVhYv1)oU5J)gB&6~T=`}NEGjKowj zapzoY&5h^>h)WKsixk~|>A@1s3UcUX*7|bUa|DU05CV36qgdNChYC@v99<>@`=7iqD&)13cLWCf)jh6{J42Eoq(zjplpsT+1o~MabpML)dRy3wYGz zO>sIqX~+79EmNl}Za@^{BbGIm8@!=kx?cUvR5&g8-bC{8`8`dGhFWfvH^#G{pHReB wBq+?M@ICNB{r; literal 0 HcmV?d00001 diff --git a/game/gui/cwicon.png b/game/gui/cwicon.png new file mode 100644 index 0000000000000000000000000000000000000000..0e9e0bb56f7ac3e25f003f388597b9e34c56dd87 GIT binary patch literal 7643 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 literal 0 HcmV?d00001 From f996315d4ba4a71a57c7dccbcfd835fd147b6c90 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Mon, 26 Jan 2026 14:37:05 -0600 Subject: [PATCH 11/20] chore: non-ddlc plus icons for settings --- game/gui/pref_accessibility_icon.png | Bin 0 -> 1013 bytes game/gui/pref_accessibility_icon_selected.png | Bin 0 -> 1014 bytes game/gui/pref_display_icon.png | Bin 0 -> 953 bytes game/gui/pref_display_icon_selected.png | Bin 0 -> 946 bytes game/gui/pref_language_icon.png | Bin 0 -> 3987 bytes game/gui/pref_language_icon_selected.png | Bin 0 -> 4002 bytes game/gui/slider_autopace_icon_max.png | Bin 0 -> 1640 bytes game/screens.rpy | 2 +- 8 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 game/gui/pref_accessibility_icon.png create mode 100644 game/gui/pref_accessibility_icon_selected.png create mode 100644 game/gui/pref_display_icon.png create mode 100644 game/gui/pref_display_icon_selected.png create mode 100644 game/gui/pref_language_icon.png create mode 100644 game/gui/pref_language_icon_selected.png create mode 100644 game/gui/slider_autopace_icon_max.png diff --git a/game/gui/pref_accessibility_icon.png b/game/gui/pref_accessibility_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..796464f04cf0cd2d439b94437993ee3406f8a19e GIT binary patch literal 1013 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|Fz@knaSW-5dpp;#JJ?a+c)8F) z8GZGRL#meCjz`Yj^74MASycf0q=$ek2i@T9DT*V4oDgD->Tgh>jGEZbX@S%ZXB zCOnu{u*9Luj`9BgvLm8vv(NoBK6laDe5T#f%g6b?sIS#Gysdn+UM{wfx9XpK$n}-i z>o(aG?6#vUPHu*?QC2 zz2{O}K65S!sSUq&m0h!RqUaN+E{3?+wRHwR>GkGxJzEIqzr=68p_o zkDK%76>W|$*UB^8_BJoa`N*%k9b2zXH{-Wmvi4g0jD{Dh*Uu<;8Fljhlbts;?-#LX z&arK_S|Z`_+|7y0{lo%3O|}a=Cr&sdXtct)i?Jk6Wl2E`&#MVZ40EM9HDwfOuXNr@ zkzKBPllmWv?(2G$_Cu`8{q(hmaY=pmx_-Tq-lMowDX3C<$qC6->JD92L6r&v%Vg0! z{Xa3Sxol+#% n=+QWZg;QmRsthzIePN%`E80?XBj++OJ2QB?`njxgN@xNA$x+6Z literal 0 HcmV?d00001 diff --git a/game/gui/pref_accessibility_icon_selected.png b/game/gui/pref_accessibility_icon_selected.png new file mode 100644 index 0000000000000000000000000000000000000000..d0ee74d6487815521ba3fc4da2f04993c40cd8b1 GIT binary patch literal 1014 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|Fz@wraSW-5dpmbyc5tA`vG=t~ zE4vjeM2@IwJ$m+LiSI4Xa>t92j_mC2f90(#ZiEJul)SvOZ0q91$-1{(90ko;4V{Z@ zGi8O(?bg44dZ+k4ou#(lYo0&*e)@H_ulx~fyGhCqCf^n`f1;s!P@HjTfL9ZX&>f+E z5iidP4o%UICOTUntkCe6W{q)NdXHKbG z(RFgY$>z#+H*-pKoX@FG3Hllu87{x{ifdV0jMq%YxY)HyPy18mcbwx-RH*mRbNMc5 z`lQtFrcFed>qg~o%%odZ~4z%5+A=jE!r{j?9&fFDpS>;2Am12 z*Ra<2>flsba%PuM;OFQ`OQ$SWUiRHFE_nL##a!}F--=c~x7hE#Er{=E&KvWX$3KK8 zes*zWbM$bahV&-(qG zrtEd`jpP;0qYS&uCIy)|v6XrmHmvJiBGNm-ac&ULf^20?SLKv|vZQ@s^Xz= cQ1>r$sf|R7U*PTc!2HbM>FVdQ&MBb@0K*=>sQ>@~ literal 0 HcmV?d00001 diff --git a/game/gui/pref_display_icon.png b/game/gui/pref_display_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..7a2a1533862a28f4e5bc110f3586e18297914691 GIT binary patch literal 953 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|FgJL*IEGZjy`8f^E5uQxJ>5az zMJy@z0oPgC@3nuaZ^Bm`~mR`$9Okxym2-! zxopl1mXJ-~&3Au~J74%YccMu8vpL51x2u;=KXBy0Y1zgX>y)LqJPLoPIdBEZ2o>BA zn%pGP&LXqz$P$I4ij3{LhMFFQ9tRS=eNO3kdd62BKm4z@U3T6{cW?W)`;RX+&tI0A zw#d`-?!BV|kGeCt-oCWWEV0$owbMxr&`~Y@y}tNT@zT!7@8*p^6w99ZO)JoxG^zE@ zxs&gvsHFI^Hj2DEw)Cg(w5jWZG(A<7;@lL8$)lJ2(sN_$`0CH4TWveN^IlqB z`h=te8BMkep`J@LoY)GNNH~P6PF%zxd1PV|L+n(SE~OL!_b$egP$A8(364Wn;q9rH z-rAn{?sm_>;(E_CpYzG-552BF{8AgA{aXBxTb1SFmVbXY2JM=upSU~T`_!{%HeE5{ zHzw?xWPRz$l0TC+-KrM~ipX2Be(#)TzSD}r7&Rtsvemu+>Aka-;>V3FY>_8oIOiv6 zMkigH|8)LzZ=uc4%$YRzoC?1`Pe0XY;*_~dR$A{6IrJjr-{fr(Q7bldh#pNu4IZ$%MA-lSuZf#-MKzP}-SasmCZX2qxw4MQK-1@x{Ck0Unvdscu0DL(w|3Sn z6Mvhc2X~iL-->$wYUZVDivPFo@hHsTfhB4DDc+uOzo>1?E~ApGz%0q&>FVdQ&MBb@ E05+|lNB{r; literal 0 HcmV?d00001 diff --git a/game/gui/pref_display_icon_selected.png b/game/gui/pref_display_icon_selected.png new file mode 100644 index 0000000000000000000000000000000000000000..02abbd9e10d6af305180880f60d4b6edc8ccd86a GIT binary patch literal 946 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|FjsoIIEGZjy`8&1E5uRcSh|nq zjZF338$V0(blu##LEwn}1UHX~#}1uS(^qI(d!ti~QBYKR!_glWyKux1Zlv|E6|wT9&VuNZ~=*5B{@6Ze6c-y7A%fySpK5 zCxZ?pe7du)t1|q$z5t27DS5 zA7!#U+T!r6z)_;k=Ha35+cQfZFObeEblC027W`$y%RwM+MX%a?i| z_v`98NfrgqQz2)TYdkaXTJeL2>0s^0zvm8$*qsboCZF8@=)bpS=hkQDOb2bdoz5*a zTB-Up{F1?)oiA3sO8GN$tMkg%sF>~d6t4eet2Wx+vR>~;dEl|IyDq&;uIOHR_DhXl zR@3~tS@oH-s+v1lxZg~l!W2*(?B%6*km*`E?49OPzMuP_P8DfBrs5jJBV=%6k{W*c68}p6SuGRq St-1!xiwvHwelF{r5}E+N7L1Po literal 0 HcmV?d00001 diff --git a/game/gui/pref_language_icon.png b/game/gui/pref_language_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..21907306511d39df669ff9fdbd90d5f343a1efa4 GIT binary patch literal 3987 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 dur%D7#tZX9g^Hu9$R7`){g40v literal 0 HcmV?d00001 diff --git a/game/screens.rpy b/game/screens.rpy index ad2ec500..aeed6a52 100644 --- a/game/screens.rpy +++ b/game/screens.rpy @@ -1478,7 +1478,7 @@ screen preferences(): has side 'l c' add ("gui/pref_accessibility_icon_selected.png" if current_tab == "accessibility" else "gui/pref_accessibility_icon.png"): yalign 0.75 - zoom 0.25 # For some reason this icon is larger than the others :BronyaUhhhhh: + zoom 0.5 label _("Accessibility") yalign 0.0 text_size (24 if renpy.mobile else 18) at loc_text_fit style "pref_tab_label" button: style ("pref_active_tab_button" if current_tab == "bronya" else "pref_tab_button") From dc92392f2620fbe0d5b746c057b89a8177bd958e Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Mon, 26 Jan 2026 14:54:52 -0600 Subject: [PATCH 12/20] chore: google icons --- game/gui/pref_accessibility_icon.png | Bin 1013 -> 1014 bytes game/gui/pref_accessibility_icon_selected.png | Bin 1014 -> 1048 bytes game/gui/pref_display_icon.png | Bin 953 -> 946 bytes game/gui/pref_display_icon_mobile.png | Bin 0 -> 2398 bytes .../gui/pref_display_icon_mobile_selected.png | Bin 0 -> 2461 bytes game/gui/pref_display_icon_selected.png | Bin 946 -> 973 bytes game/gui/pref_language_icon.png | Bin 3987 -> 4002 bytes game/gui/pref_language_icon_selected.png | Bin 4002 -> 4206 bytes game/gui/slider_autopace_icon_hc_max.png | Bin 0 -> 509 bytes game/gui/slider_autopace_icon_hc_min.png | Bin 0 -> 663 bytes game/gui/slider_autopace_icon_max.png | Bin 1640 -> 595 bytes game/gui/slider_autopace_icon_min.png | Bin 0 -> 601 bytes game/gui/slider_textsize_icon_hc_max.png | Bin 0 -> 967 bytes game/gui/slider_textsize_icon_hc_min.png | Bin 0 -> 829 bytes game/gui/slider_textsize_icon_max.png | Bin 0 -> 968 bytes game/gui/slider_textsize_icon_min.png | Bin 0 -> 832 bytes game/gui/slider_volume_icon_hc_max.png | Bin 0 -> 2398 bytes game/gui/slider_volume_icon_hc_min.png | Bin 0 -> 1384 bytes game/gui/slider_volume_icon_hc_mute.png | Bin 0 -> 1022 bytes game/gui/slider_volume_icon_max.png | Bin 0 -> 2461 bytes game/gui/slider_volume_icon_min.png | Bin 0 -> 1336 bytes game/gui/slider_volume_icon_mute.png | Bin 0 -> 924 bytes 22 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 game/gui/pref_display_icon_mobile.png create mode 100644 game/gui/pref_display_icon_mobile_selected.png create mode 100644 game/gui/slider_autopace_icon_hc_max.png create mode 100644 game/gui/slider_autopace_icon_hc_min.png create mode 100644 game/gui/slider_autopace_icon_min.png create mode 100644 game/gui/slider_textsize_icon_hc_max.png create mode 100644 game/gui/slider_textsize_icon_hc_min.png create mode 100644 game/gui/slider_textsize_icon_max.png create mode 100644 game/gui/slider_textsize_icon_min.png create mode 100644 game/gui/slider_volume_icon_hc_max.png create mode 100644 game/gui/slider_volume_icon_hc_min.png create mode 100644 game/gui/slider_volume_icon_hc_mute.png create mode 100644 game/gui/slider_volume_icon_max.png create mode 100644 game/gui/slider_volume_icon_min.png create mode 100644 game/gui/slider_volume_icon_mute.png diff --git a/game/gui/pref_accessibility_icon.png b/game/gui/pref_accessibility_icon.png index 796464f04cf0cd2d439b94437993ee3406f8a19e..d0ee74d6487815521ba3fc4da2f04993c40cd8b1 100644 GIT binary patch literal 1014 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|Fz@wraSW-5dpmbyc5tA`vG=t~ zE4vjeM2@IwJ$m+LiSI4Xa>t92j_mC2f90(#ZiEJul)SvOZ0q91$-1{(90ko;4V{Z@ zGi8O(?bg44dZ+k4ou#(lYo0&*e)@H_ulx~fyGhCqCf^n`f1;s!P@HjTfL9ZX&>f+E z5iidP4o%UICOTUntkCe6W{q)NdXHKbG z(RFgY$>z#+H*-pKoX@FG3Hllu87{x{ifdV0jMq%YxY)HyPy18mcbwx-RH*mRbNMc5 z`lQtFrcFed>qg~o%%odZ~4z%5+A=jE!r{j?9&fFDpS>;2Am12 z*Ra<2>flsba%PuM;OFQ`OQ$SWUiRHFE_nL##a!}F--=c~x7hE#Er{=E&KvWX$3KK8 zes*zWbM$bahV&-(qG zrtEd`jpP;0qYS&uCIy)|v6XrmHmvJiBGNm-ac&ULf^20?SLKv|vZQ@s^Xz= cQ1>r$sf|R7U*PTc!2HbM>FVdQ&MBb@0K*=>sQ>@~ literal 1013 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|Fz@knaSW-5dpp;#JJ?a+c)8F) z8GZGRL#meCjz`Yj^74MASycf0q=$ek2i@T9DT*V4oDgD->Tgh>jGEZbX@S%ZXB zCOnu{u*9Luj`9BgvLm8vv(NoBK6laDe5T#f%g6b?sIS#Gysdn+UM{wfx9XpK$n}-i z>o(aG?6#vUPHu*?QC2 zz2{O}K65S!sSUq&m0h!RqUaN+E{3?+wRHwR>GkGxJzEIqzr=68p_o zkDK%76>W|$*UB^8_BJoa`N*%k9b2zXH{-Wmvi4g0jD{Dh*Uu<;8Fljhlbts;?-#LX z&arK_S|Z`_+|7y0{lo%3O|}a=Cr&sdXtct)i?Jk6Wl2E`&#MVZ40EM9HDwfOuXNr@ zkzKBPllmWv?(2G$_Cu`8{q(hmaY=pmx_-Tq-lMowDX3C<$qC6->JD92L6r&v%Vg0! z{Xa3Sxol+#% n=+QWZg;QmRsthzIePN%`E80?XBj++OJ2QB?`njxgN@xNA$x+6Z diff --git a/game/gui/pref_accessibility_icon_selected.png b/game/gui/pref_accessibility_icon_selected.png index d0ee74d6487815521ba3fc4da2f04993c40cd8b1..292a487fff1b6bf7edd42dd75aa37b189f538c1b 100644 GIT binary patch literal 1048 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|FyHrdaSW-5dpp-QJH%0>E&ZBl zr#wfK>jAe79_hJDJJXc4njWlMkdc^}=OW1M{g>ad<;_;1gZi5~lr&P5XI;7!(FuQ#4c$i8C$@@M>XE zvJrYO;?+69p~d~tTqn&6CjGv9w*v25m0Zi)l$>{U@Bh7fK0UZ`diDK}vsZcheDixb zZH1J>@`TI_B${atvw&~{Bv&F-}|Cnbv$7k?Kk>bkq~U$1gEy;kOFlh3x_)7C)L&1}$c(M_k;&g% z4sV(-{rU3l!_Q09CQW)&U;1D>^0U4Qu2pk)>0*wntbj6?q)? zYRdFYZ^UyrV;{}=ZF+U4Bp|d-S&)4o`({rcq3w}+WbZK|S z|IB~g^(@l73=ibnH>b$8S6`nxXUe^Wf1ghc{a?9Mt*h{usnyIo>TIF6CoGw=zyJ8z zKXdCn-~MJ_$N!H{aj?nyltWMxm&0IIh9GJ*GWA7^y}Nh*}~=e ze~u`uvQy2}y!v=mn)1?+!=d&zdC+3InYk=)#oBF2dGd9$YI!(0>wa-@-p_dN_Rl}=mh9*7J`LAR%LA5+ zu)etDfNiO1%Ob^wusB>73v+H%MfGx3;FM(h}M$ojfIJ?#!8Q zQg$B6-Z(S;+^la^wSV+Bx~%u#dtZEy=2C@#BN9s$G@6VxSb0PQ-8DJ79`JZEGP@oL z(^g@{w#cH zPnhki_d?l@7w>s%-eS9U(_eFnkYXc8{}JofASD%nhZ8H7L$cW=`AP4sTS7AzT>$2I N22WQ%mvv4FO#r8!)}sIb literal 1014 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|Fz@wraSW-5dpmbyc5tA`vG=t~ zE4vjeM2@IwJ$m+LiSI4Xa>t92j_mC2f90(#ZiEJul)SvOZ0q91$-1{(90ko;4V{Z@ zGi8O(?bg44dZ+k4ou#(lYo0&*e)@H_ulx~fyGhCqCf^n`f1;s!P@HjTfL9ZX&>f+E z5iidP4o%UICOTUntkCe6W{q)NdXHKbG z(RFgY$>z#+H*-pKoX@FG3Hllu87{x{ifdV0jMq%YxY)HyPy18mcbwx-RH*mRbNMc5 z`lQtFrcFed>qg~o%%odZ~4z%5+A=jE!r{j?9&fFDpS>;2Am12 z*Ra<2>flsba%PuM;OFQ`OQ$SWUiRHFE_nL##a!}F--=c~x7hE#Er{=E&KvWX$3KK8 zes*zWbM$bahV&-(qG zrtEd`jpP;0qYS&uCIy)|v6XrmHmvJiBGNm-ac&ULf^20?SLKv|vZQ@s^Xz= cQ1>r$sf|R7U*PTc!2HbM>FVdQ&MBb@0K*=>sQ>@~ diff --git a/game/gui/pref_display_icon.png b/game/gui/pref_display_icon.png index 7a2a1533862a28f4e5bc110f3586e18297914691..02abbd9e10d6af305180880f60d4b6edc8ccd86a 100644 GIT binary patch literal 946 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|FjsoIIEGZjy`8&1E5uRcSh|nq zjZF338$V0(blu##LEwn}1UHX~#}1uS(^qI(d!ti~QBYKR!_glWyKux1Zlv|E6|wT9&VuNZ~=*5B{@6Ze6c-y7A%fySpK5 zCxZ?pe7du)t1|q$z5t27DS5 zA7!#U+T!r6z)_;k=Ha35+cQfZFObeEblC027W`$y%RwM+MX%a?i| z_v`98NfrgqQz2)TYdkaXTJeL2>0s^0zvm8$*qsboCZF8@=)bpS=hkQDOb2bdoz5*a zTB-Up{F1?)oiA3sO8GN$tMkg%sF>~d6t4eet2Wx+vR>~;dEl|IyDq&;uIOHR_DhXl zR@3~tS@oH-s+v1lxZg~l!W2*(?B%6*km*`E?49OPzMuP_P8DfBrs5jJBV=%6k{W*c68}p6SuGRq St-1!xiwvHwelF{r5}E+N7L1Po literal 953 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|FgJL*IEGZjy`8f^E5uQxJ>5az zMJy@z0oPgC@3nuaZ^Bm`~mR`$9Okxym2-! zxopl1mXJ-~&3Au~J74%YccMu8vpL51x2u;=KXBy0Y1zgX>y)LqJPLoPIdBEZ2o>BA zn%pGP&LXqz$P$I4ij3{LhMFFQ9tRS=eNO3kdd62BKm4z@U3T6{cW?W)`;RX+&tI0A zw#d`-?!BV|kGeCt-oCWWEV0$owbMxr&`~Y@y}tNT@zT!7@8*p^6w99ZO)JoxG^zE@ zxs&gvsHFI^Hj2DEw)Cg(w5jWZG(A<7;@lL8$)lJ2(sN_$`0CH4TWveN^IlqB z`h=te8BMkep`J@LoY)GNNH~P6PF%zxd1PV|L+n(SE~OL!_b$egP$A8(364Wn;q9rH z-rAn{?sm_>;(E_CpYzG-552BF{8AgA{aXBxTb1SFmVbXY2JM=upSU~T`_!{%HeE5{ zHzw?xWPRz$l0TC+-KrM~ipX2Be(#)TzSD}r7&Rtsvemu+>Aka-;>V3FY>_8oIOiv6 zMkigH|8)LzZ=uc4%$YRzoC?1`Pe0XY;*_~dR$A{6IrJjr-{fr(Q7bldh#pNu4IZ$%MA-lSuZf#-MKzP}-SasmCZX2qxw4MQK-1@x{Ck0Unvdscu0DL(w|3Sn z6Mvhc2X~iL-->$wYUZVDivPFo@hHsTfhB4DDc+uOzo>1?E~ApGz%0q&>FVdQ&MBb@ E05+|lNB{r; diff --git a/game/gui/pref_display_icon_mobile.png b/game/gui/pref_display_icon_mobile.png new file mode 100644 index 0000000000000000000000000000000000000000..868a1998a2d8dc954f77c8020eca337d4e42df38 GIT binary patch literal 2398 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 literal 0 HcmV?d00001 diff --git a/game/gui/pref_display_icon_mobile_selected.png b/game/gui/pref_display_icon_mobile_selected.png new file mode 100644 index 0000000000000000000000000000000000000000..e33b897b813676106185947c57f3ff9a44237c62 GIT binary patch literal 2461 zcmV;O31aq%P)3^5X;q1P5rFfqm$Ni~LGVifVw z9+4P>8pGXzfP%JXN<>j(NPI*SAD{@aDiRR2Lho+I-?kha$IRZ$?9O$TPX8gHGqb<> ze&#oi-~4uKA@if10+x0b8H134qTwJgPz)3e70}Qm<0%G;h6-qClJOJ+MMDKNG|701 zfuf-T8k%H0#X!+e0S!&+SDw-~^Mx_d%}ajOki#h^^(!dtu>|SqJwaWBka#rR@VbtG z`X`iP5(FKFu(`Y|2eU)nF#_i>bsrtR|p>)i8Zg{S0@F7?ynmvQkt9Ew89yDa)u6S0J_^ft)4dn!o-o@K% zC_S2Cj325^H$GQMFusLy3J^{x9kW`-XG4KEEDKE%5t$&eFPdx^CsM~vSzkgq4G1Tc zVxcl~)?7z|Bm@69j90+WfzGO$?aevf^0MW82Zahm0!l%!Ei)2>2M$E`f%0q~5s!7{ zN8a&n(;=R+vSoY)g$cw3l!9;_u~#n6q5Ka#LRz`(sPM+c2YJfMl<^G|M<5^c@2cIW2%|1MWf=J&pUvi0`W!>Z1z{>!n09J?=Gfikn#TuMUZyK?2j z$@+kWtlrR#hdzvi+RRyc}v4qD2 z&#z52zU3B-Hc(svslfDA5E`bjwXh$%k0rbpyD=@Gd^B_I(EqA)N6L*b2n;TT9qKA- zIR{U%?@^$m9|jL}PVpjk1?}a*h5*eD*p01#-PmL0`r`EaK8GUUA$P+le3N-mRR+pQ z5lBZQ*)Z9SXdSVaM(0qdQt);SGbp@3tQ?sX-q`TTi8;NHky6@YK`3^0jPv)_rkh@q5pR7g z794@X%rL&2wWUv>@B+zW>&mI=`frLwb3c8Zioil77EU&#WWYFi3qY~g9I3dNFqHPX zmfMgO=#c4zNS*F{cKq}Wi}#k+@fu2x$8_h$)oxnE-0HII-Zb;+p@XZ3(>Evtt%96^ zWg>kpl+_YS=qNg;W=s4}T8C6Xv7aM5-8f~)$hN5+ln}}dtw}EWhc&`fK|zGq;`SPN`_15eTFoe@wDq0Z`g$>we+VU$7Xedury()r$oVjR<^eBj2&hJ~Msg4V`U z!pY8{g_@bMB^A4`)5Id=Ab86tQ4v{C;INy5ESQ*Rds;vdadX9M8p*}v?87Y4}r_w6=A_JN!#4kYV zzK8^ZyS-ZM4HSx!GJ}gXSY+BVPz)5&$?Ej-m6*N)S#fmYLPr%5Z%zYPDDs16q3IsoNC%3(w2cj zQ43=-vo_tZMMOvzlpxAaoSbahCDN9GLQ%`gS(k-3)_*S|BnwI|i!Z$W?Z%%)+A>fS z@4k4$N5y6sD2kz&a|+|_VD7hqZ9s(NAShWSGTlJ?S3!B|4$DCC1PWRPH-_{yCI%@8 zNUnx}dB zfO5TPKbSUQ)DlU@n?&2w28wMsPv*KxC^BBsF(WZ5HxM0Q2!8>z`HQci*v211{|=s) ze8`>-s6Wb}V6+ZKb=h|vOO1lu;xyzI&+%$KvD?wgQ;Isqyen4)MaD~PdmVOmd1x~v z>LofuLDsRr=-tLn1JSk7%F_xzcZ?=6Fkt?Pp8@?^H=`j?k zh1j;`gIS3QxC+q|#3i$03Vjq_Q+NdDEyL?E7-w&&O)vh;aSj(t@Xmjn>>SX{k~ko#p}ZagajCfw&PY=`SH@EaCeOn=E=zfZaVqB&OC!j-CYr4O!p(EE zfFj~C%+6NeMO6FQnYzRgcvo*I%?{b*yVAC_fpUDkkb7O*u3P~qnYz}M#Ihb?4GgEZ z1w=eYD=4l!MlqE3*@>G`2r=*4A+vHPWLDlJB0j6Ec2J}}Mj@0k@vRTPW-oVIwCDN8Q%-u!@o(Fg_C^v4tQ}9n+VMCK46nDozFt$fJVp>oTU~3~ zvMlN~E>$do_QD!6o)?~*a=!BvrpItV$;4WpfPmq0QNiG}{t}$l7mL=DE$>?>c84qS zS0Qrv+}e$ef5-|fQ_t5>><+&ddv;_H4LQgYkQ7N@g+#iyAdzmqjHqtw_#TQazz+CJ zLr1;)OGCRM|Lk%vzMv-y=Zt{D+j-~9De~pcKZ7Dgmu%bf#OCzMRg4nMZ&si)MuSDcjpP00000NkvXXu0mjfp{|TG literal 0 HcmV?d00001 diff --git a/game/gui/pref_display_icon_selected.png b/game/gui/pref_display_icon_selected.png index 02abbd9e10d6af305180880f60d4b6edc8ccd86a..82d25f56edf045ed5f17310f32d03bcb80d61c47 100644 GIT binary patch delta 744 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 Ef|M@+)Bpeg literal 4002 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 F0sy>!wpaiF literal 0 HcmV?d00001 diff --git a/game/gui/slider_autopace_icon_hc_min.png b/game/gui/slider_autopace_icon_hc_min.png new file mode 100644 index 0000000000000000000000000000000000000000..b7039f7792cdcd325b8d7313bb0862c28797a22a GIT binary patch literal 663 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|FvWSgIEGZjy}e`T<(w$M^59Qv zlt#zg8y#C)ee)6$QxhL6?rlE)f#I5&qd_anWA8+DwrS=T#@3ms(@X8x<5eugDle)U zywE%4*u6mDp8$)hMhmCFyeZ3AS`8QvO};c`fq$;B{H?BFV%EZ^lA98#Dpl#M!q-g_R91ff9-#WC*9tY{prur-4*|>r1`^F z-walWUeUUVdp%>1oENi%uSl^(tVps%u1K&%t%$P(zlgDfyoj=dzKF1dy$G{}zeu4( zyhx%%zDS@%y@=xsIgKQP+JKgXs)Zc~zBmguyzF%1yDXmCB)NV1l>7Ei1NYbVCGP(H z;K-cyXD^=IVf}wb@za>yRf`0g-z5BAIH4J+h2dqZ64NDiSB@p@T@oGkr_xMqzugP4 z`}Xhak2k-+sB%5JEs`hzv{t}=%H`(A8}~$<|N6Y||ENn6tGhU&Wm z=0Z6v(%t$`DnHwuXZ*+cbK(-No40bzjz;A6*D`%G4Q%LS@)1c`#30N%L*sx8qZ*e1 zNkaC=tUmlb`u1E-?T7tOpH*$U^|Q46a*6TPxkVv;_q{aR*P6?pt2e*v^ZiHEnP;c3 z8Fb&Qk(5pQQr>0YFvTvhL8JB%L*TC##zkLrTOKa_lG^ULD5d@2qLenr#VM@^7pJsv zHcsMI5L5;!EKzqMxir4Xau*+WI3fS@h44d%C7Ilf{Dhw zUVnE~)JNyf`?oV^*G#shemp8RUa`Cko20~5OuS^do@B;M*q~AR)r#SSHj|2qmn_c{ zDMlf_rD_bEtwEC;S{zq)Iyf!3lA^G<&g9G7zFnLC2c6n~ZMM4qbzk$#cQj+ezj-H5 zsQdinBNuOz>q|B!OKyfHmzR^89|W*8F63Zx7G!Bt;^1)=kT|u;=KVId$Z5~-zEG%* s{`Y+1^%w6&e$OH&lo8S6_3$fSuE@95>o>?82c{ARPgg&ebxsLQ02eFg-2eap literal 1640 zcmb7_>mw5i0L3wnSsuekk=*jw5@J>+BQ!F@qGXA=yE0RvE26Pl%OlakxHikliI8!^V@wZ2diuxXcuO8RwGDZ`$*r)U9XEkgNbK$2I@_EI z;6bKQdNBC22O6vg0-@8udg=P#JBe!Ot{?9jU5{8Nwcfs%$sM6-4KF>KQB33Y>x=Ih{Zt^9JiroT~S}3Jc-? zRa825o3h$9&n~3H1{mmqK8==^lq0F)LIC!^a=(?F zsoh=C{NmfjJ(4(pJ0|HleQ1r7nK-OAnJOd%wM@`wTB4R-CCs^9ex|5sezWN-Fa%S7 zU?g@^&a4dYTxvgEw??o;wgYo)bR-r!h7`*==?zN(irW+jr1VNiT<1wW0nfQ-JY)2W zbx^a_HP|d-*#vvtZu-gL_2aTn1-OYtsd3TNi6#;2WHm>uFk@GC6mcJR;i5+*e+iw> zbj$Iv{w~4aWn-FHqz!2tH-Z1^c3k)pPxd#!+^s)GJz=EFkyNB$!mfRQO<$b~#y`A$ zwu&Gy01yVeCWT}d6J-IfJ)J2D&`jJt88L68#LtZ^eycC^1 z-*^>1%p&2ZI&-s4qvY)oD?s~q}bX5*~2-43GLr(BqoZ8WhjWcMDd$M)PQ}lD27-R1DyyWbaRKA3#pEdKh7@>$D z_9pfvh1#a~G|Gq&H34?6gNdmxMf{;EFYg1T#^PMFdaRNGufcV zhZR2Gv&@CLtazE0nGBFSZlUH`DeJ=HP;e96+vcmgbq38Rdf$sXPYKwqcz$@UBYj5g zqSL`dw5) zh-?ep_h{U}=8BykNPs1`)7MtBxrWowqA3|RtRJhzT;`G6d}yKu&aUOf(7Dq0QKc4; za#0wtAIYuIEh&B`b zn5<})c}iX~0!Np>qsPl{d1|&Sq5EH-k=E!-JxN#En(XhaJs_+&RxP@i8{s`fhlwF2 zu2s;gKzZ=D&(~Y9&1r*F)cM&#@=N+?p2mZ_;QMK{+1Gs%8+<7X(JblUo*0IiofLHr zCDeBxt1Yre$qlz=j#5Aa%eF3)OQwFsG+na6yMW?2t*Sa}3vwwdpemtef-$5&^wc40 z|D6#`bpu7z^oWP!0?>gknBDoy*=EQhvD^|@0LYs#CG#!5i dur%D7#tZX9g^Hu9$R7`){g40v diff --git a/game/gui/slider_autopace_icon_min.png b/game/gui/slider_autopace_icon_min.png new file mode 100644 index 0000000000000000000000000000000000000000..74a9c150e49d0282d45173577733fb94e5d862d6 GIT binary patch literal 601 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|Fe!MtIEGZjy}e`T$HXYol9fU8IX^8pV%8c?azJ{ioFkI{WL{{SC*e+b*t)T-})|81QWV|Q;4-#w-` z4NC*c?v^%awqIggrs8Gg6FDVi#wCrF22TTp5|sijB_st*N>~&Sl<+7(C_yQ3)!`$H zLfSgrR&ojV2MI1?^)j7drZF`kYGFuYW_u9hGF2|wWxA*Mp5+)i@2g8$QTyHSP2L=d zPygD^KD>DH=ijf#Cmfe~6`>n=Lc#h*nMTQkGL6|!zfJji#wPWz?bof5UZNAsyl?8< z-^RVuwQj}x-4-43UZxX%EDd1+St-;VB&i~_)XGEVREn*YUG1#3ZNGLt-rpx&{B`TS zrWlrnBRZ;_Dom=pOKiN9JTj+*OxUDxQb9HFlH;j`B@CLakL>;aTn~?&|9yL-(ft?J km7Ppi#Ap!W&{(v8Hr=XpMu+4iV3J|*boFyt=akR{01kQMMF0Q* literal 0 HcmV?d00001 diff --git a/game/gui/slider_textsize_icon_hc_max.png b/game/gui/slider_textsize_icon_hc_max.png new file mode 100644 index 0000000000000000000000000000000000000000..15e380cf687b5c096f07824867af0c5c3f74e350 GIT binary patch literal 967 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk74R&H|6fVg?3oVGw3ym^DX&fq}Ww z)5S5QV$Rz+cXMwWh`8l<=saNk@<4P7C&&5)oLnL&s^vF1O=RRLVeJiYp6j5^v4Sn5 zLGQt#X);@S=f3co@+0<@wS$22HU7nmPkRR~dDnM*v4Bp@8>R`{1Gp5XFmWtpaMElb zj(K8l#PY1|N=3gikEHji9GJVZQ#kaur;D7ciu{JJo&lOl)gN#A8@9-5hW>VSndkmy zr}#wmk2muTo0iV`WRbXk<8QZvZBtgA{k_L5+U;SP2m+k5)K^oh1(`~*z+QGu65bv@iY#yW4 z&15gZP$NBeSFR5Xs;j0rZG5}1p6AYzOI(L12hE+lVOf>sm;GBWI%yimu4(@9=IPgB zrIYveP2sk)uHDBWW#zyrse7)*?x%R}mVi_3FWRn2f4uqM_o2!vgXu0;P2*09Z7iQZ zO{6|g>iV_CMg+aXU*yTX07+@(rbQAG>$60YQF#Fr2We>dBkcM8=rRNy@)BE_K^kA5-(Q&c%ylsvR?Ciwbt`5pQSoQa_txJmBble?w6?%`r6$7 z%GtYf+6UPmCX0+7-1OG2OnvEb@!#aq4aWVoQj!bH_ive!)TpIivPI;j*F}HjtaUyQ z=AAm|B)TnS$r~m2&M%W5PJg)8`_zuddiQoO7deow%=Tl~(n)j!?7n;}Z z_f1YEYjJ;Vtlp95<=ZlUndkkVu~TQd;abJ_+ICabQ`E%@x-Py=|6F)4G=A^oBfCY9 zcPBsJ`bt~rn}~7|s~2NS5W_+d2MtyMqL?iG_TqoeTfdi^V-C!j44$rjF6*2UngHUn Bq&5Hm literal 0 HcmV?d00001 diff --git a/game/gui/slider_textsize_icon_hc_min.png b/game/gui/slider_textsize_icon_hc_min.png new file mode 100644 index 0000000000000000000000000000000000000000..b4c3d09cc896d325ea228688ae5b5a57ec4d01e3 GIT binary patch literal 829 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk74R&H|6fVg?3oVGw3ym^DX&fr070 zr;B4q#hkZuF6Q1g5OIxf(RskLpudDAS7C>8Mw1w;kt6pP`xh*xQ6^$g zS{whK81buj>d$*~9v1rSoE`A3*-|C?q{Szpsg_5ki_E@ra=X|qO(DUG$(v$d%$UZQt@zRYDHrD5-r3sv?V8L(_pZHKJUh7(CovsqpJH%k!7--`b-s_g_%+4;F10^n zp{Cm>t{M8IYV$IIW7CD&W?rsfig?DK&6QZADfafv@e85ur*ikCe3x4y(z#Gu?daLd zlPn_|*8ICX`B7R-qW8uObu<6ps;T!>I|?V>t)3p_Znv8!u|)GKPtXU&p53xCZ8I;O zpD6T~v2(WY_rF~!|833d56Mo-arO7CD&yx*%${;d!x#VB9>%6HwwlS}_A)|d-if4AvJ zkyD=Ft-6y>lMn4^nl#DM%I%7=>CNJuQ_fGEWG1{y{c1(cDy#hC{T@L{vYYKc$GVkQ z>&#p{z44WC_Vg)|>9JpDmR|3?X`A+bp3>6UzFw9xYdmiLICNk_k&JekeoXF}H-ELa z=a(xd{i=HJnJ@U+Z08{Z(|b17PFK!alqvq_XjFG~I5hnSHyLS5qW}J)s@Wesw(hwL P%nuBnu6{1-oD!Mc? z;d9Te2rb@uIN`(ZncpWaiVfe;t4L&B5O=sKd*GqCB`dnb7OyzH zTSVKdVY<@Cbp>9X9lcxTH?Niw^_AEnQto@saD9R3MJ8R>N9yTboeqMP_3rl18rfpK zb{?{OxR^DpYq#1{Q?{B9C-1#k@$y%BiG1>%&EA@+4mb0T*5>z}OknyH>+vx9oI zho;c9p52xcn`|6AwU+W|y#AB>KyiAU#2lb4hZN6tf4=X$xHTxuD)QX6ufKm-PET1M z*VQAv_3P8m8X2!xR8zJ{y#49&?*AVSuS%B(SAHej{`G%dftc@%lM7!)DLn14*md5k zYj0U^_1lX{BKpcjjr;%ecy*dyPyJukYX8Ug_b27WTVB4hzkAa3XM0KS!$n6mWRI3} z|L41F+BQL`Vkw`nTqTF^w<$%K#mNo1 zwx(QHo{8oL?P}Om?Dk!tTt#qRr4IA$fA1NewjW?zIrrk5r>aN&=gK$Cni1r3FXj1J zaUbixEq^q&ipSZrG$pr@5xMeN*u4~ zPZfEh;koZmM-ap7A8Q^YE-=4+ZM|UMZ|x5|rdR3Nt()e-Da-z4V&CetpA#MZ7nS`A zsm;+mDYTC<-tCI3P0e!E^*OSd3;(Cczdd05-ffx0-F)4pcNU!Nl+{h$7L=x=ES0D8 zATEZN*Z0P>iAlolofRiP^gn#-b?VIDJiA@XMGjQ!M0;7fL>-vxbjmPX)Azydmhgk8 z?HXNjKkZ!q(dA0{DV~45x9!8$owitR`n2}w^j}A0jy&3X@b|gBKULnZDleb3qyAAv u@s&Mcwf;-ul3el}h)w9wOwsk=Bm0H;Cp;H5?|cVlO$JX_KbLh*2~7Z%v9Epr literal 0 HcmV?d00001 diff --git a/game/gui/slider_textsize_icon_min.png b/game/gui/slider_textsize_icon_min.png new file mode 100644 index 0000000000000000000000000000000000000000..c8395bdda1334088e84c2ddf9c783d2989f2628a GIT binary patch literal 832 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk74R&H|6fVg?3oVGw3ym^DX&fr06h zr;B4q#hkZu9_HRQ5OC9X5-V`?aR0#dhT{^GE=x)i%ZvYugs-f)z&SYx?g2W>3qdwu4V6Iy?koQBoDm^I>qgAu-)KIS%FNt*M7Aw z9(I*?es{i4I`NPFUEf1K&y9!r~vx98d?K8PNdyd==JtYX%VZ@Pu= zPhN0utddxNMq~1;A0cJ(PSMYOc*NSJ_8s!N712J$BJHDhiA33kCi~s zoe+IOz->yXpezT#r9WOR2AqRdPR^ Q3Ct1zopr0C#j)_y7O^ literal 0 HcmV?d00001 diff --git a/game/gui/slider_volume_icon_hc_max.png b/game/gui/slider_volume_icon_hc_max.png new file mode 100644 index 0000000000000000000000000000000000000000..868a1998a2d8dc954f77c8020eca337d4e42df38 GIT binary patch literal 2398 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 literal 0 HcmV?d00001 diff --git a/game/gui/slider_volume_icon_hc_min.png b/game/gui/slider_volume_icon_hc_min.png new file mode 100644 index 0000000000000000000000000000000000000000..7ae1c03793e1b9c46d33e8bace8a0a8da5ef7ceb GIT binary patch literal 1384 zcmV-u1(*7XP)XObL|&C<+x&m=Y=lP!uYlFeOw9peR&8VM?eJ zKvAfG!jw=cfTB_<$I$m zE(oX^il{=Yc}gR-6*GN}2c?Yol3_0s=or;REff(DWA3wP8)qvL8A=g)irZKcRrQKs zNuYdQI8*nd$zqMnZ6pDdqKQY`*4oq^nu(t&6nm8y_1&FBN(7}?tqyXVXZryrLn!tF zi}PzYaneEQ--8!OT)C)*hje!4p+Litm#{vF0Lg!GD(I;%n1iC^WExhQ7Puo2`VTc{$>&FTJ}!v;AROZK2TcbHyW*-ag$nZ4JbZP$lT>!;3m1uZkB-J1I3sYuPY1O zq?TI)iXW7ui#?zK%Ku|aTuekMx5cOwpGx5y$9w^aHAT8i_T%D_@8;iSDA;`|gYr8= zIW5h})eh5_&-69$b}{W-^VU^tsXd^0KuNjCmzxMFJr_IYv!trv)H*~%^;1=5#rJ(! zQ?4+SpCq~X+T;PH-Ma>hajdGN$)QZ$T1fl$eXPnOd|%~ouMQ`Ma+?Rn zmJq=uzIj0@=O=rP!5rw;xs*^+uO%~m$`48j#$4tt>7Gttl0hM}pHGI*OGbLAO`cHN zy&mV0J3Lo_Bv7pRiwD8BP_d={NuWp@@3}TKCyNKHf2fFclfi7AZ4(~~J>zGJYccvH zjiDAwIZHJs7z|Z``ReJ#s8FnV!WHtpRLod*s-cu%u1!2JL_bz^c!DdYUfRca6{6kP z7{@#sOK6uk>Y=nNX7Vxrs~EA7-cPaSwR!)(PPmp=K+bp0sRLo0$lj|4HmxiXy z^oRAdYt{3Z0{g_u28z65y35e7>kJ7(ht~ zrCl-49`fIHF3kXni&~zxu3!MgQ)pK=p31mlNK`R^;;L?dy%Y?f1c>b8YR4xZ@ab{S zD}O-oQ8v)0>PQAq0tNPU?*#@>d{vF$$7f~tIn4UGp#UXeC`p$aez<*Q#jiV-(OjO>o?Q;47~ zCZK2|QmlOnbDH-l0gA#Q04RW>PyvN0p;7=vp#ln1LZtwTLIo72gh~Mvg$gK436%mU q3KdY85-J5y6e^%FB~*$+D4zhv;n0MAcU3e10000S%QU literal 0 HcmV?d00001 diff --git a/game/gui/slider_volume_icon_hc_mute.png b/game/gui/slider_volume_icon_hc_mute.png new file mode 100644 index 0000000000000000000000000000000000000000..9c1f388c9af7886dd0185b604c958aab078a35cc GIT binary patch literal 1022 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|Fdy}FaSW-5dpp%k7H1_1!P|Y!T+_a7D?j(; z+#N-m*h|IF=Il9N`~2Iy>gX+xrp{rq+S!-k!Kiw$nL)$BGoX*lW&@#pfUo#oV+c0gX?*q+ekZzC5>sr4vhvV6^|@l<$c!HG(32TgG=et|iY6a*Gb zVOPDZm=oX0bWro-L7oy0KTi=3zfSgJClxJJ0~IV(Z6qc-7kDjlDDbi{h~qn`2~v2p zxv;E5Zf@|hpPHMQ*(M!rEMyCk+_^s6c=xh>sSQDM{@H38eGcP-B@9oN z&AQ^hy8ZcD22}x(^mdcud9Rngd_OmrL6x~n^l9(k&#xW!{L}yawZdnARn4tfc8#SD z7j^f3NZ2A@vfxO2(IW9xkDFsSrtApV7pYMGX`AZ;m*z$MZ>E)+^K-~|{?-Wj(Rpu$ ze$~dR^Q;^JHVbaNRsRt@J173oTW*b2bMB`}ZmDHt)tFveGk5tBi_{P9lOCvFUGvF- z(d+$=`M)*yy0iKn)U-JIbd}Wd2O@Ktf@4GufVdW#HC}73?2|q3v-3)t*Be9CGEp<- zcNdywmYhuY(wQT)yW^I*+iGRo__-&dnKcX-{#kp}_Sc@pK~}#%MXvwuvo7kJpNjux zk0U$Pt^tJD4e5CTW!0}wdto_TrTv}YafM@yk;%zJQ&)s(C zd-ao3-Pr5yt+PG5&wYRKx%G3mL2vK#Qz6&>Zpsx4*t1l6M#i=B>{VB@D%SFe=--?( z>C7zF#kL0+j(WzwSJ=EQ^I*oz-EB>AcM> zvqY^YNxqai$)MVCZIP>Q?eCd?f6n0-_jC|^DX#NFNMZrY<;XoBSS1#8Y~`Mna4**; zFn8;5`>mW>pRdO5neyHyE_Uam622)GR^6)@Tvfv7BrG^`F*1ZzLuuzD7G~AHbBnYb z1W$^pOK239h=nqCd91TI=+L=%^9rs2m!hMbY+f>RT|*m`CTaT_1U!17vx-S%VoYIE gqmX-g;MDs&CAPHOIK0CMn6DW;UHx3vIVCg!0PzyZx&QzG literal 0 HcmV?d00001 diff --git a/game/gui/slider_volume_icon_max.png b/game/gui/slider_volume_icon_max.png new file mode 100644 index 0000000000000000000000000000000000000000..e33b897b813676106185947c57f3ff9a44237c62 GIT binary patch literal 2461 zcmV;O31aq%P)3^5X;q1P5rFfqm$Ni~LGVifVw z9+4P>8pGXzfP%JXN<>j(NPI*SAD{@aDiRR2Lho+I-?kha$IRZ$?9O$TPX8gHGqb<> ze&#oi-~4uKA@if10+x0b8H134qTwJgPz)3e70}Qm<0%G;h6-qClJOJ+MMDKNG|701 zfuf-T8k%H0#X!+e0S!&+SDw-~^Mx_d%}ajOki#h^^(!dtu>|SqJwaWBka#rR@VbtG z`X`iP5(FKFu(`Y|2eU)nF#_i>bsrtR|p>)i8Zg{S0@F7?ynmvQkt9Ew89yDa)u6S0J_^ft)4dn!o-o@K% zC_S2Cj325^H$GQMFusLy3J^{x9kW`-XG4KEEDKE%5t$&eFPdx^CsM~vSzkgq4G1Tc zVxcl~)?7z|Bm@69j90+WfzGO$?aevf^0MW82Zahm0!l%!Ei)2>2M$E`f%0q~5s!7{ zN8a&n(;=R+vSoY)g$cw3l!9;_u~#n6q5Ka#LRz`(sPM+c2YJfMl<^G|M<5^c@2cIW2%|1MWf=J&pUvi0`W!>Z1z{>!n09J?=Gfikn#TuMUZyK?2j z$@+kWtlrR#hdzvi+RRyc}v4qD2 z&#z52zU3B-Hc(svslfDA5E`bjwXh$%k0rbpyD=@Gd^B_I(EqA)N6L*b2n;TT9qKA- zIR{U%?@^$m9|jL}PVpjk1?}a*h5*eD*p01#-PmL0`r`EaK8GUUA$P+le3N-mRR+pQ z5lBZQ*)Z9SXdSVaM(0qdQt);SGbp@3tQ?sX-q`TTi8;NHky6@YK`3^0jPv)_rkh@q5pR7g z794@X%rL&2wWUv>@B+zW>&mI=`frLwb3c8Zioil77EU&#WWYFi3qY~g9I3dNFqHPX zmfMgO=#c4zNS*F{cKq}Wi}#k+@fu2x$8_h$)oxnE-0HII-Zb;+p@XZ3(>Evtt%96^ zWg>kpl+_YS=qNg;W=s4}T8C6Xv7aM5-8f~)$hN5+ln}}dtw}EWhc&`fK|zGq;`SPN`_15eTFoe@wDq0Z`g$>we+VU$7Xedury()r$oVjR<^eBj2&hJ~Msg4V`U z!pY8{g_@bMB^A4`)5Id=Ab86tQ4v{C;INy5ESQ*Rds;vdadX9M8p*}v?87Y4}r_w6=A_JN!#4kYV zzK8^ZyS-ZM4HSx!GJ}gXSY+BVPz)5&$?Ej-m6*N)S#fmYLPr%5Z%zYPDDs16q3IsoNC%3(w2cj zQ43=-vo_tZMMOvzlpxAaoSbahCDN9GLQ%`gS(k-3)_*S|BnwI|i!Z$W?Z%%)+A>fS z@4k4$N5y6sD2kz&a|+|_VD7hqZ9s(NAShWSGTlJ?S3!B|4$DCC1PWRPH-_{yCI%@8 zNUnx}dB zfO5TPKbSUQ)DlU@n?&2w28wMsPv*KxC^BBsF(WZ5HxM0Q2!8>z`HQci*v211{|=s) ze8`>-s6Wb}V6+ZKb=h|vOO1lu;xyzI&+%$KvD?wgQ;Isqyen4)MaD~PdmVOmd1x~v z>LofuLDsRr=-tLn1JSk7%F_xzcZ?=6Fkt?Pp8@?^H=`j?k zh1j;`gIS3QxC+q|#3i$03Vjq_Q+NdDEyL?E7-w&&O)vh;aSj(t@Xmjn>>SX{k~ko#p}ZagajCfw&PY=`SH@EaCeOn=E=zfZaVqB&OC!j-CYr4O!p(EE zfFj~C%+6NeMO6FQnYzRgcvo*I%?{b*yVAC_fpUDkkb7O*u3P~qnYz}M#Ihb?4GgEZ z1w=eYD=4l!MlqE3*@>G`2r=*4A+vHPWLDlJB0j6Ec2J}}Mj@0k@vRTPW-oVIwCDN8Q%-u!@o(Fg_C^v4tQ}9n+VMCK46nDozFt$fJVp>oTU~3~ zvMlN~E>$do_QD!6o)?~*a=!BvrpItV$;4WpfPmq0QNiG}{t}$l7mL=DE$>?>c84qS zS0Qrv+}e$ef5-|fQ_t5>><+&ddv;_H4LQgYkQ7N@g+#iyAdzmqjHqtw_#TQazz+CJ zLr1;)OGCRM|Lk%vzMv-y=Zt{D+j-~9De~pcKZ7Dgmu%bf#OCzMRg4nMZ&si)MuSDcjpP00000NkvXXu0mjfp{|TG literal 0 HcmV?d00001 diff --git a/game/gui/slider_volume_icon_min.png b/game/gui/slider_volume_icon_min.png new file mode 100644 index 0000000000000000000000000000000000000000..37e554d2a4c629e87b6fc8ce1704260283537506 GIT binary patch literal 1336 zcmb8v>p#;A90%~>pI!S;F1YYjaJO!<8l)K^1Vl%hAYLxz z3V3VJiG4Mkqs$by=Dh87QEQF&UTvxGu+huehD4z$uOF&f1T4rl9m~7gUG%8T41;=E zlrS-zG_w#mv3t;E;`yWHH<~w}htI{Ga7Zn1)pj_8sldVU$kkdNFth-PKe>wjb4Esq zrLwxE&^tqC8Mstk|6(Lw+sI;S4PRUOl7MiG-mj(QXzgoA!F8H2(g??IuK!6BDtnDEk1Q=+F%A5dTB9E&)syz5i={ku@%v|$5apE z*|YuwpZagEZF3QX1cd$}3;(*1v82|l8Hn3b^hDv_j=QeHF2<@yhQ`@u_0Tul5>l1d zwOwQ&IgY`wJK`>C$m=}){`Ns1AIln296Mp*_!<*r*qn=Uz(JYlE%mj z$l*JLN}2!4)?@QwgyC$Ifc`arr(jKd99{2A5S_Z`CVS8@UwOJlT;B&)bM{w)(qJdq z{UJb4Z>Iek7xe$MrVc+Q2z;R3C?^1^l<%VrmQ{wPe4KhLTR`?h+gmgWf{ z)D`vZ|6=O-Ug4mxY?QxVnI%2Z)^PgZCvL;gm%?0DbIRC_F%gNrqtTw~LD1=)EpZN> zB;LzM5uHSRzD)bZ;}E)2QIi?>{`azBXaDlpz`itM0@)7uGJe>iO zn*rM7hyxD$Mv{#`N|!bqZ+MNC#%%(GX^Je8 zd_@Vw7?GUMjtAF+*Zn@-bTl-8;?oI5DXh7CKi~Un&#QyM109SnOg$<|n?17Zi)a;X z6C_*Y_{AXE)}MEUS(w9wWI108k2D4QjKx2vqTI2nF0JA(sCVTf0@S^9%3X3u%KtD< BSfT&` literal 0 HcmV?d00001 diff --git a/game/gui/slider_volume_icon_mute.png b/game/gui/slider_volume_icon_mute.png new file mode 100644 index 0000000000000000000000000000000000000000..f6e872b82f5c529233496d2f6679efe7c7a70423 GIT binary patch literal 924 zcmeAS@N?(olHy`uVBq!ia0vp^sUXb31|&mjbk8#|FeiJuIEGZjy}fIje>p(p*vIVa z&XQd%Ek_QWICiM5#ew5u(~&lgzf3$2eQRbboeJj&66DrOb@1@$@yW@V>(J4t6BySM zJ4>tOhTV6z+x)NWv)^y+pBLXJd)wUiNySN3fs>&wj(j2q%^5WoaHuIn2+d{cN?>YI zy{JhPx2WUOvu~eQ7aINCc5nCpow@1(MvXEmUYE)zdY^B;^ewuGO+}wogmJ?5xy!>Z zWjy`6MI<1~Z6^D|U=~M*Ou^K^_JSWmtP6vq8Z=)EShD`9Hg$fH;T5@M@;^EMk)?#}+!ZFP4Wow~O zZPb=Zzc2F^PUqd;bi}#*-LKQ{rtjT-TT|n|Ktf$`*o2cAMbDm{YhM4eCV<7kk7v^4 z>G5}eTk5h-nH5m>J}15>`TNGK&xijde7*Ksz4>P00v(Us^`CQ2yIwrJ%3=E7-~8oT zH{ay;J>Smk<*gyTH}Byhfq+?Vp0T?=E|Q*JDyeaHQO{;R&sBWY3rt!k?Q*=PxH?p! zMn%tKMVoM~{p$&)+#DK=8ma0T*)KvLThvs_?Q=L8p0(|RmUT@d(<%ANj(BU$uSb`!zh~Lu_w)R^;2hq6 z*EQY=v9pz%tZj?_e(s}9s^zq(fK8J&iIzQIg9Lumn6ybP#l$*~;k3k;-*gpSN?N z#?;HFR#h)$5XokA4PXT-5f;$t^kZ~2U_3bK1u@*0;`g?Ox2&kL2?ypn22WQ%mvv4F FO#nkBlE44} literal 0 HcmV?d00001 From 19fe14251ae6ee8b8fe4011aff82174cc518d1ec Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Mon, 26 Jan 2026 15:42:19 -0600 Subject: [PATCH 13/20] chore: final custom assets --- game/gui/check_foreground.png | Bin 0 -> 5266 bytes game/gui/check_foreground_hc.png | Bin 0 -> 5551 bytes game/gui/check_selected_foreground.png | Bin 0 -> 7625 bytes game/gui/check_selected_foreground_hc.png | Bin 0 -> 7473 bytes game/gui/namebox-deselected.png | Bin 0 -> 943 bytes game/gui/namebox-selected.png | Bin 0 -> 902 bytes 6 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 game/gui/check_foreground.png create mode 100644 game/gui/check_foreground_hc.png create mode 100644 game/gui/check_selected_foreground.png create mode 100644 game/gui/check_selected_foreground_hc.png create mode 100644 game/gui/namebox-deselected.png create mode 100644 game/gui/namebox-selected.png diff --git a/game/gui/check_foreground.png b/game/gui/check_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..9830f3d67e2a2cda9bcb15e7787a091a37b4164e GIT binary patch literal 5266 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 Y1!i{?|sQ-?;MsPIfc_paL#ZjEdu`oAN&I( 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 literal 0 HcmV?d00001 diff --git a/game/gui/check_selected_foreground.png b/game/gui/check_selected_foreground.png new file mode 100644 index 0000000000000000000000000000000000000000..c6b31c87eaa686e9209d8085b8572e3a40f8967b GIT binary patch literal 7625 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

`3T0IKZ)4Hk}#%n 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 literal 0 HcmV?d00001 diff --git a/game/gui/namebox-deselected.png b/game/gui/namebox-deselected.png new file mode 100644 index 0000000000000000000000000000000000000000..8e4ce4d9db00347b43e6f7ce468d582287a1990a GIT binary patch literal 943 zcmeAS@N?(olHy`uVBq!ia0y~yU|a%Z2XL?f$uJAXJ_ZKnGEW!Bkcv5P@9xhIO_w?T zv42v=Mz`Hj>VYdJm1TPiAGvze^@!E?<7*New?wyZE17iZ($as-VhdL`J6esl|ASEDbl{3;6LfHr=3rc z$;oO@KDC?EQ}V3&I2_jh^Z8_R^0G?*WE-y{`;&83>c7@*m^m;0y~CtpPe1jaDks;? zib#fkso1MjPI$6p zzb%6ozuXkNJ$r8o8+lH!(_-I~;>vPBYV%TlesBF_+ioh<&U{ifNm-5IfV7O}-XBSK zCU2RkP&@s}b(P(|3=M`Qdv{EGa=UO}D2$hQTiVDr?4+#a=70&^<0j`l041QgD=?=q+=s?mww-+P`jVkpOL-cYMNL6 zzpZ8-ca!D(EK?bL4zBz(vywTxx#S`X!;D4i-P)sMmz1Akf6aJc%N)JGm6{&&tNdgc zg17Dd@_ebnTw_)SEsNQqj#b(x7ilsC9Q?S>d9i}-G!3BY(!Y@steHR?7c4p&IN_Nu zV?)<7cSoxnE{2ej43QmJo=!Vm# zP-_nQ@PBh@tf6Cgug4hZR7S(R>MR2VpkHD3Fmx|3RD>XQ1JEzu6$p zIyG%BP$$GdgFSC=Pm^Vs3f8ac;k}H}A@m){ERg%}q_RVNS#isp!MA`H=-(SKIk1t3 s6?FF+@G`8DVtLu>&dwMRJgJ_c$8m+I;H2#dz>LV?>FVdQ&MBb@06!>>Hvj+t literal 0 HcmV?d00001 diff --git a/game/gui/namebox-selected.png b/game/gui/namebox-selected.png new file mode 100644 index 0000000000000000000000000000000000000000..66adc80173285cc5e30c8db39f404c2299a59f74 GIT binary patch literal 902 zcmeAS@N?(olHy`uVBq!ia0y~yU|a%Z2XL?f$uJAXJ_ZJ6Ur!gukcv5P@19@1G@0SR zM}1?qWW!EY&A?`nUipc~ruEAHV_0-U!!@#_E$4{a$)G>1VNROd(ycjDCbhP<%BtEM z-Pvhn{M_fUS^2w})#vxV5B~h~%FVl<=T*;ter@~n+WDXNiHENJ|0#XQtr4tV{I`y2K*=C470ZE$ViS{s?we3!0XRsMY4_NwY?D+7kZ7IC$q zwGp)j{MY){YI&50oDb*k6ga^8bpETwuim~oJ@?N;Yu-z_S65$c{`a3juVQ|ve%Sro zbcJowOKzGjn7(TH>c8T@co+(9?Z0Y$_4QTx=f*m>IWN7rbz%2a-ed9&zJDTYBWw4* zVTi4nr~K39Yo`R`hF0m-{m<`4oZ93#YweP_)%P}KGB&8jTD?EE@u=j^;z%=({IK)0 z7#X%DZsY#lyY}8Tp9yKR#pf9@GrT#FBYcPZdDZVQ$Eupu%nS!6rE$+WZua|P@!L(- zLA6n_X-gO*ChlLwzAE2bE^o8wr8m`X?>hwzG=Iy zpKtT#rr*uGakX)8jky`#OxpVDpK-o%$u`kThK5WD)8Edn-~V+>ucOr?x0MWUCPwDJ zi>tYEOu=^hneCa339j=ZWuBeM_6QHXAI{!m#8Ca@N6qBJ>(kdwkP}sA_;#c5XYjHA z<)_{yZe}>ZlE%I0^71!)VfH&Gn==Ui*uAT6qmz}E8-q{Ew;5f(#T<8C*I_VNxEsj0 z3SvZyIezjeVpvvEA-E*lmzhC$SDxS!?Xye_!d6>2CdrmD_`G}&)^EVxV5{iCz~eZ9 zL83{4(SXH~DS@Mj<$wSSXM-Y#5QDRT3PYR104um*|6BFi_3LNZ7$yq=ol{`sq3$=w zK$^klRmg;Eteg#*XTv@GZZaC^E`I~@MN8#`YiEF}tt6LhHPu#OSeDuf^pfA&2{F!0 c30_z0l|#w}zg=C%3(Q{(p00i_>zopr02_vJQUCw| literal 0 HcmV?d00001 From ca94a7c64c8d09b932f63c758f1319b870cbf97c Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Mon, 26 Jan 2026 16:01:39 -0600 Subject: [PATCH 14/20] chore: add bars --- game/gui/scrollbar/horizontal_poem_bar.png | Bin 0 -> 4711 bytes .../gui/scrollbar/horizontal_poem_bar_short.png | Bin 0 -> 5372 bytes .../scrollbar/horizontal_poem_bar_short_hc.png | Bin 0 -> 9427 bytes game/gui/scrollbar/horizontal_poem_thumb.png | Bin 0 -> 13532 bytes game/gui/scrollbar/vertical_poem_bar_hc.png | Bin 0 -> 12477 bytes game/gui/scrollbar/vertical_poem_thumb.png | Bin 0 -> 18691 bytes game/gui/slider/horizontal_hover_thumb.png | Bin 0 -> 1513 bytes game/gui/slider/horizontal_hover_thumb_hc.png | Bin 0 -> 1490 bytes 8 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 game/gui/scrollbar/horizontal_poem_bar.png create mode 100644 game/gui/scrollbar/horizontal_poem_bar_short.png create mode 100644 game/gui/scrollbar/horizontal_poem_bar_short_hc.png create mode 100644 game/gui/scrollbar/horizontal_poem_thumb.png create mode 100644 game/gui/scrollbar/vertical_poem_bar_hc.png create mode 100644 game/gui/scrollbar/vertical_poem_thumb.png create mode 100644 game/gui/slider/horizontal_hover_thumb.png create mode 100644 game/gui/slider/horizontal_hover_thumb_hc.png diff --git a/game/gui/scrollbar/horizontal_poem_bar.png b/game/gui/scrollbar/horizontal_poem_bar.png new file mode 100644 index 0000000000000000000000000000000000000000..4e09093ce56deeac17816ea0bf408132a0452a7b GIT binary patch literal 4711 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 literal 0 HcmV?d00001 diff --git a/game/gui/scrollbar/horizontal_poem_bar_short_hc.png b/game/gui/scrollbar/horizontal_poem_bar_short_hc.png new file mode 100644 index 0000000000000000000000000000000000000000..df5d7f8e5d18be5eb8acff531028892df760bb03 GIT binary patch literal 9427 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 literal 0 HcmV?d00001 diff --git a/game/gui/slider/horizontal_hover_thumb_hc.png b/game/gui/slider/horizontal_hover_thumb_hc.png new file mode 100644 index 0000000000000000000000000000000000000000..f45e4522c22165459388da381c184e23a38d068a GIT binary patch literal 1490 zcmV;@1ugoCP) zma2#L$N}}h1qs20BN7*cxFhv|;8MW>aipzUXe(OO1*+20EM1&5aqPtVHsi5pMe`MT zZgA+R?=Z4HTl4e#-uwRV|53JW<9P+^JZ#J2?|gaojJ#ew65cv2OOq*Bx`K^sS?Ed^ z(WybiXNMsd>S!z#5#64KkPO4>nP@#J!!}HG>m4vY2C>;8DES6J)1YWdRMx8(DVl!o zz!xXG1ZH&f*MwyFgfHkvr&tS{nh1)bq2#I<*gb~!lM3`s56L}a(CQuVaS?%Z1na-d z!!|95BQcn|2|gMG?PKA*hxYqmsup}=^n}rAeFNY;f!+W5*My;J;G_Ux11!&>nJs}4 zI7DYM2o6V)yD*Plt%IS%+fiFAp!ui-t=WOm(I9P0BRCjAuc<<7sjy57EK9+k7GY{8 z*3Lgj^tVwM;5D^kqi|^vQ}4fw@I(^f@gxT3M&T2AP!teIOXyZ)qz+DiVrX!pAB>-c zZQ1Zi0(w=2Wa)ed+Xln?ptn^h`68xI9n$)++=UXPZ33jJBw{;95SdK4Ry+YP#=MkAsz|?d&jlqR@coAAlMSZ>inx&Eb@edc)%05K=#SAzp zh~~phPhhZt*p4AYW-_F~`Y>rS0~kN`j(&sm>K$x3x&!TO36^ep0`td$Xg)5I&pSRm>}Iy~-8B?% zWWo4-qFsp z1g5vUg$Oa`A95t&Lu zNQkga1L;H4Zf4Htr~NEwmLY25mFmmuEzoQXjfD*tW@#EIib7~?0BnHs1Xi2RqjF~z za=wJ$Kl#ChNiU3J;^aOsJPSEj^8^;2NCA|E#GWMfeSX}9>2d_hMjP^48PY`36PT?T zkk@Lc-pwO07;$0AeH7X&n@~4p2&s@Ku;Q&{IOc_qiCF#luG@_i<8;p;xNrch;7vD< zzP$^2Q^o4pd&GtHVOqNfO3@L>NS>WDUzmsJG+dBFY<9$j6|ZNB02@jV{%8Qf%+o!7 zmZnS zG?9X-8R%9O7q;ciS#rJ{W7&B0)Hgh9Faif%?h>0(zP;kstn}v!dJWaN%@A#LPQGKK zTgzp13JoL=j1vXtBpzz91vyto`p_hLb%l(6aX5!DbNG@jn-a<1yf#Im94L>p`K>*&>G@^4vz10&F={hdQ-JOPGb;2#i? zcxe>%#SO$}GN|6oflr2!d36epzQ2yd?lF{ZF8^C68{w@9%zgS+xev1~`^wPash{|` zc%*tiFB?4zd|W^)TLjJd$d)R(8pe*z5sRi4o3IRnxL!UHBK1!09mD85bENLh@1xU$ sj@F85xqWf|^yMpiKRXWUd0un>0oxLFP63D_kN^Mx07*qoM6N<$f|Gu`;{X5v literal 0 HcmV?d00001 From dc31ce3988250d5b4e9c266a7100c8c7a44ca555 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Mon, 26 Jan 2026 16:02:38 -0600 Subject: [PATCH 15/20] chore: add fade for vp --- game/gui/viewport-vertical-fade.png | Bin 0 -> 2410 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 game/gui/viewport-vertical-fade.png diff --git a/game/gui/viewport-vertical-fade.png b/game/gui/viewport-vertical-fade.png new file mode 100644 index 0000000000000000000000000000000000000000..61aad170046d7ceb0cb0f83fc5f404a98779fcab GIT binary patch literal 2410 zcmeHJ|5K6)9)58h?aORs+Lz0;>$)4K+s5+DSQTo$b2BR`JCRlewlVWW(+vc|RNVEN z-BzV;S#>j!>D-lkUxCG4@XM=`Tft}|l@TevkYkF1yrhU22%LY%&HnWHJoEhYdFGkt z`P@2BNcnKno=pG%e3*JF`2ql7)>jO$A!vQ%&>vg@fQ>P!$w?X4n{BUUygw)I2>Sf+ zq3syVeoXSVhaTmIKba#=ZQC9YBtHr_Io*3G>KrBrWC*PCNhc2k&R$?Y|0a~F}u-^@uF)lD96=@$zikM>(; z1 zCCCB5cmC{THgPy3w9kN+3SkE?O$m#$x*oCyV_fVP+_+Z=hi(4BK*SDCt`NvXA+!>8 z|Ase+58Kuz2W~_Nt>8q1btME);#T)Z5!p44L7jY`wZZtMYA=hx)7Xf;QH% zT&I=#F<(Yv{aR7j_+PZ$?|4|3=gEz>wIM!Apu#NV*eU@}(sE{8V~pBIA_BAGoMN7= zBv}#h%^n_~bSIyc6=hOh#qM;D#@R9>Uv;OgCj_r zi;wP-g=g#v)M?7|Ua+x)r+1te`B7DWxOx5wRdYtKP5oKJkl(8T6@2o^^>nOm4SzbM z`8nLNhTwQTTAd8J1_$ely8iiEN5=ngVBWrdE-vQ~V?SgfTo7kJ7S;R;+J?8ZS(OR1 z!=XQ(aZ5DlMw5KJ?vmb&o>cy_EzvgCUchBWEX+Re_~uf}rVb)EuaI0r{pq?RZPNoj z--aq~*ojfFlp3M0;O3_{eDHC159^i^6dTefBOFN7)W3GBEt7B*hiya|x?+Vv)}cDG zk3kQWPBioKyGGfAamOk$)Dla%f;ZONuyty^)V!+HmV@u`f@oT0nbGRTGY;Ty`1bV# znSQdbv$m5k?ab1MjO6Z^Adl1Q4u+gl6p<{-#1_eljMGaNLwo%5#dDXNqY}Hv1Ozq@ zb=yW^izvZ7#3ak5to>2uf!M<-*2NHjOD^rbu;cs=*H`|eqAzZgwR8^{F?)b zEcOB0SM3lRJ5WzUPsZ^0oZi^2u>SjE14X0n07X!VtLmbz50rUqV!pEZgQc$=^T!>VL}l B83X_T literal 0 HcmV?d00001 From df5d4045a7aa352ee336f3c8da9493907d962d04 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Mon, 26 Jan 2026 16:08:45 -0600 Subject: [PATCH 16/20] fix: wrong bar and add hc colors --- game/gui.rpy | 4 ++++ .../horizontal_poem_bar_short_hc.png | Bin 9427 -> 4908 bytes 2 files changed, 4 insertions(+) diff --git a/game/gui.rpy b/game/gui.rpy index 2a6f5af1..5cf62587 100644 --- a/game/gui.rpy +++ b/game/gui.rpy @@ -41,6 +41,10 @@ define -2 gui.selected_color = '#bb5588' # This color is used for a text button when it cannot be selected. define -2 gui.insensitive_color = '#aaaaaa7f' +# These colors are used for outlining text in High Contrast mode. +define gui.hc_label_outline_color = "#b59" +define gui.hc_label_outline_selected_color = "#ffbde1" + # These colors are used for bars that are not filled in completely. They are not # used directly, but are used when re-generating bar image files. define -2 gui.muted_color = '#6666a3' diff --git a/game/gui/scrollbar/horizontal_poem_bar_short_hc.png b/game/gui/scrollbar/horizontal_poem_bar_short_hc.png index df5d7f8e5d18be5eb8acff531028892df760bb03..173b4c7f39da90810244176e179ed9bbe9cae47b 100644 GIT binary patch literal 4908 zcmYM22T&78+s8vuq=NwoRRoNnsPqzguK~nU;7*ZVB#01dAP_*Bv>+V4ic$_FAUP0_ zqO^#iw;&xNiGUDHD51XGJKw$EZ)V%<&hE}U&+h-3C&|Xjgp*B(4FCXenwc8f0sxHo z^Zw;a7td>JL?Z0GVSR4u00#irf&UZ+Kzl}WXR?}Th$ znO4fp7(TriiA#*)00}sH7!l0#%2vell~stRnpC7(j#gXv5PfS)UB?(wl%}TsKSZIU zuEiSv8>*{21qb{KBu_-{|EG#{8!|fr5h{bjL%Sq4df)NpqkNOUA6;9_D=D&w<8IOK zFmCaxL+ccl6bWC>unE>R>@#$`)bDO%_`8HHe+J)hh>=_BFa123V$m_<&O}-gE-_K_ z&4L53Ou{oGxBG@2cO`ba3KBK>Gt!NSM!aE`Ef;^P2E-k2ogXA?hik@zfD*58{J+8> zYa^a@=tUiUF@IifDw4|F5_FVXQk2XbhAcDp|G�GRmyvoSvfBJV}f^T6ZNJc*B?p zmH^vDo(#-O9Ag)SpO7^h(@yLX2 z423RwP8*{DDsIhwKB90UcBc-_LoIJ!jb6B-~?>XnEp?=;NT{ zwurQD6EqyKcfC)z4C72}PM&j}V7IckO#cl;EfzG14`9Kmf1=(DS|rlBeqJ>B9{1?l znV5>QjD%v!F5_yA_&&(hih82*k%i+l{4b}Ps5~5*S%*>gLl>AXtg_VTVK51O zAerkhV8~$aJkDNVM@s(Iqu--whr6m-Zn+e7|452)?gDFzeq@5__AMBefv<_dtX17w zam@sk?yR!vtUHSY=mK(#c-6Z}fZ(7)0gh1b9bnf0I}X!lE$TQ>@eFXo09Aa&R~5=k z*P&~9qkc&2x{#d!^PA(tcYISB)m{UzD!N{oJ3q&t6f`_cg84Dc^+}(}0DSuZ1ChiA zwtB(xVPvQ#H1Fcch37KIb>q`Y#|v)ZfOMWFwjYxtV;M zwZx1F(LE6j>On&jP9dmGVVvi@VMXP0DgCzXRoNb|5FT|5h`!5UdPgE>B;ELd>M~sP^gb$; zt(7AvZcjO;U?r@8R9TONTjDwo9)@nm-9gePrHyXb|tsG(;n(cz`4beOyi&`m;fi zF4)lvmXuLl>wAamHr9YRMa}z_`nlmXG{J;)X@qP6N0<07M`hk$(z_dAIQk97pxje* zo8#x-X!w9y9Xt5tJonwt2e-(QOirDKN5WYe=_x?)hMZ~p`_b=Zf>E)aty5ABnA?hd z-ka9b@l_c~kk!A+N493&ip(Q&+=r|LkNkG#xm4O2pXB@~_j2QNj&NWUSd7kz@{BwI z?(+3ucEVD%$H^Y)JH>AY!PIw&k3D|0^&o!jdst1T)P2Jd0W&#*20)Dw%Rzw8@gj)D zJ%_$`J@8$0wl8fD93)nXkqPavZu@IikwO*LP6!Zod(>B7r10}ha`)@GN^H0d4G+y5 zE^rIFcBGS8wbnPAl(6xQ) zq`ntY7H*oqTiYiD!DozqKX+aZ2L4{*uOd*bP{*#qga)O8d-hpdd0x(0Mqu;R0$IFJ z^cT?5Ul~nu1g_Y^rEQ7iW$n*l=6`q+EG=YRX0xKcpjwz2pT55|l?}FwENgb}RHM@aN=iA2KmvR_fwbLP0(PZsP8uPB|K03R%io6IHe`<*+QqzD~9 zw;P5T0dWy0VFL|j-Y=Sa&h71c8)ZhweMLT08eKesy`Qe$_aPQLmFF+Dg`nRWr@G*l z(PV%0{Y=jN+kivqB{`!O3OxsvEkGu@ZbHi&h2)F$`)UZ|GJ*RF5!aVPGE#q6x zXq@SHcJ^kQG{kDq)Vq6Xe!=nwgGbe(fv8eGO%wmaA>q=o;o(`z>!GJJv_JJK_ygg2 z{?&CaPP@Tc;pn;2#LGO|ju3jcbWFgk8-W;@Z>)4UolG@3++)!O3g5qU@ z0n?E!$tm$y>y>rQcY^g0*xD0Na&EcGQ~0{<`VQ7+-;Nd{I*a7~!@Mj3Epy25o*>u% zqr-dCH+sjhXJM-P22Q&6iH?H9q=fHDLE3;=idJnuo1khQhS4X38{XDmy>9lGfuO@L7MSyuTHOhQ8AR-2wy!9 z1Y#u>Gr=cUH&?Xo*nd;3^S?6A2bptL*vd1lEUwY^6Or3BUL|ZW?Ad%D^B@qu!2pO_ zr_1$Y@`AaQ*!ednh(yZ|vVOnWTK z!x4o<#)3iZl1cyDc^0J)*0PONxDg^oK}w(XU&WK;&bIQsnjsO0CJmR5bdK*=KvZ?& z&hohix~B=s$_@F{GTp-2ly|f0{;p;<`A^8}22&mY3x-Rd@d}uX(=a~Psq(|QxTgam z{UEtfBK%QWk=sY#^@LqwC+O?}jNJ4kSX!LhYHsoM#!fpIfXW)2FQ+H0RS^`Yzz@ta-*+3G8tttCqp&Yv7-t^@_nJf$#wFoCVSoh} znRTcKR)vm`yJ{Ow$ln>L22Ap;4>t-e%fE(HhqH>A<3%5rhooB4(q4*b$x=h+MP_C_ z1|L^!*M9Mc$_%(#+6Y)T+>Re9f#|b+KzRF=KecyAZB}v|k zCMQk2a&crn@q7oHrgM2blU%|336NQCY$opB9;ZIctx8oPcp9c!<(dBYYIskdcJFyB zAE?uvk)aj0vGPv9c(&F%e|g40CS_yTc0uq7b{PL*cmQ&XizSFe4HSD{55$|2ImttJXlk31z+xOcP-09`hEKdug`PAw z_y+YUt*RP7NvDs78>WxYrGhNLkjO!iybZtBWue$42 z*PPN_CW8Ea*pS>^ZhU*G`!|Q4>PD_av2oj$z#U0nPkhElzK!89_@cXjAdC{0vFK+L zDR|RnjyHe~&Pr?JVLOtr3mD(`=3#=Tx3;45fD{ z8xuw}v`iRw)sh`wiK^`L4FHJV+L)EDz;V*YBoBCG@YZdh)>Y@&D1iNpym%Sz`cg^v zxFE`UiW1=TI-4EbuE~g-C(_y1xC~w>IKa;;II0e00Co&35-6&W?$d%(nnEaNDbL$< z^WhUTq)UpEFkRfO#m#22RK2$U~={S1cvE~vQMdCvNnyz`E6dIUq~Sy(;DWD5`)X^ zl;_pD9||k&D=R(KiJNcWBod zPR!qEPsurIhnd7Og{4@v3f}yqr1iF|j>*idr{5ag2h4)E`X4vYXFjlh9PqzX0&xtD vng24*N<__k`IjHe0bQHKf061R-v%`Jjd-n%9XOt+zW`=NR)%%@PBH%hcyOI# literal 9427 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 Date: Mon, 26 Jan 2026 17:17:03 -0600 Subject: [PATCH 17/20] fix: return game_nav --- game/definitions/splash.rpy | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/game/definitions/splash.rpy b/game/definitions/splash.rpy index cb78453c..6eed77c7 100644 --- a/game/definitions/splash.rpy +++ b/game/definitions/splash.rpy @@ -119,6 +119,10 @@ image menu_nav: #recolorize("gui/overlay/main_menu.png", "#ffbde1") menu_nav_move +image game_nav: + "gui/overlay/main_menu.png" + #recolorize("gui/overlay/main_menu.png", "#ffbde1") + ## Main Menu Effects # These transforms and image transform store the effects that appear in the # main menu on startup. From ab5b6fd86908d674b2d233e50ecf7063ed84a325 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Mon, 26 Jan 2026 17:17:22 -0600 Subject: [PATCH 18/20] chore: textbox construction --- game/gui.rpy | 4 +- game/gui/textbox_alphamask.png | Bin 0 -> 69834 bytes game/gui/textbox_alphamask_opaque.png | Bin 0 -> 10337 bytes game/gui/textbox_border.png | Bin 0 -> 9803 bytes game/gui/textbox_highlight.png | Bin 0 -> 38226 bytes game/gui/textbox_tile.png | Bin 0 -> 5205 bytes game/screens.rpy | 53 ++++++++++++++++++++++---- 7 files changed, 48 insertions(+), 9 deletions(-) create mode 100644 game/gui/textbox_alphamask.png create mode 100644 game/gui/textbox_alphamask_opaque.png create mode 100644 game/gui/textbox_border.png create mode 100644 game/gui/textbox_highlight.png create mode 100644 game/gui/textbox_tile.png diff --git a/game/gui.rpy b/game/gui.rpy index 5cf62587..43a49965 100644 --- a/game/gui.rpy +++ b/game/gui.rpy @@ -110,8 +110,8 @@ define gui.max_textbox_height = 211 define gui.textbox_yalign = 0.99 # This controls the placement of the speaking character's name. -define gui.name_xpos = 0.13 -define gui.name_ypos = 0.0 +define gui.name_xpos = 0.14 +define gui.name_ypos = -0.26 # This controls the horizontal alignment of the character's name. define gui.name_xalign = 0.5 diff --git a/game/gui/textbox_alphamask.png b/game/gui/textbox_alphamask.png new file mode 100644 index 0000000000000000000000000000000000000000..a09622a482c8b7e6195d6f0e2fe25e659321fd0c GIT binary patch literal 69834 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 XniH&^UxIJ{ddD3D6aBKA51;=(>9L#f literal 0 HcmV?d00001 diff --git a/game/gui/textbox_alphamask_opaque.png b/game/gui/textbox_alphamask_opaque.png new file mode 100644 index 0000000000000000000000000000000000000000..7d5ade501cb7ec8dab0f66cecf839b640288073a GIT binary patch literal 10337 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 d3jFEekU0Cvww>wO-;sHrJ1aW;z+G?Uw)m literal 0 HcmV?d00001 diff --git a/game/gui/textbox_border.png b/game/gui/textbox_border.png new file mode 100644 index 0000000000000000000000000000000000000000..5605e40cb94e5a6de44392a27270dd3ea3a86172 GIT binary patch literal 9803 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 literal 0 HcmV?d00001 diff --git a/game/gui/textbox_highlight.png b/game/gui/textbox_highlight.png new file mode 100644 index 0000000000000000000000000000000000000000..b92642e3bbe152d4facdc47d5f0b7aaf3b29692f GIT binary patch literal 38226 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
mPbSa?pOFfjk zx@CN$=W&PBY$MZ{|gia>-rCiQ@cu%`1UMwYi(8>Z6D22Tq@_= z;%rB&J*{<@ioPm$`gFt|ZTz{%I;ThP`AtsQhJW5|h^5ug&k>n^)p787E-G3loEi3JTMTPpT@m#a`ZoRMb3{;{ zVNTkMFg5y3Up>%xirm0uyk2L!=FZBpu8WRsIiTIMKcS-s_WhO(Wx?3T4)$HEv=!kq zb~AP%YL84?uzOXT3*-0jHmxF5)dkvdL>n@Fu9xfE{JJ%9ny53e{5by9rqwcaeck*wnF8Q15Qb6do#_k^z__12tQQzuy*u9jIef}F_LLRlyR-nyY5nAt7=`h zLZ2TcwvS*hnNIQdifzD#V~%CTKCX|%E-X%=9oW1BI}2myr^* z-CN69#6YR6D{9R;dQG`L=8K%N4L`qX^p#-vgNXb;BJ$=&<6DDlwTqXhP<2amTN*od z>v)y6H+FP_e_As(TMZ29s5feHX=Pi6GFK#O!xov1wlz-60(J2~H+GQ{`3A2pJU?W< zaj{4LUHcF*=Uf|S_66A_bJThC@woEbjo+~2(YV%wj1$Dp%!lkVj}1aMY+cDt%da~s zK2K{)!3WFPKC@muNPD^7)zzo;#S}ZEzJ7|xcHjPs5}-zY4Hcnln;$emjC*SsbW*&I ze%CM!u0spTulDSC7e_xYY^mDGT~-HT$AJGpLLE(Bq}E%wp`a=vX_F zxY^=C@{z^GM-dgzT8kcS?R13o$?E$R_F2b(PnjRv&T;^|vb?BICf*!2cs&f=qrX-V z!&*FFSV{C7dGE0-9&ehYZ9ShUFFPCKI=M|p65B@Hm)w&mFzT8f@x@len)}?N&(?Fy z+*?J7vAvQej_O`YP@H+Jmmfc zWGl2UQWP8MlRXO63U)2i7M<*$9s0vjcK^}a{tu_m@wIQ&gS{@?!}!I5R~2qsW}0000EWmrjO hO-%qQ00008000000002eQ_gthI!a z3C8dxRx*0YtQdSrBCaHOQ#9Pkb`?;NMA8`7o@6rHRCYDbsaFNY?6io-b+XWjYF;pF zkQ=9+%?+ijBv&a!ARLCp+(4y}&|wk+lL)wCSS%4CVi6*NV3`V*tE5V9$HfEYtb|?_ z6*jHI7>x{-mN0D9mdYr`d(yN$`e76c4IHBEXBoYQH5GbjHawH6lLlJ z&+N`DazjJ86J9r(2`bg*&qmO}PKIGLspg4cBoKnd5Uh-WB`UF4C50h4PzA&7tXhgN z>eD(|#ZrJZNGy&)0NfNRnfwV>0Ad28u|AmzT&1V1Nf@YrF$pt}B8%C;d8)R zkyayE`IxD@R@N&5XbdE!1VSp6kW48_Vq@!e=*L=LmPp(|~jDF_C|u>lO)I(knCX6P81jGCS^ zE+Z9)f`nm6E+=qEFP4%JMgUAn^e`q-fZl}2#FIsA+W{)L?W1^EU7PfESaWykq>4` zeaYLf6oA&QM05)wnkDrmZ=x`w7x|eisV{jONz+EN!Pbk8=uUE9dd#3EH1hT23Y#_n0Q1mC_A*Bkv1d+)g0>MajH$fl;DI+1VB2WSArAk7N z=>Hf`ue9kM`UKsx z9Ymf4-T$FT&NkKFbVPsbNA1sH?U|g$E>P#8R@GDIc~%U9Q?3e}s`@x*AyT~*BLnqd zn-2slR4T&=cd zgLP{K?`@^Y8-C$%`d6c2!7=vyy3Kb}?#PF&KA3)No|W07Nq=Q$R@H^6>y{^(nlh@Y z+~?dU*Zv5$Yr=TY;d5T5$(j^ehH{1{Hl4wybrXVDX-_pJ2d! z+V${zIf6AKqlftRpS(MIrhoNcHeG1QEF_tfiOZIJRk3Hzm+AY1D)%(ZJvSlbXjT*R z&7ymgmYIG$>mG7cbmfO#qpN-z_1u<&nzD*(bws+C;Tb>WsgswXDRl_$!P@jU*ePyrK_&3KWZV_&W2VZ%9min?+-Jto)nwjVB zdi!wQ3AePHI@-gHTq_ z@I{yTk$>Nxw(FcN9}zI`q$!2GweGlxGYa*LNKL{9I?ZtcK+VDN7R;KrkabImG1G( zHwmwMp3Pg&jffh(vLte)SLG3C!K!if>w*|McN>4q_+cyfwE`4Xyj8R%$ouX6{1XMI z+G?`-8-4u;R5Vri3}WILF?{3AqA?i@bGLDbG>4So=K2+rhi0E*<_*BB$A8H8 zAW&f&{as0<27PZo|JJt~TTYE16tSOg2+40j{f!IFxi!S?Mvec?PafsP$1_!Xvs+F< zgKS0ole+QsRY!ehRWM^N6znXC9KsBkW0Ek8AQwgD9v3F>XfcAVJgi=Mn*a)vxOs!V{YM%{W-Sn^n+N3A|NEyZ7k|MN7% z51CLOUC8*IW{6;6ee~_c8U7JW|KgI!orb7F0XjIWQFFu3E1`(*Kdho{wbPA#XEe-{fYj^?2e$yRTsVFd-$J?-PZc@rE{(Qm#bSBfPeSA g$T(E5)p7#B*n|DM4_uYe>)0DQbynD(kcBJ%1 Date: Sun, 8 Feb 2026 16:10:17 -0600 Subject: [PATCH 19/20] chore: delete old poemgame guide due to non-5.0 poem game code --- Documentation/New Poemgame Guide.pdf | Bin 165065 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 Documentation/New Poemgame Guide.pdf diff --git a/Documentation/New Poemgame Guide.pdf b/Documentation/New Poemgame Guide.pdf deleted file mode 100644 index 9ecc4128a99c2c7b78273ecfc66d12fee46c4e18..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 165065 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 From df7343292f741642a08480bf06d4fcc7422b5995 Mon Sep 17 00:00:00 2001 From: Bronya-Rand Date: Sun, 8 Feb 2026 16:10:39 -0600 Subject: [PATCH 20/20] chore: update readme --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index a8ab547e..be5c3aeb 100644 --- a/README.md +++ b/README.md @@ -181,7 +181,6 @@ If you prefer a different approach, you may use one of these alternatives: - 📱 [Android Mod Guide](./Documentation/Android%20Mod%20Guide.pdf) - Complete guide for Android porting - 🎮 [Discord RPC Guide](./Documentation/Discord%20RPC%20Guide.pdf) - Set up Discord Rich Presence -- 📝 [New Poem Game Guide](./Documentation/New%20Poemgame%20Guide.pdf) - In-depth poem game documentation ### Community & Support