gd: added menu template

This commit is contained in:
2025-06-10 18:46:20 +02:00
parent f9a6c42b14
commit c554e24b01
421 changed files with 12371 additions and 2 deletions

View File

@ -0,0 +1,34 @@
class_name GameWonMenu
extends OverlaidMenu
signal continue_pressed
signal main_menu_pressed
func _handle_cancel_input():
if $ConfirmExit.visible:
$ConfirmExit.hide()
elif $ConfirmMainMenu.visible:
$ConfirmMainMenu.hide()
else:
super._handle_cancel_input()
func _ready():
if OS.has_feature("web"):
%ExitButton.hide()
func _on_exit_button_pressed():
$ConfirmExit.popup_centered()
func _on_main_menu_button_pressed():
$ConfirmMainMenu.popup_centered()
func _on_confirm_main_menu_confirmed():
main_menu_pressed.emit()
close()
func _on_confirm_exit_confirmed():
get_tree().quit()
func _on_close_button_pressed():
continue_pressed.emit()
close()

View File

@ -0,0 +1 @@
uid://gi8tms6wsj1n

View File

@ -0,0 +1,61 @@
[gd_scene load_steps=3 format=3 uid="uid://4brssbq1ghsw"]
[ext_resource type="PackedScene" uid="uid://wny2d8dvp3ok" path="res://addons/maaacks_game_template/base/scenes/overlaid_menu/overlaid_menu.tscn" id="1_87sd7"]
[ext_resource type="Script" uid="uid://gi8tms6wsj1n" path="res://addons/maaacks_game_template/extras/scenes/overlaid_menus/game_won_menu.gd" id="2_hi7oy"]
[node name="GameWonMenu" instance=ExtResource("1_87sd7")]
process_mode = 3
script = ExtResource("2_hi7oy")
pauses_game = true
[node name="MenuPanelContainer" parent="." index="1"]
custom_minimum_size = Vector2(432, 240)
[node name="TitleMargin" parent="MenuPanelContainer/MarginContainer/BoxContainer" index="0"]
visible = false
[node name="DescriptionMargin" parent="MenuPanelContainer/MarginContainer/BoxContainer" index="1"]
visible = true
theme_override_constants/margin_top = 64
theme_override_constants/margin_bottom = 64
[node name="DescriptionLabel" parent="MenuPanelContainer/MarginContainer/BoxContainer/DescriptionMargin" index="0"]
text = "[center]You won![/center]"
scroll_active = false
[node name="MenuButtons" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin" index="0"]
custom_minimum_size = Vector2(400, 0)
vertical = false
[node name="ExitButton" type="Button" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="0"]
unique_name_in_owner = true
visible = false
layout_mode = 2
size_flags_horizontal = 3
text = "Exit"
[node name="MainMenuButton" type="Button" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="1"]
unique_name_in_owner = true
visible = false
layout_mode = 2
size_flags_horizontal = 3
text = "Main Menu"
[node name="CloseButton" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="2"]
size_flags_horizontal = 3
text = "Continue"
[node name="ConfirmMainMenu" type="ConfirmationDialog" parent="." index="2"]
auto_translate_mode = 1
initial_position = 2
dialog_text = "Go back to main menu?"
[node name="ConfirmExit" type="ConfirmationDialog" parent="." index="3"]
auto_translate_mode = 1
initial_position = 2
dialog_text = "Quit the game?"
[connection signal="pressed" from="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons/ExitButton" to="." method="_on_exit_button_pressed"]
[connection signal="pressed" from="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons/MainMenuButton" to="." method="_on_main_menu_button_pressed"]
[connection signal="confirmed" from="ConfirmMainMenu" to="." method="_on_confirm_main_menu_confirmed"]
[connection signal="confirmed" from="ConfirmExit" to="." method="_on_confirm_exit_confirmed"]

View File

@ -0,0 +1,34 @@
class_name LevelLostMenu
extends OverlaidMenu
signal restart_pressed
signal main_menu_pressed
func _handle_cancel_input():
if $ConfirmExit.visible:
$ConfirmExit.hide()
elif $ConfirmMainMenu.visible:
$ConfirmMainMenu.hide()
else:
super._handle_cancel_input()
func _ready():
if OS.has_feature("web"):
%ExitButton.hide()
func _on_exit_button_pressed():
$ConfirmExit.popup_centered()
func _on_main_menu_button_pressed():
$ConfirmMainMenu.popup_centered()
func _on_confirm_main_menu_confirmed():
main_menu_pressed.emit()
close()
func _on_confirm_exit_confirmed():
get_tree().quit()
func _on_close_button_pressed():
restart_pressed.emit()
close()

View File

@ -0,0 +1 @@
uid://ckh3w3xa6qjk0

View File

@ -0,0 +1,59 @@
[gd_scene load_steps=3 format=3 uid="uid://dkq3nhkmhu4je"]
[ext_resource type="PackedScene" uid="uid://wny2d8dvp3ok" path="res://addons/maaacks_game_template/base/scenes/overlaid_menu/overlaid_menu.tscn" id="1_ok347"]
[ext_resource type="Script" uid="uid://ckh3w3xa6qjk0" path="res://addons/maaacks_game_template/extras/scenes/overlaid_menus/level_lost_menu.gd" id="2_6r1n8"]
[node name="LevelLostMenu" instance=ExtResource("1_ok347")]
process_mode = 3
script = ExtResource("2_6r1n8")
pauses_game = true
[node name="MenuPanelContainer" parent="." index="1"]
custom_minimum_size = Vector2(432, 240)
[node name="TitleMargin" parent="MenuPanelContainer/MarginContainer/BoxContainer" index="0"]
visible = false
[node name="DescriptionMargin" parent="MenuPanelContainer/MarginContainer/BoxContainer" index="1"]
visible = true
theme_override_constants/margin_top = 64
theme_override_constants/margin_bottom = 64
[node name="DescriptionLabel" parent="MenuPanelContainer/MarginContainer/BoxContainer/DescriptionMargin" index="0"]
text = "[center]You lost...[/center]"
scroll_active = false
[node name="MenuButtons" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin" index="0"]
custom_minimum_size = Vector2(400, 0)
vertical = false
[node name="ExitButton" type="Button" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="0"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
text = "Exit"
[node name="MainMenuButton" type="Button" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="1"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
text = "Main Menu"
[node name="CloseButton" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="2"]
size_flags_horizontal = 3
text = "Restart"
[node name="ConfirmMainMenu" type="ConfirmationDialog" parent="." index="2"]
auto_translate_mode = 1
initial_position = 2
dialog_text = "Go back to main menu?"
[node name="ConfirmExit" type="ConfirmationDialog" parent="." index="3"]
auto_translate_mode = 1
initial_position = 2
dialog_text = "Quit the game?"
[connection signal="pressed" from="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons/ExitButton" to="." method="_on_exit_button_pressed"]
[connection signal="pressed" from="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons/MainMenuButton" to="." method="_on_main_menu_button_pressed"]
[connection signal="confirmed" from="ConfirmMainMenu" to="." method="_on_confirm_main_menu_confirmed"]
[connection signal="confirmed" from="ConfirmExit" to="." method="_on_confirm_exit_confirmed"]

View File

@ -0,0 +1,27 @@
class_name LevelWonMenu
extends OverlaidMenu
signal continue_pressed
signal restart_pressed
signal main_menu_pressed
func _input(event):
if event.is_action_pressed("ui_cancel"):
if $ConfirmMainMenu.visible:
$ConfirmMainMenu.hide()
get_viewport().set_input_as_handled()
func _on_main_menu_button_pressed():
$ConfirmMainMenu.popup_centered()
func _on_confirm_main_menu_confirmed():
main_menu_pressed.emit()
close()
func _on_restart_button_pressed():
restart_pressed.emit()
close()
func _on_close_button_pressed():
continue_pressed.emit()
close()

View File

@ -0,0 +1 @@
uid://bdic7jebf0y7a

View File

@ -0,0 +1,53 @@
[gd_scene load_steps=3 format=3 uid="uid://y3vtx0e0shv4"]
[ext_resource type="PackedScene" uid="uid://wny2d8dvp3ok" path="res://addons/maaacks_game_template/base/scenes/overlaid_menu/overlaid_menu.tscn" id="1_nknag"]
[ext_resource type="Script" uid="uid://bdic7jebf0y7a" path="res://addons/maaacks_game_template/extras/scenes/overlaid_menus/level_won_menu.gd" id="2_klq7f"]
[node name="LevelWonMenu" instance=ExtResource("1_nknag")]
process_mode = 3
script = ExtResource("2_klq7f")
pauses_game = true
[node name="MenuPanelContainer" parent="." index="1"]
custom_minimum_size = Vector2(432, 240)
[node name="TitleMargin" parent="MenuPanelContainer/MarginContainer/BoxContainer" index="0"]
visible = false
[node name="DescriptionMargin" parent="MenuPanelContainer/MarginContainer/BoxContainer" index="1"]
visible = true
theme_override_constants/margin_top = 64
theme_override_constants/margin_bottom = 64
[node name="DescriptionLabel" parent="MenuPanelContainer/MarginContainer/BoxContainer/DescriptionMargin" index="0"]
text = "[center]Level complete![/center]"
scroll_active = false
[node name="MenuButtons" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin" index="0"]
custom_minimum_size = Vector2(400, 0)
vertical = false
[node name="MainMenuButton" type="Button" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="0"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
text = "Main Menu"
[node name="RestartButton" type="Button" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="1"]
unique_name_in_owner = true
layout_mode = 2
size_flags_horizontal = 3
text = "Restart"
[node name="CloseButton" parent="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons" index="2"]
size_flags_horizontal = 3
text = "Continue"
[node name="ConfirmMainMenu" type="ConfirmationDialog" parent="." index="2"]
auto_translate_mode = 1
initial_position = 2
dialog_text = "Go back to main menu?"
[connection signal="pressed" from="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons/MainMenuButton" to="." method="_on_main_menu_button_pressed"]
[connection signal="pressed" from="MenuPanelContainer/MarginContainer/BoxContainer/MenuButtonsMargin/MenuButtons/RestartButton" to="." method="_on_restart_button_pressed"]
[connection signal="confirmed" from="ConfirmMainMenu" to="." method="_on_confirm_main_menu_confirmed"]