Files
ScrapFrontier/title_screen.gd
T
2025-10-18 16:20:34 +03:00

59 lines
1.3 KiB
GDScript

extends Node
signal continue_game
signal new_game
signal quit_game
var _current_scene: Node
func _ready() -> void:
_show_main_menu()
func _show_main_menu() -> void:
if _current_scene != null:
_current_scene.queue_free()
var scene : Node = load("res://menu/main_menu.tscn").instantiate()
add_child(scene)
scene.continue_game.connect(_continue_game)
scene.new_game.connect(_new_game)
scene.show_options.connect(_show_options)
scene.quit_game.connect(_quit_game)
_current_scene = scene
func _continue_game() -> void:
continue_game.emit()
func _new_game() -> void:
new_game.emit()
func _quit_game() -> void:
quit_game.emit()
func _show_options() -> void:
if _current_scene != null:
_current_scene.queue_free()
var scene : Node = load("res://menu/options.tscn").instantiate()
add_child(scene)
scene.show_main_menu.connect(_show_main_menu)
scene.show_credits.connect(_show_credits)
_current_scene = scene
func _show_credits() -> void:
if _current_scene != null:
_current_scene.queue_free()
var scene : Node = load("res://menu/credits.tscn").instantiate()
add_child(scene)
scene.show_main_menu.connect(_show_main_menu)
_current_scene = scene