misc menu reworks

This commit is contained in:
betalars 2026-06-03 14:40:20 +02:00
parent e6b217ac5f
commit 0e70bbda32
13 changed files with 216 additions and 155 deletions

View File

@ -0,0 +1,10 @@
extends Node
var arrow: Texture2D = preload("res://import/interface-elements/cursor.png")
var grab: Texture2D = preload("res://import/interface-elements/cursor_grab.png")
var drag: Texture2D = preload("res://import/interface-elements/cursor_drag.png")
func _ready() -> void:
Input.set_custom_mouse_cursor(arrow)
Input.set_custom_mouse_cursor(grab, Input.CURSOR_MOVE)
Input.set_custom_mouse_cursor(drag, Input.CURSOR_DRAG)

View File

@ -17,10 +17,10 @@ func update_mix_target():
func play(from:float = 0.0) -> void: func play(from:float = 0.0) -> void:
if not alternate_streams == {}: if not alternate_streams == {}:
match State.speech_language: match State.speech_locale:
1: stream = default_stream
2: 2:
if alternate_streams.keys().has("de"): if alternate_streams.keys().has("de"):
stream = alternate_streams["de"] stream = alternate_streams["de"]
_: stream = default_stream
super.play(from) super.play(from)

View File

@ -137,7 +137,7 @@ func appear():
all_text_revealed = false all_text_revealed = false
animation_complete = false animation_complete = false
match State.speech_language: match State.speech_locale:
2: 2:
animation_player.queue("de") animation_player.queue("de")
_: _:

View File

@ -0,0 +1,27 @@
[gd_resource type="Theme" format=3 uid="uid://c30n4maixii5g"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_fbpt0"]
content_margin_left = 10.0
content_margin_top = 10.0
content_margin_right = 10.0
content_margin_bottom = 10.0
bg_color = Color(0.73248583, 0.5589029, 0.8031642, 1)
border_width_left = 5
border_width_top = 5
border_width_right = 5
border_width_bottom = 5
border_color = Color(0.37666512, 0.30695406, 0.637124, 1)
corner_radius_top_left = 10
corner_radius_top_right = 10
corner_radius_bottom_right = 10
corner_radius_bottom_left = 10
[resource]
Button/colors/font_color = Color(0, 0, 0, 1)
Button/styles/disabled = SubResource("StyleBoxFlat_fbpt0")
Button/styles/normal = SubResource("StyleBoxFlat_fbpt0")
Label/colors/font_color = Color(0, 0, 0, 1)
Label/font_sizes/font_size = 25
Label/styles/normal = SubResource("StyleBoxFlat_fbpt0")
RichTextLabel/colors/default_color = Color(0, 0, 0, 1)
RichTextLabel/styles/normal = SubResource("StyleBoxFlat_fbpt0")

View File

@ -150,12 +150,26 @@ const user_saves_path:String = "user://savegames"
match text_language: match text_language:
1: TranslationServer.set_locale("en") 1: TranslationServer.set_locale("en")
2: TranslationServer.set_locale("de") 2: TranslationServer.set_locale("de")
_: TranslationServer.set_locale(OS.get_locale()) _:
if OS.get_locale() == "de":
TranslationServer.set_locale("de")
else:
TranslationServer.set_locale("en")
settings_changed.emit() settings_changed.emit()
@export_enum("system_locale", "english", "german") var speech_language: int = 0: @export_enum("system_locale", "english", "german") var speech_language: int = 0:
set(value): set(value):
speech_language = value speech_language = value
match speech_language:
1: speech_locale = 1
2: speech_locale = 2
_:
if OS.get_locale() == "de":
speech_locale = 1
else:
speech_locale = 2
settings_changed.emit()
speech_language = value
var speech_locale
@export_group("Gameplay Settings") @export_group("Gameplay Settings")
@export var input_sensitivity: float = 1.0 @export var input_sensitivity: float = 1.0
@export var fov: float = 35.0 @export var fov: float = 35.0

View File

@ -14,8 +14,6 @@ var is_active:bool = false:
set(active): set(active):
if is_node_ready() and active: if is_node_ready() and active:
screenreader_check.grab_focus() screenreader_check.grab_focus()
if not active and is_active:
leave_stage.emit()
is_active = active is_active = active
if (is_active and not focused) and not get_tree().paused: if (is_active and not focused) and not get_tree().paused:
@ -24,6 +22,7 @@ var is_active:bool = false:
@export var is_in_beginning: bool = false @export var is_in_beginning: bool = false
@onready var reduce_motion_check: CheckBox = %ReduceMotion @onready var reduce_motion_check: CheckBox = %ReduceMotion
@onready var disable_bobbing_check: CheckBox = %DisableBobbing
@onready var screenreader_check: CheckBox = %Screenreader @onready var screenreader_check: CheckBox = %Screenreader
@onready var disable_rendering_check: CheckBox = %DisableRendering @onready var disable_rendering_check: CheckBox = %DisableRendering
@onready var simplify_controls_check: CheckBox = %SimplyifyControls @onready var simplify_controls_check: CheckBox = %SimplyifyControls
@ -44,8 +43,10 @@ func _ready() -> void:
update_ui_from_state() update_ui_from_state()
reduce_motion_check.pressed.connect(func(value): State.reduce_motion = value) reduce_motion_check.pressed.connect(_on_reduce_motion_pressed)
reduce_motion_check.pressed.connect(changed.emit) reduce_motion_check.pressed.connect(changed.emit)
disable_bobbing_check.pressed.connect(func(value): State.disable_bobbing = value)
disable_bobbing_check.pressed.connect(changed.emit)
screenreader_check.pressed.connect(func(value): State.screen_reader_enabled = value) screenreader_check.pressed.connect(func(value): State.screen_reader_enabled = value)
screenreader_check.pressed.connect(changed.emit) screenreader_check.pressed.connect(changed.emit)
disable_rendering_check.pressed.connect(func(value): State.rendering_disabled = value) disable_rendering_check.pressed.connect(func(value): State.rendering_disabled = value)
@ -78,9 +79,15 @@ func update_ui_from_state():
subtitle_picker.selected = State.subtitles subtitle_picker.selected = State.subtitles
scale_slider.value = State.ui_scaling scale_slider.value = State.ui_scaling
func _on_reduce_motion_pressed(pressed: bool) -> void:
State.reduce_motion = pressed
disable_bobbing_check.disabled = pressed
disable_bobbing_check.button_pressed = pressed
func _on_save_button_pressed() -> void: func _on_save_button_pressed() -> void:
State.save_settings() State.save_settings()
is_active = false is_active = false
leave_stage.emit()
func _input(event: InputEvent) -> void: func _input(event: InputEvent) -> void:
if event.is_action_pressed("ui_cancel") and is_active: if event.is_action_pressed("ui_cancel") and is_active:

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=5 format=3 uid="uid://b3wlecqvelh22"] [gd_scene format=3 uid="uid://b3wlecqvelh22"]
[ext_resource type="Script" uid="uid://cbax2lv4pstqk" path="res://ui/menu_main/accessibility_settings.gd" id="1_x3lym"] [ext_resource type="Script" uid="uid://cbax2lv4pstqk" path="res://ui/menu_main/accessibility_settings.gd" id="1_x3lym"]
[ext_resource type="PackedScene" uid="uid://dy5rd437h5hsw" path="res://logic-scenes/board/card.tscn" id="2_24dtk"] [ext_resource type="PackedScene" uid="uid://dy5rd437h5hsw" path="res://logic-scenes/board/card.tscn" id="2_24dtk"]
@ -17,85 +17,90 @@ func _ready() -> void:
pressed.connect(func(): OS.shell_open(\"https://store.steampowered.com/news/app/2515480/view/534358622649452263\")) pressed.connect(func(): OS.shell_open(\"https://store.steampowered.com/news/app/2515480/view/534358622649452263\"))
" "
[node name="Accessibility" type="VBoxContainer"] [node name="Accessibility" type="VBoxContainer" unique_id=1127462745]
script = ExtResource("1_x3lym") script = ExtResource("1_x3lym")
is_in_beginning = null
metadata/_tab_index = 0 metadata/_tab_index = 0
[node name="Label" type="Label" parent="."] [node name="Label" type="Label" parent="." unique_id=74247572]
layout_mode = 2 layout_mode = 2
theme_type_variation = &"HeaderLarge" theme_type_variation = &"HeaderLarge"
text = "menu_a11y_title" text = "menu_a11y_title"
[node name="Label4" type="Label" parent="."] [node name="Label4" type="Label" parent="." unique_id=1029235384]
layout_mode = 2 layout_mode = 2
text = "menu_a11y_disclaimer" text = "menu_a11y_disclaimer"
[node name="Container2" type="VBoxContainer" parent="."] [node name="Container2" type="VBoxContainer" parent="." unique_id=349263796]
layout_mode = 2 layout_mode = 2
[node name="ReduceMotion" type="CheckBox" parent="Container2"] [node name="ReduceMotion" type="CheckBox" parent="Container2" unique_id=169685481]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
text = "menu_a11y_motion" text = "menu_a11y_motion"
[node name="Screenreader" type="CheckBox" parent="Container2"] [node name="DisableBobbing" type="CheckBox" parent="Container2" unique_id=311345643]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 0
text = "menu_a11y_head_bobbing"
[node name="Screenreader" type="CheckBox" parent="Container2" unique_id=260720725]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
disabled = true disabled = true
text = "use Screenreader" text = "menu_a11y_screenreader"
script = SubResource("GDScript_v567h") script = SubResource("GDScript_v567h")
[node name="margin2" type="MarginContainer" parent="Container2"] [node name="margin2" type="MarginContainer" parent="Container2" unique_id=1774098220]
visible = false visible = false
layout_mode = 2 layout_mode = 2
[node name="DisableRendering" type="CheckBox" parent="Container2/margin2"] [node name="DisableRendering" type="CheckBox" parent="Container2/margin2" unique_id=981247924]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
disabled = true disabled = true
text = "disable video" text = "disable video"
[node name="SimplyifyControls" type="CheckBox" parent="Container2"] [node name="SimplyifyControls" type="CheckBox" parent="Container2" unique_id=1513674258]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
disabled = true disabled = true
text = "simplified Controls" text = "simplified Controls"
[node name="margin" type="MarginContainer" parent="Container2"] [node name="margin" type="MarginContainer" parent="Container2" unique_id=1636751538]
visible = false visible = false
layout_mode = 2 layout_mode = 2
[node name="ShowNavUI" type="CheckBox" parent="Container2/margin"] [node name="ShowNavUI" type="CheckBox" parent="Container2/margin" unique_id=1902241444]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
disabled = true disabled = true
text = "show Navigation Buttons" text = "show Navigation Buttons"
[node name="HyperacusticsFilter" type="CheckBox" parent="Container2"] [node name="HyperacusticsFilter" type="CheckBox" parent="Container2" unique_id=2043037116]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
tooltip_text = "Applies an audio filter that removes high pitched noises." tooltip_text = "Applies an audio filter that removes high pitched noises."
text = "menu_a11y_hyperacoustics_filter" text = "menu_a11y_hyperacoustics_filter"
[node name="GridContainer" type="GridContainer" parent="Container2"] [node name="GridContainer" type="GridContainer" parent="Container2" unique_id=1659943778]
layout_mode = 2 layout_mode = 2
columns = 3 columns = 3
[node name="Label" type="Label" parent="Container2/GridContainer"] [node name="Label" type="Label" parent="Container2/GridContainer" unique_id=1143896544]
layout_mode = 2 layout_mode = 2
text = "menu_a11y_fonts" text = "menu_a11y_fonts"
[node name="VSeparator" type="VSeparator" parent="Container2/GridContainer"] [node name="VSeparator" type="VSeparator" parent="Container2/GridContainer" unique_id=1188811042]
custom_minimum_size = Vector2(30, 0) custom_minimum_size = Vector2(30, 0)
layout_mode = 2 layout_mode = 2
[node name="FontSeettings" type="OptionButton" parent="Container2/GridContainer"] [node name="FontSeettings" type="OptionButton" parent="Container2/GridContainer" unique_id=775424409]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_vertical = 4 size_flags_vertical = 4
@ -111,15 +116,15 @@ popup/item_2/id = 3
popup/item_3/text = "system font" popup/item_3/text = "system font"
popup/item_3/id = 4 popup/item_3/id = 4
[node name="Label2" type="Label" parent="Container2/GridContainer"] [node name="Label2" type="Label" parent="Container2/GridContainer" unique_id=2096527155]
layout_mode = 2 layout_mode = 2
text = "menu_a11y_subtitles" text = "menu_a11y_subtitles"
[node name="VSeparator2" type="VSeparator" parent="Container2/GridContainer"] [node name="VSeparator2" type="VSeparator" parent="Container2/GridContainer" unique_id=92983831]
custom_minimum_size = Vector2(30, 0) custom_minimum_size = Vector2(30, 0)
layout_mode = 2 layout_mode = 2
[node name="SubtitleSettings" type="OptionButton" parent="Container2/GridContainer"] [node name="SubtitleSettings" type="OptionButton" parent="Container2/GridContainer" unique_id=1972211193]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_vertical = 4 size_flags_vertical = 4
@ -133,16 +138,16 @@ popup/item_1/id = 1
popup/item_2/text = "closed captions" popup/item_2/text = "closed captions"
popup/item_2/id = 2 popup/item_2/id = 2
[node name="Label3" type="Label" parent="Container2/GridContainer"] [node name="Label3" type="Label" parent="Container2/GridContainer" unique_id=573284714]
modulate = Color(0.65012825, 0.6501283, 0.65012825, 1) modulate = Color(0.65012825, 0.6501283, 0.65012825, 1)
layout_mode = 2 layout_mode = 2
text = "menu_a11y_scale" text = "menu_a11y_scale"
[node name="VSeparator3" type="VSeparator" parent="Container2/GridContainer"] [node name="VSeparator3" type="VSeparator" parent="Container2/GridContainer" unique_id=1551132990]
custom_minimum_size = Vector2(30, 0) custom_minimum_size = Vector2(30, 0)
layout_mode = 2 layout_mode = 2
[node name="UIScaleSlider" type="HSlider" parent="Container2/GridContainer"] [node name="UIScaleSlider" type="HSlider" parent="Container2/GridContainer" unique_id=1826160884]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_vertical = 4 size_flags_vertical = 4
@ -151,33 +156,32 @@ max_value = 1.5
step = 0.0 step = 0.0
value = 1.0 value = 1.0
[node name="Button" type="Button" parent="Container2"] [node name="Button" type="Button" parent="Container2" unique_id=682416727]
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 4 size_flags_horizontal = 4
text = "menu_a11y_statement" text = "menu_a11y_statement"
script = SubResource("GDScript_72hl5") script = SubResource("GDScript_72hl5")
[node name="navbuttons" type="HSplitContainer" parent="."] [node name="navbuttons" type="HSplitContainer" parent="." unique_id=1233717805]
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 4 size_flags_horizontal = 4
size_flags_vertical = 10 size_flags_vertical = 10
dragger_visibility = 1 dragger_visibility = 1
[node name="BackButton" type="Button" parent="navbuttons"] [node name="BackButton" type="Button" parent="navbuttons" unique_id=2023649520]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
disabled = true disabled = true
text = "menu_back" text = "menu_back"
[node name="SaveButton" type="Button" parent="navbuttons"] [node name="SaveButton" type="Button" parent="navbuttons" unique_id=1663081349]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
text = "menu_save" text = "menu_save"
[node name="card" parent="." instance=ExtResource("2_24dtk")] [node name="card" parent="." unique_id=177353873 instance=ExtResource("2_24dtk")]
process_mode = 4 process_mode = 4
position = Vector2(837, 159) position = Vector2(837, 159)
collision_layer = 0 collision_layer = 0
collision_mask = 0
input_pickable = false input_pickable = false
text = "I never put in much effort for Homework" text = "I never put in much effort for Homework"

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=9 format=3 uid="uid://dfhkfocy8axb8"] [gd_scene format=3 uid="uid://dfhkfocy8axb8"]
[ext_resource type="Script" uid="uid://b2redm7dwpcne" path="res://ui/menu_main/audio_settings.gd" id="1_0lla1"] [ext_resource type="Script" uid="uid://b2redm7dwpcne" path="res://ui/menu_main/audio_settings.gd" id="1_0lla1"]
[ext_resource type="AudioStream" uid="uid://cl74a68tjwinh" path="res://base-environments/youth_room/audio/Youth Loop.wav" id="2_01rsa"] [ext_resource type="AudioStream" uid="uid://cl74a68tjwinh" path="res://base-environments/youth_room/audio/Youth Loop.wav" id="2_01rsa"]
@ -63,43 +63,43 @@ pressed = true
[sub_resource type="Shortcut" id="Shortcut_0peu0"] [sub_resource type="Shortcut" id="Shortcut_0peu0"]
events = [SubResource("InputEventAction_gy6yb")] events = [SubResource("InputEventAction_gy6yb")]
[node name="Audio and Language" type="VBoxContainer"] [node name="Audio and Language" type="VBoxContainer" unique_id=341739022]
script = ExtResource("1_0lla1") script = ExtResource("1_0lla1")
metadata/_tab_index = 1 metadata/_tab_index = 1
[node name="Label" type="Label" parent="."] [node name="Label" type="Label" parent="." unique_id=1039268819]
layout_mode = 2 layout_mode = 2
theme_type_variation = &"HeaderLarge" theme_type_variation = &"HeaderLarge"
text = "Audio and Language" text = "Audio and Language"
[node name="VBoxContainer" type="VBoxContainer" parent="."] [node name="VBoxContainer" type="VBoxContainer" parent="." unique_id=843555511]
layout_mode = 2 layout_mode = 2
[node name="MuteSoundtrack" type="CheckBox" parent="VBoxContainer"] [node name="MuteSoundtrack" type="CheckBox" parent="VBoxContainer" unique_id=1669925471]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
tooltip_text = "All Game Music is safe to stream." tooltip_text = "All Game Music is safe to stream."
text = "mute Soundtrack" text = "mute Soundtrack"
[node name="MuteSFX" type="CheckBox" parent="VBoxContainer"] [node name="MuteSFX" type="CheckBox" parent="VBoxContainer" unique_id=312275222]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
text = "mute Sound-Effects" text = "mute Sound-Effects"
[node name="AdjustmentLabel" type="Label" parent="VBoxContainer"] [node name="AdjustmentLabel" type="Label" parent="VBoxContainer" unique_id=1283139505]
layout_mode = 2 layout_mode = 2
theme_type_variation = &"HeaderMedium" theme_type_variation = &"HeaderMedium"
text = "Volume Adjustment" text = "Volume Adjustment"
[node name="GridContainer" type="GridContainer" parent="VBoxContainer"] [node name="GridContainer" type="GridContainer" parent="VBoxContainer" unique_id=1142552003]
layout_mode = 2 layout_mode = 2
columns = 2 columns = 2
[node name="Label" type="Label" parent="VBoxContainer/GridContainer"] [node name="Label" type="Label" parent="VBoxContainer/GridContainer" unique_id=941888483]
layout_mode = 2 layout_mode = 2
text = "Music" text = "Music"
[node name="MusicSlider" type="HSlider" parent="VBoxContainer/GridContainer"] [node name="MusicSlider" type="HSlider" parent="VBoxContainer/GridContainer" unique_id=1791871311]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 3 size_flags_horizontal = 3
@ -109,24 +109,22 @@ step = 0.05
value = 1.0 value = 1.0
ticks_on_borders = true ticks_on_borders = true
[node name="MusicPreview" type="AudioStreamPlayer" parent="VBoxContainer/GridContainer/MusicSlider"] [node name="MusicPreview" type="AudioStreamPlayer" parent="VBoxContainer/GridContainer/MusicSlider" unique_id=971063897]
unique_name_in_owner = true unique_name_in_owner = true
stream = ExtResource("2_01rsa") stream = ExtResource("2_01rsa")
volume_db = -80.0 volume_db = -80.0
bus = &"music" bus = &"music"
[node name="MusicMixer" type="AnimationPlayer" parent="VBoxContainer/GridContainer/MusicSlider"] [node name="MusicMixer" type="AnimationPlayer" parent="VBoxContainer/GridContainer/MusicSlider" unique_id=1357197397]
unique_name_in_owner = true unique_name_in_owner = true
root_node = NodePath("../../SumSlider") root_node = NodePath("../../SumSlider")
libraries = { libraries/ = SubResource("AnimationLibrary_sfx55")
&"": SubResource("AnimationLibrary_sfx55")
}
[node name="Label3" type="Label" parent="VBoxContainer/GridContainer"] [node name="Label3" type="Label" parent="VBoxContainer/GridContainer" unique_id=91693976]
layout_mode = 2 layout_mode = 2
text = "Sounds" text = "Sounds"
[node name="SoundSlider" type="HSlider" parent="VBoxContainer/GridContainer"] [node name="SoundSlider" type="HSlider" parent="VBoxContainer/GridContainer" unique_id=164766319]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 3 size_flags_horizontal = 3
@ -135,11 +133,11 @@ max_value = 1.5
step = 0.05 step = 0.05
value = 1.0 value = 1.0
[node name="Label4" type="Label" parent="VBoxContainer/GridContainer"] [node name="Label4" type="Label" parent="VBoxContainer/GridContainer" unique_id=1851625739]
layout_mode = 2 layout_mode = 2
text = "Speech" text = "Speech"
[node name="SpeechSlider" type="HSlider" parent="VBoxContainer/GridContainer"] [node name="SpeechSlider" type="HSlider" parent="VBoxContainer/GridContainer" unique_id=634964799]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 3 size_flags_horizontal = 3
@ -148,11 +146,11 @@ max_value = 1.5
step = 0.05 step = 0.05
value = 1.0 value = 1.0
[node name="Label5" type="Label" parent="VBoxContainer/GridContainer"] [node name="Label5" type="Label" parent="VBoxContainer/GridContainer" unique_id=1551017387]
layout_mode = 2 layout_mode = 2
text = "Sum" text = "Sum"
[node name="SumSlider" type="HSlider" parent="VBoxContainer/GridContainer"] [node name="SumSlider" type="HSlider" parent="VBoxContainer/GridContainer" unique_id=376143581]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 3 size_flags_horizontal = 3
@ -161,42 +159,42 @@ max_value = 1.5
step = 0.05 step = 0.05
value = 1.0 value = 1.0
[node name="ForceStereoCheck" type="CheckBox" parent="."] [node name="ForceStereoCheck" type="CheckBox" parent="." unique_id=220019275]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
tooltip_text = "This setting disables the surround center channel. May resolve you not hearing speech when your Operating Sustem has a misconfigured surround setup." tooltip_text = "This setting disables the surround center channel. May resolve you not hearing speech when your Operating Sustem has a misconfigured surround setup."
text = "Headphone-Mode (may fix missing speech)" text = "Headphone-Mode (may fix missing speech)"
[node name="I18nLabel" type="Label" parent="."] [node name="I18nLabel" type="Label" parent="." unique_id=1331196346]
layout_mode = 2 layout_mode = 2
theme_type_variation = &"HeaderMedium" theme_type_variation = &"HeaderMedium"
text = "Language Settings" text = "Language Settings"
[node name="GridContainer" type="GridContainer" parent="."] [node name="GridContainer" type="GridContainer" parent="." unique_id=288112326]
layout_mode = 2 layout_mode = 2
columns = 2 columns = 2
[node name="Label2" type="Label" parent="GridContainer"] [node name="Label2" type="Label" parent="GridContainer" unique_id=1704987098]
layout_mode = 2 layout_mode = 2
text = "Interface" text = "Interface"
[node name="InterfaceSelector" type="OptionButton" parent="GridContainer"] [node name="InterfaceSelector" type="OptionButton" parent="GridContainer" unique_id=56830931]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
selected = 0 selected = 0
item_count = 3 item_count = 3
popup/item_0/text = "use OS Language" popup/item_0/text = "menu_lang_use_OS"
popup/item_0/id = 0 popup/item_0/id = 0
popup/item_1/text = "English" popup/item_1/text = "English"
popup/item_1/id = 1 popup/item_1/id = 1
popup/item_2/text = "German" popup/item_2/text = "German"
popup/item_2/id = 2 popup/item_2/id = 2
[node name="Label3" type="Label" parent="GridContainer"] [node name="Label3" type="Label" parent="GridContainer" unique_id=500535399]
layout_mode = 2 layout_mode = 2
text = "Voice Lines" text = "Voice Lines"
[node name="SpeechSelector" type="OptionButton" parent="GridContainer"] [node name="SpeechSelector" type="OptionButton" parent="GridContainer" unique_id=1539855962]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
selected = 0 selected = 0
@ -208,21 +206,21 @@ popup/item_1/id = 1
popup/item_2/text = "German" popup/item_2/text = "German"
popup/item_2/id = 2 popup/item_2/id = 2
[node name="I18nLabel2" type="Label" parent="."] [node name="I18nLabel2" type="Label" parent="." unique_id=2072531334]
layout_mode = 2 layout_mode = 2
text = "Find Subtitle Settings in Acessability Settings." text = "Find Subtitle Settings in Acessability Settings."
[node name="confirm_buttons" type="HSplitContainer" parent="."] [node name="confirm_buttons" type="HSplitContainer" parent="." unique_id=1487666725]
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 4 size_flags_horizontal = 4
size_flags_vertical = 10 size_flags_vertical = 10
[node name="ResetButton" type="Button" parent="confirm_buttons"] [node name="ResetButton" type="Button" parent="confirm_buttons" unique_id=1535010885]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
text = "reset" text = "reset"
[node name="SaveButton" type="Button" parent="confirm_buttons"] [node name="SaveButton" type="Button" parent="confirm_buttons" unique_id=1047362891]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
shortcut = SubResource("Shortcut_0peu0") shortcut = SubResource("Shortcut_0peu0")

View File

@ -1,7 +1,8 @@
[gd_scene load_steps=22 format=3 uid="uid://chal0ioagspx0"] [gd_scene format=3 uid="uid://chal0ioagspx0"]
[ext_resource type="Script" uid="uid://wybb38po3pbo" path="res://ui/menu_main/content_settings.gd" id="1_wnuvg"] [ext_resource type="Script" uid="uid://wybb38po3pbo" path="res://ui/menu_main/content_settings.gd" id="1_wnuvg"]
[ext_resource type="Script" uid="uid://dbap0gqox0ty1" path="res://addons/markdownlabel/markdownlabel.gd" id="2_b7ja7"] [ext_resource type="Script" uid="uid://dbap0gqox0ty1" path="res://addons/markdownlabel/markdownlabel.gd" id="2_b7ja7"]
[ext_resource type="Theme" uid="uid://c30n4maixii5g" path="res://logic-scenes/themes/content_note_theme.tres" id="2_v1dfg"]
[ext_resource type="Script" uid="uid://dcx7crs23nf4" path="res://addons/markdownlabel/header_formats/h1_format.gd" id="3_00t14"] [ext_resource type="Script" uid="uid://dcx7crs23nf4" path="res://addons/markdownlabel/header_formats/h1_format.gd" id="3_00t14"]
[ext_resource type="Script" uid="uid://d0sin64i4v3op" path="res://addons/markdownlabel/header_formats/h2_format.gd" id="4_336xo"] [ext_resource type="Script" uid="uid://d0sin64i4v3op" path="res://addons/markdownlabel/header_formats/h2_format.gd" id="4_336xo"]
[ext_resource type="Script" uid="uid://dlok0dv1tq2bf" path="res://addons/markdownlabel/header_formats/h3_format.gd" id="5_ltaew"] [ext_resource type="Script" uid="uid://dlok0dv1tq2bf" path="res://addons/markdownlabel/header_formats/h3_format.gd" id="5_ltaew"]
@ -115,50 +116,51 @@ pressed = true
[sub_resource type="Shortcut" id="Shortcut_df462"] [sub_resource type="Shortcut" id="Shortcut_df462"]
events = [SubResource("InputEventAction_gy6yb")] events = [SubResource("InputEventAction_gy6yb")]
[node name="Content Notes" type="VBoxContainer"] [node name="Content Notes" type="VBoxContainer" unique_id=973098421]
custom_minimum_size = Vector2(800, 0) custom_minimum_size = Vector2(800, 0)
script = ExtResource("1_wnuvg") script = ExtResource("1_wnuvg")
metadata/_tab_index = 1 metadata/_tab_index = 1
[node name="Label" type="Label" parent="."] [node name="Label" type="Label" parent="." unique_id=1549570360]
layout_mode = 2 layout_mode = 2
theme_type_variation = &"HeaderLarge" theme_type_variation = &"HeaderLarge"
text = "title_content_notes" text = "title_content_notes"
[node name="Label2" type="Label" parent="."] [node name="HSplitContainer" type="HSplitContainer" parent="." unique_id=1619461295]
layout_mode = 2
text = "menu_cn_disclaimer"
[node name="HSplitContainer" type="HSplitContainer" parent="."]
layout_mode = 2 layout_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="HSplitContainer"] [node name="VBoxContainer" type="VBoxContainer" parent="HSplitContainer" unique_id=1835335582]
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
[node name="ContentNoteButton" type="CheckBox" parent="HSplitContainer/VBoxContainer"] [node name="Label2" type="Label" parent="HSplitContainer/VBoxContainer" unique_id=539682298]
layout_mode = 2
text = "menu_cn_disclaimer"
[node name="ContentNoteButton" type="CheckBox" parent="HSplitContainer/VBoxContainer" unique_id=520243906]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
tooltip_text = "menu_cn_enable_tooltip" tooltip_text = "menu_cn_enable_tooltip"
text = "menu_cn_enable" text = "menu_cn_enable"
[node name="AllowSkipButton" type="CheckBox" parent="HSplitContainer/VBoxContainer"] [node name="AllowSkipButton" type="CheckBox" parent="HSplitContainer/VBoxContainer" unique_id=637627445]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
tooltip_text = "menu_cn_allow_skips_tooltip" tooltip_text = "menu_cn_allow_skips_tooltip"
text = "menu_cn_allow_skips" text = "menu_cn_allow_skips"
[node name="ReturnThoughtsButton" type="CheckBox" parent="HSplitContainer/VBoxContainer"] [node name="ReturnThoughtsButton" type="CheckBox" parent="HSplitContainer/VBoxContainer" unique_id=357788228]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
tooltip_text = "menu_cn_allow_returns_tooltip" tooltip_text = "menu_cn_allow_returns_tooltip"
text = "menu_cn_allow_returns" text = "menu_cn_allow_returns"
[node name="RichTextLabel2" type="RichTextLabel" parent="HSplitContainer"] [node name="RichTextLabel2" type="RichTextLabel" parent="HSplitContainer" unique_id=857499896]
custom_minimum_size = Vector2(512, 0) custom_minimum_size = Vector2(512, 0)
layout_mode = 2 layout_mode = 2
theme = ExtResource("2_v1dfg")
bbcode_enabled = true bbcode_enabled = true
text = "menu[i]cn[/i]summary" text = "These options provide accessiblity and allow you to play as you like. Buttons related to these settings will appear pink. Hover on each option to learn more."
fit_content = true fit_content = true
script = ExtResource("2_b7ja7") script = ExtResource("2_b7ja7")
markdown_text = "menu_cn_summary" markdown_text = "menu_cn_summary"
@ -170,31 +172,29 @@ h5 = SubResource("Resource_y1yi1")
h6 = SubResource("Resource_5g2ol") h6 = SubResource("Resource_5g2ol")
metadata/_custom_type_script = "uid://dbap0gqox0ty1" metadata/_custom_type_script = "uid://dbap0gqox0ty1"
[node name="ExpandButton" type="Button" parent="."] [node name="ExpandButton" type="Button" parent="." unique_id=1027829682]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
text = "menu_cn_learn_more" text = "menu_cn_learn_more"
[node name="ScrollContainer" type="ScrollContainer" parent="."] [node name="ScrollContainer" type="ScrollContainer" parent="." unique_id=1668975511]
layout_mode = 2 layout_mode = 2
follow_focus = true follow_focus = true
scroll_vertical = 50 scroll_vertical = 50
horizontal_scroll_mode = 0 horizontal_scroll_mode = 0
[node name="Reveal" type="AnimationPlayer" parent="ScrollContainer"] [node name="Reveal" type="AnimationPlayer" parent="ScrollContainer" unique_id=1783569037]
unique_name_in_owner = true unique_name_in_owner = true
libraries = { libraries/ = SubResource("AnimationLibrary_x5rp4")
&"": SubResource("AnimationLibrary_x5rp4")
}
[node name="Content Notes" type="VBoxContainer" parent="ScrollContainer"] [node name="Content Notes" type="VBoxContainer" parent="ScrollContainer" unique_id=1723059374]
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 3 size_flags_horizontal = 3
[node name="VBoxContainer1" type="VBoxContainer" parent="ScrollContainer/Content Notes"] [node name="VBoxContainer1" type="VBoxContainer" parent="ScrollContainer/Content Notes" unique_id=127752457]
layout_mode = 2 layout_mode = 2
[node name="Button" type="Button" parent="ScrollContainer/Content Notes/VBoxContainer1"] [node name="Button" type="Button" parent="ScrollContainer/Content Notes/VBoxContainer1" unique_id=596287848]
layout_mode = 2 layout_mode = 2
focus_neighbor_bottom = NodePath("../../../../SaveButton") focus_neighbor_bottom = NodePath("../../../../SaveButton")
toggle_mode = true toggle_mode = true
@ -202,7 +202,7 @@ button_group = SubResource("ButtonGroup_v7ly6")
text = "menu_cn_warm_title" text = "menu_cn_warm_title"
script = SubResource("GDScript_rhtho") script = SubResource("GDScript_rhtho")
[node name="RichTextLabel" type="RichTextLabel" parent="ScrollContainer/Content Notes/VBoxContainer1"] [node name="RichTextLabel" type="RichTextLabel" parent="ScrollContainer/Content Notes/VBoxContainer1" unique_id=1398140896]
visible = false visible = false
custom_minimum_size = Vector2(512, 0) custom_minimum_size = Vector2(512, 0)
layout_mode = 2 layout_mode = 2
@ -210,34 +210,34 @@ bbcode_enabled = true
text = "menu_cn_warm" text = "menu_cn_warm"
fit_content = true fit_content = true
[node name="VBoxContainer2" type="VBoxContainer" parent="ScrollContainer/Content Notes"] [node name="VBoxContainer2" type="VBoxContainer" parent="ScrollContainer/Content Notes" unique_id=917721565]
layout_mode = 2 layout_mode = 2
[node name="Button" type="Button" parent="ScrollContainer/Content Notes/VBoxContainer2"] [node name="Button" type="Button" parent="ScrollContainer/Content Notes/VBoxContainer2" unique_id=1634489748]
layout_mode = 2 layout_mode = 2
toggle_mode = true toggle_mode = true
button_group = SubResource("ButtonGroup_v7ly6") button_group = SubResource("ButtonGroup_v7ly6")
text = "menu_cn_harsh_title" text = "menu_cn_harsh_title"
script = SubResource("GDScript_rhtho") script = SubResource("GDScript_rhtho")
[node name="RichTextLabel" type="RichTextLabel" parent="ScrollContainer/Content Notes/VBoxContainer2"] [node name="RichTextLabel" type="RichTextLabel" parent="ScrollContainer/Content Notes/VBoxContainer2" unique_id=656044582]
custom_minimum_size = Vector2(512, 0) custom_minimum_size = Vector2(512, 0)
layout_mode = 2 layout_mode = 2
bbcode_enabled = true bbcode_enabled = true
text = "menu_cn_harsh" text = "menu_cn_harsh"
fit_content = true fit_content = true
[node name="VBoxContainer3" type="VBoxContainer" parent="ScrollContainer/Content Notes"] [node name="VBoxContainer3" type="VBoxContainer" parent="ScrollContainer/Content Notes" unique_id=1429733158]
layout_mode = 2 layout_mode = 2
[node name="Button" type="Button" parent="ScrollContainer/Content Notes/VBoxContainer3"] [node name="Button" type="Button" parent="ScrollContainer/Content Notes/VBoxContainer3" unique_id=495224903]
layout_mode = 2 layout_mode = 2
toggle_mode = true toggle_mode = true
button_group = SubResource("ButtonGroup_v7ly6") button_group = SubResource("ButtonGroup_v7ly6")
text = "menu_cn_somber_title" text = "menu_cn_somber_title"
script = SubResource("GDScript_rhtho") script = SubResource("GDScript_rhtho")
[node name="RichTextLabel" type="RichTextLabel" parent="ScrollContainer/Content Notes/VBoxContainer3"] [node name="RichTextLabel" type="RichTextLabel" parent="ScrollContainer/Content Notes/VBoxContainer3" unique_id=2133568938]
visible = false visible = false
custom_minimum_size = Vector2(512, 0) custom_minimum_size = Vector2(512, 0)
layout_mode = 2 layout_mode = 2
@ -245,18 +245,18 @@ bbcode_enabled = true
text = "menu_cn_somber" text = "menu_cn_somber"
fit_content = true fit_content = true
[node name="VBoxContainer4" type="VBoxContainer" parent="ScrollContainer/Content Notes"] [node name="VBoxContainer4" type="VBoxContainer" parent="ScrollContainer/Content Notes" unique_id=1769051693]
visible = false visible = false
layout_mode = 2 layout_mode = 2
[node name="Button" type="Button" parent="ScrollContainer/Content Notes/VBoxContainer4"] [node name="Button" type="Button" parent="ScrollContainer/Content Notes/VBoxContainer4" unique_id=1520601041]
layout_mode = 2 layout_mode = 2
toggle_mode = true toggle_mode = true
button_group = SubResource("ButtonGroup_v7ly6") button_group = SubResource("ButtonGroup_v7ly6")
text = "menu_cn_details" text = "menu_cn_details"
script = SubResource("GDScript_rhtho") script = SubResource("GDScript_rhtho")
[node name="RichTextLabel2" type="RichTextLabel" parent="ScrollContainer/Content Notes/VBoxContainer4"] [node name="RichTextLabel2" type="RichTextLabel" parent="ScrollContainer/Content Notes/VBoxContainer4" unique_id=2102565746]
visible = false visible = false
custom_minimum_size = Vector2(512, 0) custom_minimum_size = Vector2(512, 0)
layout_mode = 2 layout_mode = 2
@ -264,7 +264,7 @@ bbcode_enabled = true
text = "menu_cn_details" text = "menu_cn_details"
fit_content = true fit_content = true
[node name="SaveButton" type="Button" parent="."] [node name="SaveButton" type="Button" parent="." unique_id=622072687]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
shortcut = SubResource("Shortcut_df462") shortcut = SubResource("Shortcut_df462")

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=4 format=3 uid="uid://dxwqkxq6qjk7i"] [gd_scene format=3 uid="uid://dxwqkxq6qjk7i"]
[ext_resource type="Script" uid="uid://bsnktd8qk5fl7" path="res://ui/menu_main/gameplay_settings.gd" id="1_aurh1"] [ext_resource type="Script" uid="uid://bsnktd8qk5fl7" path="res://ui/menu_main/gameplay_settings.gd" id="1_aurh1"]
@ -9,52 +9,52 @@ pressed = true
[sub_resource type="Shortcut" id="Shortcut_0peu0"] [sub_resource type="Shortcut" id="Shortcut_0peu0"]
events = [SubResource("InputEventAction_gy6yb")] events = [SubResource("InputEventAction_gy6yb")]
[node name="Gameplay Settings" type="VBoxContainer"] [node name="Gameplay Settings" type="VBoxContainer" unique_id=981179239]
script = ExtResource("1_aurh1") script = ExtResource("1_aurh1")
metadata/_tab_index = 1 metadata/_tab_index = 1
[node name="Label" type="Label" parent="."] [node name="Label" type="Label" parent="." unique_id=833518675]
layout_mode = 2 layout_mode = 2
theme_type_variation = &"HeaderLarge" theme_type_variation = &"HeaderLarge"
text = "setting_gameplay_title" text = "setting_gameplay_title"
[node name="Label2" type="Label" parent="."] [node name="Label2" type="Label" parent="." unique_id=345006756]
visible = false visible = false
layout_mode = 2 layout_mode = 2
theme_type_variation = &"HeaderMedium" theme_type_variation = &"HeaderMedium"
text = "Gameplay Settings" text = "Gameplay Settings"
[node name="VBoxContainer" type="VBoxContainer" parent="."] [node name="VBoxContainer" type="VBoxContainer" parent="." unique_id=556335546]
layout_mode = 2 layout_mode = 2
[node name="InvertYGamepad" type="CheckBox" parent="VBoxContainer"] [node name="InvertYGamepad" type="CheckBox" parent="VBoxContainer" unique_id=724133773]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
tooltip_text = "gameplay_invert_y_tooltop" tooltip_text = "gameplay_invert_y_tooltop"
text = "gameplay_invert_y_gamepad" text = "menu_gameplay_invert_gamepad"
[node name="InvertYMouse" type="CheckBox" parent="VBoxContainer"] [node name="InvertYMouse" type="CheckBox" parent="VBoxContainer" unique_id=1537134451]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
tooltip_text = "gameplay_invert_y_tooltop" tooltip_text = "gameplay_invert_y_tooltop"
text = "gameplay_invert_y_mouse" text = "menu_gameplay_invert_mouse"
[node name="SimplifyControls" type="CheckBox" parent="VBoxContainer"] [node name="SimplifyControls" type="CheckBox" parent="VBoxContainer" unique_id=1833387260]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
tooltip_text = "gameplay_simplify_tooltop" tooltip_text = "gameplay_simplify_tooltop"
disabled = true disabled = true
text = "gameplay_simplified" text = "menu_gameplay_simplified"
[node name="GridContainer" type="GridContainer" parent="VBoxContainer"] [node name="GridContainer" type="GridContainer" parent="VBoxContainer" unique_id=1442014797]
layout_mode = 2 layout_mode = 2
columns = 2 columns = 2
[node name="Label" type="Label" parent="VBoxContainer/GridContainer"] [node name="Label" type="Label" parent="VBoxContainer/GridContainer" unique_id=385946628]
layout_mode = 2 layout_mode = 2
text = "Input Sensitivity" text = "menu_gameplay_sensitivity"
[node name="InputSensitivitySlider" type="HSlider" parent="VBoxContainer/GridContainer"] [node name="InputSensitivitySlider" type="HSlider" parent="VBoxContainer/GridContainer" unique_id=1486035043]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 3 size_flags_horizontal = 3
@ -64,11 +64,11 @@ step = 0.05
value = 0.5 value = 0.5
ticks_on_borders = true ticks_on_borders = true
[node name="Label2" type="Label" parent="VBoxContainer/GridContainer"] [node name="Label2" type="Label" parent="VBoxContainer/GridContainer" unique_id=1127682229]
layout_mode = 2 layout_mode = 2
text = "gameplay_fov" text = "menu_gameplay_fov"
[node name="FOVSlider" type="HSlider" parent="VBoxContainer/GridContainer"] [node name="FOVSlider" type="HSlider" parent="VBoxContainer/GridContainer" unique_id=1933726301]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 3 size_flags_horizontal = 3
@ -79,11 +79,11 @@ step = 0.05
value = 75.0 value = 75.0
ticks_on_borders = true ticks_on_borders = true
[node name="Label3" type="Label" parent="VBoxContainer/GridContainer"] [node name="Label3" type="Label" parent="VBoxContainer/GridContainer" unique_id=639204298]
layout_mode = 2 layout_mode = 2
text = "Stream Overlay" text = "menu_stream_overlay"
[node name="StreamOverlayPicker" type="OptionButton" parent="VBoxContainer/GridContainer"] [node name="StreamOverlayPicker" type="OptionButton" parent="VBoxContainer/GridContainer" unique_id=1159622068]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
tooltip_text = "Displays content note and currently playing music at s corner of the screen." tooltip_text = "Displays content note and currently playing music at s corner of the screen."
@ -100,17 +100,17 @@ popup/item_3/id = 5
popup/item_4/text = "Bottom Right" popup/item_4/text = "Bottom Right"
popup/item_4/id = 6 popup/item_4/id = 6
[node name="Audio Sliders" type="HBoxContainer" parent="VBoxContainer"] [node name="Audio Sliders" type="HBoxContainer" parent="VBoxContainer" unique_id=1705003041]
layout_mode = 2 layout_mode = 2
[node name="Labels" type="VBoxContainer" parent="VBoxContainer/Audio Sliders"] [node name="Labels" type="VBoxContainer" parent="VBoxContainer/Audio Sliders" unique_id=580463425]
layout_mode = 2 layout_mode = 2
[node name="Sliders" type="VBoxContainer" parent="VBoxContainer/Audio Sliders"] [node name="Sliders" type="VBoxContainer" parent="VBoxContainer/Audio Sliders" unique_id=1182571764]
layout_mode = 2 layout_mode = 2
[node name="SaveButton" type="Button" parent="."] [node name="SaveButton" type="Button" parent="." unique_id=2065545672]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
shortcut = SubResource("Shortcut_0peu0") shortcut = SubResource("Shortcut_0peu0")
text = "save and exit" text = "menu_save_exit"

View File

@ -71,9 +71,8 @@ func _activate() -> void:
load_game_button.disabled = not save_game_list.has_more_saves() load_game_button.disabled = not save_game_list.has_more_saves()
for child: Control in $PanelContainer.get_children(): for child: Button in $PanelContainer.get_children():
child.focus_mode = Control.FOCUS_ALL child.disabled = false
child.modulate = Color.WHITE
if continue_button.visible: if continue_button.visible:
continue_button.grab_focus() continue_button.grab_focus()
@ -83,9 +82,8 @@ func _activate() -> void:
visible = true visible = true
func _deactivate() -> void: func _deactivate() -> void:
for child: Control in $PanelContainer.get_children(): for child: Button in $PanelContainer.get_children():
child.focus_mode = FOCUS_NONE child.disabled = true
child.modulate = Color.WEB_GRAY
func _appear() -> void: func _appear() -> void:

View File

@ -1,4 +1,4 @@
[gd_scene load_steps=12 format=3 uid="uid://b51wdql4mby47"] [gd_scene format=3 uid="uid://b51wdql4mby47"]
[ext_resource type="Theme" uid="uid://b056fn288p8ha" path="res://logic-scenes/themes/handwriting.theme" id="1_2dg4n"] [ext_resource type="Theme" uid="uid://b056fn288p8ha" path="res://logic-scenes/themes/handwriting.theme" id="1_2dg4n"]
[ext_resource type="Script" uid="uid://c3o65t2rwpbtn" path="res://ui/menu_main/main_menu.gd" id="2_rm576"] [ext_resource type="Script" uid="uid://c3o65t2rwpbtn" path="res://ui/menu_main/main_menu.gd" id="2_rm576"]
@ -13,7 +13,7 @@
[sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_njt06"] [sub_resource type="StyleBoxEmpty" id="StyleBoxEmpty_njt06"]
[node name="MainMenu" type="Panel"] [node name="MainMenu" type="Panel" unique_id=1778847711]
anchors_preset = 15 anchors_preset = 15
anchor_right = 1.0 anchor_right = 1.0
anchor_bottom = 1.0 anchor_bottom = 1.0
@ -23,7 +23,7 @@ theme = ExtResource("1_2dg4n")
theme_override_styles/panel = SubResource("StyleBoxEmpty_njt06") theme_override_styles/panel = SubResource("StyleBoxEmpty_njt06")
script = ExtResource("2_rm576") script = ExtResource("2_rm576")
[node name="Logo" type="TextureRect" parent="."] [node name="Logo" type="TextureRect" parent="." unique_id=1461151531]
layout_mode = 1 layout_mode = 1
anchors_preset = 1 anchors_preset = 1
anchor_left = 1.0 anchor_left = 1.0
@ -36,7 +36,7 @@ grow_horizontal = 0
scale = Vector2(0.4, 0.4) scale = Vector2(0.4, 0.4)
texture = ExtResource("3_cm266") texture = ExtResource("3_cm266")
[node name="LogoType" type="TextureRect" parent="."] [node name="LogoType" type="TextureRect" parent="." unique_id=1160533112]
layout_mode = 1 layout_mode = 1
anchors_preset = 1 anchors_preset = 1
anchor_left = 1.0 anchor_left = 1.0
@ -56,14 +56,14 @@ textures = Dictionary[String, Texture]({
"en": ExtResource("4_g8g3n") "en": ExtResource("4_g8g3n")
}) })
[node name="PanelContainer" type="VBoxContainer" parent="."] [node name="PanelContainer" type="VBoxContainer" parent="." unique_id=778634405]
layout_mode = 1 layout_mode = 1
offset_left = 67.0 offset_left = 67.0
offset_top = 70.0 offset_top = 70.0
offset_right = 319.0 offset_right = 319.0
offset_bottom = 270.0 offset_bottom = 270.0
[node name="ContinueGameButton" type="Button" parent="PanelContainer"] [node name="ContinueGameButton" type="Button" parent="PanelContainer" unique_id=3002302]
clip_contents = true clip_contents = true
layout_mode = 2 layout_mode = 2
size_flags_horizontal = 0 size_flags_horizontal = 0
@ -72,7 +72,7 @@ text = "menu_continue"
script = ExtResource("4_iotk1") script = ExtResource("4_iotk1")
metadata/_custom_type_script = "uid://cxton1pffwxk4" metadata/_custom_type_script = "uid://cxton1pffwxk4"
[node name="NewGameButton" type="Button" parent="PanelContainer"] [node name="NewGameButton" type="Button" parent="PanelContainer" unique_id=814470935]
clip_contents = true clip_contents = true
layout_mode = 2 layout_mode = 2
text = "menu_new_game" text = "menu_new_game"
@ -80,7 +80,7 @@ alignment = 0
script = ExtResource("4_iotk1") script = ExtResource("4_iotk1")
metadata/_custom_type_script = "uid://cxton1pffwxk4" metadata/_custom_type_script = "uid://cxton1pffwxk4"
[node name="LoadGameButton" type="Button" parent="PanelContainer"] [node name="LoadGameButton" type="Button" parent="PanelContainer" unique_id=1315125117]
clip_contents = true clip_contents = true
layout_mode = 2 layout_mode = 2
text = "menu_load" text = "menu_load"
@ -88,7 +88,7 @@ alignment = 0
script = ExtResource("4_iotk1") script = ExtResource("4_iotk1")
metadata/_custom_type_script = "uid://cxton1pffwxk4" metadata/_custom_type_script = "uid://cxton1pffwxk4"
[node name="SettingsButton" type="Button" parent="PanelContainer"] [node name="SettingsButton" type="Button" parent="PanelContainer" unique_id=1821753650]
clip_contents = true clip_contents = true
layout_mode = 2 layout_mode = 2
text = "menu_open_settings" text = "menu_open_settings"
@ -96,7 +96,7 @@ alignment = 0
script = ExtResource("4_iotk1") script = ExtResource("4_iotk1")
metadata/_custom_type_script = "uid://cxton1pffwxk4" metadata/_custom_type_script = "uid://cxton1pffwxk4"
[node name="CreditsButton" type="Button" parent="PanelContainer"] [node name="CreditsButton" type="Button" parent="PanelContainer" unique_id=1609784329]
clip_contents = true clip_contents = true
layout_mode = 2 layout_mode = 2
tooltip_text = "Plays the Game Credits" tooltip_text = "Plays the Game Credits"
@ -105,14 +105,14 @@ alignment = 0
script = ExtResource("4_iotk1") script = ExtResource("4_iotk1")
metadata/_custom_type_script = "uid://cxton1pffwxk4" metadata/_custom_type_script = "uid://cxton1pffwxk4"
[node name="BugButton" type="Button" parent="PanelContainer"] [node name="BugButton" type="Button" parent="PanelContainer" unique_id=844490697]
layout_mode = 2 layout_mode = 2
text = "BugButton" text = "BugButton"
alignment = 0 alignment = 0
script = ExtResource("4_j5v2v") script = ExtResource("4_j5v2v")
metadata/_custom_type_script = "uid://sa15wakvpj2e" metadata/_custom_type_script = "uid://sa15wakvpj2e"
[node name="QuitButton" type="Button" parent="PanelContainer"] [node name="QuitButton" type="Button" parent="PanelContainer" unique_id=1442382746]
clip_contents = true clip_contents = true
layout_mode = 2 layout_mode = 2
text = "quit" text = "quit"
@ -120,7 +120,7 @@ alignment = 0
script = ExtResource("4_iotk1") script = ExtResource("4_iotk1")
metadata/_custom_type_script = "uid://cxton1pffwxk4" metadata/_custom_type_script = "uid://cxton1pffwxk4"
[node name="SettingsContainer" type="CenterContainer" parent="."] [node name="SettingsContainer" type="CenterContainer" parent="." unique_id=737788457]
visible = false visible = false
layout_mode = 1 layout_mode = 1
anchors_preset = 15 anchors_preset = 15
@ -130,11 +130,11 @@ grow_horizontal = 2
grow_vertical = 2 grow_vertical = 2
mouse_filter = 0 mouse_filter = 0
[node name="SettingsPopup" parent="SettingsContainer" instance=ExtResource("9_vhfai")] [node name="SettingsPopup" parent="SettingsContainer" unique_id=431727728 instance=ExtResource("9_vhfai")]
unique_name_in_owner = true unique_name_in_owner = true
layout_mode = 2 layout_mode = 2
[node name="SaveGameList" parent="." instance=ExtResource("10_vhfai")] [node name="SaveGameList" parent="." unique_id=357507574 instance=ExtResource("10_vhfai")]
unique_name_in_owner = true unique_name_in_owner = true
visible = false visible = false
layout_mode = 1 layout_mode = 1

View File

@ -86,7 +86,7 @@ func _rebuild_buttons() -> void:
save_box.add_child(new_button) save_box.add_child(new_button)
save_buttons.append(new_button) save_buttons.append(new_button)
new_button.pressed.connect(_on_game_picked.bind(i)) new_button.pressed.connect(_on_game_picked.bind(i))
new_button.delete_requested.connect(_on_delete_requested.bind(i)) new_button.delete_requested.connect(delete_at_index.bind(i))
# Reset scroll position to top after rebuilding # Reset scroll position to top after rebuilding
scroll_container.scroll_vertical = 0 scroll_container.scroll_vertical = 0
@ -96,7 +96,7 @@ func _on_game_picked(id: int) -> void:
_picked.emit(saves[id]) _picked.emit(saves[id])
func _on_delete_requested(id: int) -> void: func delete_at_index(id: int) -> void:
var save_to_delete := saves[id] var save_to_delete := saves[id]
var save_path := save_to_delete.file_name var save_path := save_to_delete.file_name
var thumbnail_path := "%s/thumbnails/%s.png" % [save_path.get_base_dir(), save_to_delete.unique_save_name] var thumbnail_path := "%s/thumbnails/%s.png" % [save_path.get_base_dir(), save_to_delete.unique_save_name]
@ -173,3 +173,6 @@ func close() -> void:
_tween.tween_property(self, "modulate", Color.TRANSPARENT, 0.5) _tween.tween_property(self, "modulate", Color.TRANSPARENT, 0.5)
await _tween.finished await _tween.finished
hide() hide()
func reload_all_saves():
_load_games()