From 373272a013c2de6486d8e1ffcdfc5e965ef29278 Mon Sep 17 00:00:00 2001 From: Rendo Date: Sun, 21 Dec 2025 01:35:23 +0500 Subject: [PATCH] Theme :+1: --- assets/themes/main_pallete.tres | 4 + assets/themes/main_theme.tres | 143 ++++++++++++++++++++++- gui/client_settings/client_settings.tscn | 67 ++++++----- gui/host_menu/host_menu.gd | 1 + gui/host_menu/host_menu.tscn | 5 +- gui/main_menu/main_menu.tscn | 28 ++--- 6 files changed, 190 insertions(+), 58 deletions(-) create mode 100644 assets/themes/main_pallete.tres diff --git a/assets/themes/main_pallete.tres b/assets/themes/main_pallete.tres new file mode 100644 index 0000000..e8b65a2 --- /dev/null +++ b/assets/themes/main_pallete.tres @@ -0,0 +1,4 @@ +[gd_resource type="ColorPalette" format=3 uid="uid://c7b4nvb7c7dp3"] + +[resource] +colors = PackedColorArray(0.047629792, 0.11940846, 0.180933, 1, 0.027450977, 0.37015864, 0.84705883, 1, 0.04705882, 0.33723024, 0.7647059, 1, 0.19999999, 0.6981582, 0.9137255, 1, 0.027450977, 0.5142647, 0.84705883, 1, 0.19999999, 0.8667959, 0.9137255, 1, 0.065, 0.15340322, 0.25, 1, 0.15686275, 0.26666668, 0.41568628, 1) diff --git a/assets/themes/main_theme.tres b/assets/themes/main_theme.tres index a5ad76d..722105f 100644 --- a/assets/themes/main_theme.tres +++ b/assets/themes/main_theme.tres @@ -1,6 +1,10 @@ -[gd_resource type="Theme" load_steps=9 format=3 uid="uid://dxnkvosdhpvwi"] +[gd_resource type="Theme" load_steps=19 format=3 uid="uid://dxnkvosdhpvwi"] [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_6ioqn"] +content_margin_left = 5.0 +content_margin_top = 5.0 +content_margin_right = 5.0 +content_margin_bottom = 5.0 bg_color = Color(0.007843137, 0.08691179, 0.2, 0.4862745) corner_radius_top_left = 5 corner_radius_top_right = 5 @@ -8,6 +12,10 @@ corner_radius_bottom_right = 5 corner_radius_bottom_left = 5 [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_lxams"] +content_margin_left = 5.0 +content_margin_top = 5.0 +content_margin_right = 5.0 +content_margin_bottom = 5.0 bg_color = Color(0.19999999, 0.6981582, 0.9137255, 1) corner_radius_top_left = 2 corner_radius_top_right = 2 @@ -15,6 +23,10 @@ corner_radius_bottom_right = 2 corner_radius_bottom_left = 2 [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_vhku8"] +content_margin_left = 5.0 +content_margin_top = 5.0 +content_margin_right = 5.0 +content_margin_bottom = 5.0 bg_color = Color(0.027450977, 0.5142647, 0.84705883, 1) corner_radius_top_left = 2 corner_radius_top_right = 2 @@ -22,14 +34,76 @@ corner_radius_bottom_right = 2 corner_radius_bottom_left = 2 [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_gvtt4"] +content_margin_left = 5.0 +content_margin_top = 5.0 +content_margin_right = 5.0 +content_margin_bottom = 5.0 bg_color = Color(0.04705882, 0.33723024, 0.7647059, 1) corner_radius_top_left = 2 corner_radius_top_right = 2 corner_radius_bottom_right = 2 corner_radius_bottom_left = 2 -[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_axncs"] -bg_color = Color(0.8462217, 0.5051798, 0.027982457, 1) +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_nb43s"] +bg_color = Color(0.027450977, 0.37015864, 0.84705883, 1) +corner_radius_top_left = 2 +corner_radius_top_right = 2 +corner_radius_bottom_right = 2 +corner_radius_bottom_left = 2 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_3f3va"] +bg_color = Color(0.065, 0.15340322, 0.25, 1) +border_width_left = 5 +border_width_top = 5 +border_width_right = 5 +border_width_bottom = 5 +border_color = Color(0.065, 0.15340322, 0.25, 1) +corner_radius_bottom_right = 2 +corner_radius_bottom_left = 2 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_n0pxi"] +bg_color = Color(0.106433235, 0.18161754, 0.32349485, 1) +border_width_left = 5 +border_width_top = 5 +border_width_right = 5 +border_width_bottom = 5 +border_color = Color(0.106433235, 0.18161754, 0.32349485, 1) +corner_radius_top_left = 2 +corner_radius_top_right = 2 +corner_radius_bottom_right = 2 +corner_radius_bottom_left = 2 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_y0ixg"] +bg_color = Color(0.15686275, 0.26666668, 0.41568628, 1) +border_width_left = 5 +border_width_top = 5 +border_width_right = 5 +border_width_bottom = 5 +border_color = Color(0.15686275, 0.26666668, 0.41568628, 1) +corner_radius_top_left = 2 +corner_radius_top_right = 2 +corner_radius_bottom_right = 2 +corner_radius_bottom_left = 2 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_luy55"] +bg_color = Color(0.15686275, 0.26666668, 0.41568628, 1) +border_width_left = 5 +border_width_top = 5 +border_width_right = 5 +border_width_bottom = 5 +border_color = Color(0.15686275, 0.26666668, 0.41568628, 1) +corner_radius_top_left = 2 +corner_radius_top_right = 2 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_etupa"] +bg_color = Color(0.027450977, 0.5142647, 0.84705883, 1) +border_width_left = 5 +border_width_top = 5 +border_width_right = 5 +border_width_bottom = 5 +border_color = Color(0.027450977, 0.5142647, 0.84705883, 1) +corner_radius_top_left = 2 +corner_radius_top_right = 2 [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_vxwtt"] bg_color = Color(0.009789981, 0.06134919, 0.10858328, 1) @@ -37,7 +111,7 @@ border_width_left = 4 border_width_top = 4 border_width_right = 4 border_width_bottom = 4 -border_color = Color(0.15686275, 0.26666668, 0.41568628, 1) +border_color = Color(0.065, 0.15340322, 0.25, 1) [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_4fp8c"] bg_color = Color(0.047629792, 0.11940846, 0.180933, 1) @@ -47,6 +121,51 @@ border_width_right = 4 border_width_bottom = 4 border_color = Color(0.15686275, 0.26666668, 0.41568628, 1) +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_jrpol"] +bg_color = Color(0.04705882, 0.33723024, 0.7647059, 1) +corner_radius_top_left = 2 +corner_radius_top_right = 2 +corner_radius_bottom_right = 2 +corner_radius_bottom_left = 2 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_81epl"] +bg_color = Color(0.047629792, 0.11940846, 0.180933, 1) +border_width_left = 4 +border_width_top = 4 +border_width_right = 4 +border_width_bottom = 4 +border_color = Color(0.15686275, 0.26666668, 0.41568628, 1) + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_wlpk7"] +content_margin_left = 5.0 +content_margin_top = 5.0 +content_margin_right = 5.0 +content_margin_bottom = 5.0 +bg_color = Color(0.15686275, 0.26666668, 0.41568628, 1) +border_color = Color(0.15686275, 0.26666668, 0.41568628, 1) + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_doivh"] +content_margin_left = 5.0 +content_margin_top = 5.0 +content_margin_right = 5.0 +content_margin_bottom = 5.0 +bg_color = Color(0.027450977, 0.5142647, 0.84705883, 1) +border_width_top = 5 +border_color = Color(0.04705882, 0.33723024, 0.7647059, 1) +corner_radius_top_left = 2 +corner_radius_top_right = 2 + +[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_078gm"] +content_margin_left = 5.0 +content_margin_top = 5.0 +content_margin_right = 5.0 +content_margin_bottom = 5.0 +bg_color = Color(0.027450977, 0.37015864, 0.84705883, 1) +border_width_bottom = 5 +border_color = Color(0.08210841, 0.3142104, 0.6561392, 1) +corner_radius_top_left = 2 +corner_radius_top_right = 2 + [sub_resource type="StyleBoxFlat" id="StyleBoxFlat_0f6i3"] bg_color = Color(0.15686275, 0.26666668, 0.41568628, 1) @@ -55,12 +174,24 @@ Button/styles/disabled = SubResource("StyleBoxFlat_6ioqn") Button/styles/hover = SubResource("StyleBoxFlat_lxams") Button/styles/normal = SubResource("StyleBoxFlat_vhku8") Button/styles/pressed = SubResource("StyleBoxFlat_gvtt4") +CheckButton/styles/hover_pressed = SubResource("StyleBoxFlat_nb43s") +FoldableContainer/styles/panel = SubResource("StyleBoxFlat_3f3va") +FoldableContainer/styles/title_collapsed_hover_panel = SubResource("StyleBoxFlat_n0pxi") +FoldableContainer/styles/title_collapsed_panel = SubResource("StyleBoxFlat_y0ixg") +FoldableContainer/styles/title_hover_panel = SubResource("StyleBoxFlat_luy55") +FoldableContainer/styles/title_panel = SubResource("StyleBoxFlat_etupa") MarginContainer/constants/margin_bottom = 4 MarginContainer/constants/margin_left = 4 MarginContainer/constants/margin_right = 4 MarginContainer/constants/margin_top = 14 -MenuButton/styles/normal = SubResource("StyleBoxFlat_axncs") Panel/styles/panel = SubResource("StyleBoxFlat_vxwtt") -PanelContainer/styles/panel = SubResource("StyleBoxFlat_vxwtt") +PanelContainer/styles/panel = SubResource("StyleBoxFlat_4fp8c") +PopupMenu/styles/hover = SubResource("StyleBoxFlat_jrpol") +PopupMenu/styles/panel = SubResource("StyleBoxFlat_81epl") +PopupPanel/styles/panel = SubResource("StyleBoxFlat_vxwtt") TabContainer/styles/panel = SubResource("StyleBoxFlat_4fp8c") +TabContainer/styles/tab_disabled = SubResource("StyleBoxFlat_wlpk7") +TabContainer/styles/tab_hovered = SubResource("StyleBoxFlat_doivh") +TabContainer/styles/tab_selected = SubResource("StyleBoxFlat_doivh") +TabContainer/styles/tab_unselected = SubResource("StyleBoxFlat_078gm") TabContainer/styles/tabbar_background = SubResource("StyleBoxFlat_0f6i3") diff --git a/gui/client_settings/client_settings.tscn b/gui/client_settings/client_settings.tscn index 536c962..04cdd62 100644 --- a/gui/client_settings/client_settings.tscn +++ b/gui/client_settings/client_settings.tscn @@ -12,41 +12,44 @@ anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 mouse_filter = 2 +script = ExtResource("1_xqyus") -[node name="PanelContainer" type="TabContainer" parent="CenterContainer"] +[node name="VBoxContainer" type="VBoxContainer" parent="CenterContainer"] +layout_mode = 2 + +[node name="PanelContainer" type="TabContainer" parent="CenterContainer/VBoxContainer"] custom_minimum_size = Vector2(512, 256) layout_mode = 2 tab_alignment = 1 current_tab = 3 -script = ExtResource("1_xqyus") -[node name="gameplay" type="VBoxContainer" parent="CenterContainer/PanelContainer"] +[node name="gameplay" type="VBoxContainer" parent="CenterContainer/VBoxContainer/PanelContainer"] visible = false layout_mode = 2 metadata/_tab_index = 0 -[node name="video" type="VBoxContainer" parent="CenterContainer/PanelContainer"] +[node name="video" type="VBoxContainer" parent="CenterContainer/VBoxContainer/PanelContainer"] visible = false layout_mode = 2 metadata/_tab_index = 1 -[node name="FullscreenButton" type="CheckButton" parent="CenterContainer/PanelContainer/video"] +[node name="FullscreenButton" type="CheckButton" parent="CenterContainer/VBoxContainer/PanelContainer/video"] layout_mode = 2 text = "fullscreen" -[node name="controls" type="VBoxContainer" parent="CenterContainer/PanelContainer"] +[node name="controls" type="VBoxContainer" parent="CenterContainer/VBoxContainer/PanelContainer"] visible = false layout_mode = 2 metadata/_tab_index = 2 -[node name="Sensitivity" type="HBoxContainer" parent="CenterContainer/PanelContainer/controls"] +[node name="Sensitivity" type="HBoxContainer" parent="CenterContainer/VBoxContainer/PanelContainer/controls"] layout_mode = 2 -[node name="Label" type="Label" parent="CenterContainer/PanelContainer/controls/Sensitivity"] +[node name="Label" type="Label" parent="CenterContainer/VBoxContainer/PanelContainer/controls/Sensitivity"] layout_mode = 2 text = "sensitivity" -[node name="SensitivitySlider" type="HSlider" parent="CenterContainer/PanelContainer/controls/Sensitivity"] +[node name="SensitivitySlider" type="HSlider" parent="CenterContainer/VBoxContainer/PanelContainer/controls/Sensitivity"] unique_name_in_owner = true custom_minimum_size = Vector2(256, 0) layout_mode = 2 @@ -56,7 +59,7 @@ max_value = 0.02 step = 0.001 value = 0.001 -[node name="SensitivityBox" type="SpinBox" parent="CenterContainer/PanelContainer/controls/Sensitivity"] +[node name="SensitivityBox" type="SpinBox" parent="CenterContainer/VBoxContainer/PanelContainer/controls/Sensitivity"] unique_name_in_owner = true layout_mode = 2 max_value = 0.1 @@ -65,30 +68,18 @@ value = 0.02 allow_greater = true allow_lesser = true -[node name="StopSession" type="Button" parent="CenterContainer/PanelContainer/controls"] -unique_name_in_owner = true -visible = false -layout_mode = 2 -text = "Окончить сессию" - -[node name="LeaveButton" type="Button" parent="CenterContainer/PanelContainer/controls"] -unique_name_in_owner = true -visible = false -layout_mode = 2 -text = "Покинуть сессию" - -[node name="audio" type="VBoxContainer" parent="CenterContainer/PanelContainer"] +[node name="audio" type="VBoxContainer" parent="CenterContainer/VBoxContainer/PanelContainer"] layout_mode = 2 metadata/_tab_index = 3 -[node name="GameplayMainAudio" type="HBoxContainer" parent="CenterContainer/PanelContainer/audio"] +[node name="GameplayMainAudio" type="HBoxContainer" parent="CenterContainer/VBoxContainer/PanelContainer/audio"] layout_mode = 2 -[node name="Label" type="Label" parent="CenterContainer/PanelContainer/audio/GameplayMainAudio"] +[node name="Label" type="Label" parent="CenterContainer/VBoxContainer/PanelContainer/audio/GameplayMainAudio"] layout_mode = 2 text = "audio_gameplay" -[node name="GameplayMainSlider" type="HSlider" parent="CenterContainer/PanelContainer/audio/GameplayMainAudio"] +[node name="GameplayMainSlider" type="HSlider" parent="CenterContainer/VBoxContainer/PanelContainer/audio/GameplayMainAudio"] unique_name_in_owner = true layout_mode = 2 size_flags_horizontal = 3 @@ -96,9 +87,21 @@ max_value = 1.0 step = 0.01 value = 1.0 -[connection signal="toggled" from="CenterContainer/PanelContainer/video/FullscreenButton" to="CenterContainer/PanelContainer" method="_on_fullscreen_button_toggled"] -[connection signal="value_changed" from="CenterContainer/PanelContainer/controls/Sensitivity/SensitivitySlider" to="CenterContainer/PanelContainer" method="_on_sensitivity_slider_value_changed"] -[connection signal="value_changed" from="CenterContainer/PanelContainer/controls/Sensitivity/SensitivityBox" to="CenterContainer/PanelContainer" method="_on_sensitivity_box_value_changed"] -[connection signal="pressed" from="CenterContainer/PanelContainer/controls/StopSession" to="CenterContainer/PanelContainer" method="_on_stop_session_pressed"] -[connection signal="pressed" from="CenterContainer/PanelContainer/controls/LeaveButton" to="CenterContainer/PanelContainer" method="_on_leave_button_pressed"] -[connection signal="value_changed" from="CenterContainer/PanelContainer/audio/GameplayMainAudio/GameplayMainSlider" to="CenterContainer/PanelContainer" method="_on_gameplay_main_slider_value_changed"] +[node name="StopSession" type="Button" parent="CenterContainer/VBoxContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +text = "Окончить сессию" + +[node name="LeaveButton" type="Button" parent="CenterContainer/VBoxContainer"] +unique_name_in_owner = true +visible = false +layout_mode = 2 +text = "Покинуть сессию" + +[connection signal="toggled" from="CenterContainer/VBoxContainer/PanelContainer/video/FullscreenButton" to="CenterContainer" method="_on_fullscreen_button_toggled"] +[connection signal="value_changed" from="CenterContainer/VBoxContainer/PanelContainer/controls/Sensitivity/SensitivitySlider" to="CenterContainer" method="_on_sensitivity_slider_value_changed"] +[connection signal="value_changed" from="CenterContainer/VBoxContainer/PanelContainer/controls/Sensitivity/SensitivityBox" to="CenterContainer" method="_on_sensitivity_box_value_changed"] +[connection signal="value_changed" from="CenterContainer/VBoxContainer/PanelContainer/audio/GameplayMainAudio/GameplayMainSlider" to="CenterContainer" method="_on_gameplay_main_slider_value_changed"] +[connection signal="pressed" from="CenterContainer/VBoxContainer/StopSession" to="CenterContainer" method="_on_stop_session_pressed"] +[connection signal="pressed" from="CenterContainer/VBoxContainer/LeaveButton" to="CenterContainer" method="_on_leave_button_pressed"] diff --git a/gui/host_menu/host_menu.gd b/gui/host_menu/host_menu.gd index a0cdfef..649bc02 100644 --- a/gui/host_menu/host_menu.gd +++ b/gui/host_menu/host_menu.gd @@ -17,6 +17,7 @@ func _ready() -> void: for level in Registry.maps.keys(): levels_by_index.append(level) popup.add_item(level) + %MapsButton.selected = levels_by_index.find(LobbySettings.selected_map) func _on_round_time_box_value_changed(value: float) -> void: LobbySettings.round_time = value diff --git a/gui/host_menu/host_menu.tscn b/gui/host_menu/host_menu.tscn index 822f6ea..d372266 100644 --- a/gui/host_menu/host_menu.tscn +++ b/gui/host_menu/host_menu.tscn @@ -12,10 +12,9 @@ unique_name_in_owner = true layout_mode = 2 text = "start" -[node name="MapsButton" type="MenuButton" parent="."] +[node name="MapsButton" type="OptionButton" parent="."] unique_name_in_owner = true layout_mode = 2 -text = "pick_level" [node name="Time" type="FoldableContainer" parent="."] layout_mode = 2 @@ -161,11 +160,9 @@ script = ExtResource("3_f5ibf") [node name="Teams" type="FoldableContainer" parent="."] layout_mode = 2 -folded = true title = "teams" [node name="VBoxContainer" type="VBoxContainer" parent="Teams"] -visible = false layout_mode = 2 [node name="AllowTeamSwitch" type="CheckButton" parent="Teams/VBoxContainer"] diff --git a/gui/main_menu/main_menu.tscn b/gui/main_menu/main_menu.tscn index 5d711c0..99f9e68 100644 --- a/gui/main_menu/main_menu.tscn +++ b/gui/main_menu/main_menu.tscn @@ -15,7 +15,6 @@ script = ExtResource("1_l6cm7") metadata/_edit_lock_ = true [node name="MainMenu" type="PanelContainer" parent="."] -visible = false custom_minimum_size = Vector2(256, 0) layout_mode = 2 @@ -49,11 +48,17 @@ unique_name_in_owner = true layout_mode = 2 placeholder_text = "ip" +[node name="LanguageButton" type="MenuButton" parent="MainMenu/VBoxContainer"] +layout_mode = 2 +text = "language" +script = ExtResource("4_6wy0j") + [node name="ExitButton" type="Button" parent="MainMenu/VBoxContainer"] layout_mode = 2 text = "exit" [node name="Lobby" type="PanelContainer" parent="."] +visible = false custom_minimum_size = Vector2(256, 256) layout_mode = 2 @@ -134,7 +139,7 @@ layout_mode = 2 [node name="Independent" type="Control" parent="."] layout_mode = 2 -[node name="Version" type="RichTextLabel" parent="Independent"] +[node name="VersionPanel" type="PanelContainer" parent="Independent"] top_level = true layout_mode = 1 anchors_preset = 3 @@ -142,10 +147,13 @@ anchor_left = 1.0 anchor_top = 1.0 anchor_right = 1.0 anchor_bottom = 1.0 -offset_left = -1.0 -offset_top = -23.0 +offset_left = -8.0 +offset_top = -8.0 grow_horizontal = 0 grow_vertical = 0 + +[node name="Version" type="RichTextLabel" parent="Independent/VersionPanel"] +layout_mode = 2 bbcode_enabled = true fit_content = true scroll_active = false @@ -154,18 +162,6 @@ horizontal_alignment = 2 vertical_alignment = 2 script = ExtResource("3_qy2xc") -[node name="LanguageButton" type="MenuButton" parent="Independent"] -top_level = true -layout_mode = 1 -anchors_preset = 2 -anchor_top = 1.0 -anchor_bottom = 1.0 -offset_top = -8.0 -offset_right = 8.0 -grow_vertical = 0 -text = "language" -script = ExtResource("4_6wy0j") - [connection signal="text_changed" from="MainMenu/VBoxContainer/NicknameEdit" to="." method="_on_nickname_edit_text_changed"] [connection signal="text_submitted" from="MainMenu/VBoxContainer/NicknameEdit" to="." method="_on_nickname_edit_text_submitted"] [connection signal="pressed" from="MainMenu/VBoxContainer/HBoxContainer/HostButton" to="." method="_on_host_button_pressed"]