Added main menu
This commit is contained in:
@@ -0,0 +1,7 @@
|
||||
extends Node
|
||||
|
||||
signal show_main_menu
|
||||
|
||||
|
||||
func _on_main_menu_button_pressed() -> void:
|
||||
show_main_menu.emit()
|
||||
@@ -0,0 +1 @@
|
||||
uid://dclkpithyykju
|
||||
@@ -0,0 +1,42 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://c3q3g2647qc27"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dclkpithyykju" path="res://menu/credits.gd" id="1_wp78b"]
|
||||
|
||||
[node name="Credits" type="Node"]
|
||||
script = ExtResource("1_wp78b")
|
||||
|
||||
[node name="Control" type="Control" parent="."]
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_left = 100.0
|
||||
offset_top = 100.0
|
||||
offset_right = 140.0
|
||||
offset_bottom = 140.0
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="GridContainer" type="GridContainer" parent="Control/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
columns = 2
|
||||
|
||||
[node name="ProgrammingLabel" type="Label" parent="Control/VBoxContainer/GridContainer"]
|
||||
layout_mode = 2
|
||||
text = "Programming:"
|
||||
horizontal_alignment = 2
|
||||
|
||||
[node name="ProgrammersLabel" type="Label" parent="Control/VBoxContainer/GridContainer"]
|
||||
layout_mode = 2
|
||||
text = "Ruslan Ignatov"
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="Control/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
alignment = 2
|
||||
|
||||
[node name="MainMenuButton" type="Button" parent="Control/VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Main Menu"
|
||||
|
||||
[connection signal="pressed" from="Control/VBoxContainer/HBoxContainer/MainMenuButton" to="." method="_on_main_menu_button_pressed"]
|
||||
@@ -0,0 +1,22 @@
|
||||
extends Node
|
||||
|
||||
signal continue_game
|
||||
signal new_game
|
||||
signal quit_game
|
||||
signal show_options
|
||||
|
||||
|
||||
func _on_continue_button_pressed() -> void:
|
||||
continue_game.emit()
|
||||
|
||||
|
||||
func _on_start_button_pressed() -> void:
|
||||
new_game.emit()
|
||||
|
||||
|
||||
func _on_options_button_pressed() -> void:
|
||||
show_options.emit()
|
||||
|
||||
|
||||
func _on_quit_button_pressed() -> void:
|
||||
quit_game.emit()
|
||||
@@ -0,0 +1 @@
|
||||
uid://dixdfabe2vfsj
|
||||
@@ -0,0 +1,41 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://bxlccevt52y70"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://dixdfabe2vfsj" path="res://menu/main_menu.gd" id="1_chmv6"]
|
||||
|
||||
[node name="MainMenu" type="Node"]
|
||||
script = ExtResource("1_chmv6")
|
||||
|
||||
[node name="Control" type="Control" parent="."]
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_left = 100.0
|
||||
offset_top = 100.0
|
||||
offset_right = 179.0
|
||||
offset_bottom = 236.0
|
||||
|
||||
[node name="ContinueButton" type="Button" parent="Control/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
disabled = true
|
||||
text = "Continue"
|
||||
|
||||
[node name="StartButton" type="Button" parent="Control/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Start"
|
||||
|
||||
[node name="OptionsButton" type="Button" parent="Control/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Options"
|
||||
|
||||
[node name="QuitButton" type="Button" parent="Control/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Quit"
|
||||
|
||||
[connection signal="pressed" from="Control/VBoxContainer/ContinueButton" to="." method="_on_continue_button_pressed"]
|
||||
[connection signal="pressed" from="Control/VBoxContainer/StartButton" to="." method="_on_start_button_pressed"]
|
||||
[connection signal="pressed" from="Control/VBoxContainer/OptionsButton" to="." method="_on_options_button_pressed"]
|
||||
[connection signal="pressed" from="Control/VBoxContainer/QuitButton" to="." method="_on_quit_button_pressed"]
|
||||
@@ -0,0 +1,39 @@
|
||||
extends Node
|
||||
|
||||
signal show_credits
|
||||
signal show_main_menu
|
||||
|
||||
@onready var fullscreen_check := $Control/VBoxContainer/OptionsGridContainer/FullscreenCheckButton
|
||||
@onready var window_factor := $Control/VBoxContainer/OptionsGridContainer/WindowFactorOptionButton
|
||||
|
||||
|
||||
func _ready() -> void:
|
||||
_load_current_settings()
|
||||
|
||||
|
||||
func _load_current_settings() -> void:
|
||||
fullscreen_check.button_pressed = SettingsManager.fullscreen()
|
||||
window_factor.selected = SettingsManager.window_factor()
|
||||
_update_window_factor_disabled()
|
||||
|
||||
|
||||
func _update_window_factor_disabled() -> void:
|
||||
window_factor.disabled = SettingsManager.fullscreen()
|
||||
|
||||
|
||||
func _on_fullscreen_check_button_toggled(toggled: bool) -> void:
|
||||
SettingsManager.set_fullscreen(toggled)
|
||||
_update_window_factor_disabled()
|
||||
|
||||
|
||||
func _on_window_factor_option_button_item_selected(index: int) -> void:
|
||||
if !SettingsManager.fullscreen():
|
||||
SettingsManager.set_window_factor(index)
|
||||
|
||||
|
||||
func _on_credits_button_pressed() -> void:
|
||||
show_credits.emit()
|
||||
|
||||
|
||||
func _on_back_button_pressed() -> void:
|
||||
show_main_menu.emit()
|
||||
@@ -0,0 +1 @@
|
||||
uid://ceng1u112aqg0
|
||||
@@ -0,0 +1,69 @@
|
||||
[gd_scene load_steps=2 format=3 uid="uid://btr60idiit4y7"]
|
||||
|
||||
[ext_resource type="Script" uid="uid://ceng1u112aqg0" path="res://menu/options.gd" id="1_61pji"]
|
||||
|
||||
[node name="Options" type="Node"]
|
||||
script = ExtResource("1_61pji")
|
||||
|
||||
[node name="Control" type="Control" parent="."]
|
||||
layout_mode = 3
|
||||
anchors_preset = 0
|
||||
offset_left = 100.0
|
||||
offset_top = 100.0
|
||||
offset_right = 140.0
|
||||
offset_bottom = 140.0
|
||||
|
||||
[node name="VBoxContainer" type="VBoxContainer" parent="Control"]
|
||||
layout_mode = 0
|
||||
offset_right = 40.0
|
||||
offset_bottom = 40.0
|
||||
alignment = 1
|
||||
|
||||
[node name="OptionsGridContainer" type="GridContainer" parent="Control/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
columns = 2
|
||||
|
||||
[node name="FullscreenLabel" type="Label" parent="Control/VBoxContainer/OptionsGridContainer"]
|
||||
layout_mode = 2
|
||||
text = "Fullscreen"
|
||||
|
||||
[node name="FullscreenCheckButton" type="CheckButton" parent="Control/VBoxContainer/OptionsGridContainer"]
|
||||
layout_mode = 2
|
||||
|
||||
[node name="WindowFactorLabel" type="Label" parent="Control/VBoxContainer/OptionsGridContainer"]
|
||||
layout_mode = 2
|
||||
text = "Window Factor"
|
||||
|
||||
[node name="WindowFactorOptionButton" type="OptionButton" parent="Control/VBoxContainer/OptionsGridContainer"]
|
||||
layout_mode = 2
|
||||
selected = 0
|
||||
item_count = 6
|
||||
popup/item_0/text = "×1"
|
||||
popup/item_0/id = 0
|
||||
popup/item_1/text = "×2"
|
||||
popup/item_1/id = 1
|
||||
popup/item_2/text = "×3"
|
||||
popup/item_2/id = 2
|
||||
popup/item_3/text = "×4"
|
||||
popup/item_3/id = 3
|
||||
popup/item_4/text = "×5"
|
||||
popup/item_4/id = 4
|
||||
popup/item_5/text = "×6"
|
||||
popup/item_5/id = 5
|
||||
|
||||
[node name="HBoxContainer" type="HBoxContainer" parent="Control/VBoxContainer"]
|
||||
layout_mode = 2
|
||||
alignment = 2
|
||||
|
||||
[node name="CreditsButton" type="Button" parent="Control/VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Credits"
|
||||
|
||||
[node name="BackButton" type="Button" parent="Control/VBoxContainer/HBoxContainer"]
|
||||
layout_mode = 2
|
||||
text = "Back"
|
||||
|
||||
[connection signal="toggled" from="Control/VBoxContainer/OptionsGridContainer/FullscreenCheckButton" to="." method="_on_fullscreen_check_button_toggled"]
|
||||
[connection signal="item_selected" from="Control/VBoxContainer/OptionsGridContainer/WindowFactorOptionButton" to="." method="_on_window_factor_option_button_item_selected"]
|
||||
[connection signal="pressed" from="Control/VBoxContainer/HBoxContainer/CreditsButton" to="." method="_on_credits_button_pressed"]
|
||||
[connection signal="pressed" from="Control/VBoxContainer/HBoxContainer/BackButton" to="." method="_on_back_button_pressed"]
|
||||
Reference in New Issue
Block a user