[gd_scene load_steps=2 format=3 uid="uid://bcq14356s3e2i"] [ext_resource type="Script" path="res://scripts/main_menu.gd" id="1_menu"] [node name="MainMenu" type="Control"] layout_mode = 3 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 script = ExtResource("1_menu") [node name="CenterContainer" type="CenterContainer" parent="."] layout_mode = 1 anchors_preset = 15 anchor_right = 1.0 anchor_bottom = 1.0 grow_horizontal = 2 grow_vertical = 2 [node name="VBoxContainer" type="VBoxContainer" parent="CenterContainer"] custom_minimum_size = Vector2(420, 0) layout_mode = 2 theme_override_constants/separation = 10 [node name="TitleLabel" type="Label" parent="CenterContainer/VBoxContainer"] layout_mode = 2 theme_override_font_sizes/font_size = 48 text = "Cosmic Clash" horizontal_alignment = 1 [node name="SubtitleLabel" type="Label" parent="CenterContainer/VBoxContainer"] modulate = Color(1, 1, 1, 0.55) layout_mode = 2 theme_override_font_sizes/font_size = 16 text = "Physics-based soccer in space" horizontal_alignment = 1 [node name="TitleSpacer" type="Control" parent="CenterContainer/VBoxContainer"] custom_minimum_size = Vector2(0, 14) layout_mode = 2 [node name="FreePlayButton" type="Button" parent="CenterContainer/VBoxContainer"] custom_minimum_size = Vector2(0, 56) layout_mode = 2 text = "Free Play" [node name="FreePlayHint" type="Label" parent="CenterContainer/VBoxContainer"] modulate = Color(1, 1, 1, 0.55) layout_mode = 2 theme_override_font_sizes/font_size = 13 text = "Solo practice — no timer, R resets the ball" horizontal_alignment = 1 [node name="ArenaRow" type="HBoxContainer" parent="CenterContainer/VBoxContainer"] layout_mode = 2 theme_override_constants/separation = 10 [node name="ArenaLabel" type="Label" parent="CenterContainer/VBoxContainer/ArenaRow"] layout_mode = 2 text = "Arena" [node name="ArenaDropdown" type="OptionButton" parent="CenterContainer/VBoxContainer/ArenaRow"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 40) layout_mode = 2 size_flags_horizontal = 3 [node name="MatchSeparator" type="HSeparator" parent="CenterContainer/VBoxContainer"] layout_mode = 2 [node name="MatchHeader" type="Label" parent="CenterContainer/VBoxContainer"] layout_mode = 2 theme_override_font_sizes/font_size = 22 text = "Match" [node name="MatchHint" type="Label" parent="CenterContainer/VBoxContainer"] modulate = Color(1, 1, 1, 0.55) layout_mode = 2 theme_override_font_sizes/font_size = 13 text = "A 2:30 match — you vs a trained bot" [node name="MatchRow" type="HBoxContainer" parent="CenterContainer/VBoxContainer"] layout_mode = 2 theme_override_constants/separation = 10 [node name="DifficultyLabel" type="Label" parent="CenterContainer/VBoxContainer/MatchRow"] layout_mode = 2 text = "Difficulty" [node name="DifficultyDropdown" type="OptionButton" parent="CenterContainer/VBoxContainer/MatchRow"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 40) layout_mode = 2 size_flags_horizontal = 3 [node name="MatchButton" type="Button" parent="CenterContainer/VBoxContainer"] custom_minimum_size = Vector2(0, 56) layout_mode = 2 text = "Play Match" [node name="SettingsSeparator" type="HSeparator" parent="CenterContainer/VBoxContainer"] layout_mode = 2 [node name="SettingsButton" type="Button" parent="CenterContainer/VBoxContainer"] custom_minimum_size = Vector2(0, 56) layout_mode = 2 text = "Settings" [node name="DevSection" type="VBoxContainer" parent="CenterContainer/VBoxContainer"] unique_name_in_owner = true layout_mode = 2 theme_override_constants/separation = 10 [node name="DevSeparator" type="HSeparator" parent="CenterContainer/VBoxContainer/DevSection"] layout_mode = 2 [node name="DevHeader" type="Label" parent="CenterContainer/VBoxContainer/DevSection"] layout_mode = 2 theme_override_font_sizes/font_size = 22 text = "Developer" [node name="DevHint" type="Label" parent="CenterContainer/VBoxContainer/DevSection"] modulate = Color(1, 1, 1, 0.55) layout_mode = 2 theme_override_font_sizes/font_size = 13 text = "Dev-only — hidden in release builds" [node name="DevOpponentRow" type="HBoxContainer" parent="CenterContainer/VBoxContainer/DevSection"] layout_mode = 2 theme_override_constants/separation = 10 [node name="DevOpponentLabel" type="Label" parent="CenterContainer/VBoxContainer/DevSection/DevOpponentRow"] layout_mode = 2 text = "Opponent override" [node name="DevBotDropdown" type="OptionButton" parent="CenterContainer/VBoxContainer/DevSection/DevOpponentRow"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 40) layout_mode = 2 size_flags_horizontal = 3 [node name="SpectateSeparator" type="HSeparator" parent="CenterContainer/VBoxContainer/DevSection"] layout_mode = 2 [node name="SpectateHeader" type="Label" parent="CenterContainer/VBoxContainer/DevSection"] layout_mode = 2 theme_override_font_sizes/font_size = 22 text = "Spectate" [node name="SpectateHint" type="Label" parent="CenterContainer/VBoxContainer/DevSection"] modulate = Color(1, 1, 1, 0.55) layout_mode = 2 theme_override_font_sizes/font_size = 13 text = "Watch two bots play each other" [node name="SpectateRow" type="HBoxContainer" parent="CenterContainer/VBoxContainer/DevSection"] layout_mode = 2 theme_override_constants/separation = 10 [node name="BotADropdown" type="OptionButton" parent="CenterContainer/VBoxContainer/DevSection/SpectateRow"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 40) layout_mode = 2 size_flags_horizontal = 3 [node name="VsLabel" type="Label" parent="CenterContainer/VBoxContainer/DevSection/SpectateRow"] layout_mode = 2 text = "vs" [node name="BotBDropdown" type="OptionButton" parent="CenterContainer/VBoxContainer/DevSection/SpectateRow"] unique_name_in_owner = true custom_minimum_size = Vector2(0, 40) layout_mode = 2 size_flags_horizontal = 3 [node name="SpectateButton" type="Button" parent="CenterContainer/VBoxContainer/DevSection"] custom_minimum_size = Vector2(0, 56) layout_mode = 2 text = "Watch Match" [connection signal="pressed" from="CenterContainer/VBoxContainer/FreePlayButton" to="." method="_on_free_play_pressed"] [connection signal="pressed" from="CenterContainer/VBoxContainer/MatchButton" to="." method="_on_match_pressed"] [connection signal="pressed" from="CenterContainer/VBoxContainer/SettingsButton" to="." method="_on_settings_pressed"] [connection signal="pressed" from="CenterContainer/VBoxContainer/DevSection/SpectateButton" to="." method="_on_spectate_pressed"]