added sounds and music to menu/splash screen

This commit is contained in:
2021-10-22 18:19:26 -05:00
parent bbb245f7b7
commit 4c65b9c4c0
12 changed files with 165 additions and 66 deletions

64
Main.gd
View File

@@ -6,56 +6,56 @@ export var world_path: String
func _ready() -> void:
var splash_screen: Node = play_splash_screen()
yield(splash_screen, 'complete')
splash_screen = null
var splash_screen: Node = play_splash_screen()
yield(splash_screen, 'complete')
splash_screen = null
var main_menu: Node = play_main_menu()
yield(main_menu, 'complete')
free_connected_node(main_menu, 'main_menu_option')
main_menu = null
return
var main_menu: Node = play_main_menu()
yield(main_menu, 'complete')
free_connected_node(main_menu, 'main_menu_option')
main_menu = null
return
func play_splash_screen() -> Node:
var splash_screen: Node = load(splash_screen_path).instance()
if splash_screen.connect('complete', self, 'free_connected_node', [splash_screen, 'free_connected_node']) != OK:
print('ERROR: Splash Screen "complete" signal already connected.')
var splash_screen: Node = load(splash_screen_path).instance()
if splash_screen.connect('complete', self, 'free_connected_node', [splash_screen, 'free_connected_node']) != OK:
print('ERROR: Splash Screen "complete" signal already connected.')
add_child(splash_screen)
return splash_screen
add_child(splash_screen)
return splash_screen
func play_main_menu() -> Node:
var main_menu: Node = load(main_menu_path).instance()
if main_menu.connect('complete', self, 'main_menu_option') != OK:
print('ERROR: Main Menu "quit" signal already connected.')
var main_menu: Node = load(main_menu_path).instance()
if main_menu.connect('complete', self, 'main_menu_option') != OK:
print('ERROR: Main Menu "quit" signal already connected.')
add_child(main_menu)
return main_menu
add_child(main_menu)
return main_menu
func main_menu_option(option: String) -> void:
if option == 'new game':
new_game()
elif option == 'quit':
quit_game()
return
if option == 'new game':
new_game()
elif option == 'quit':
quit_game()
return
func free_connected_node(node: Node, connected_function: String) -> void:
node.disconnect('complete', self, connected_function)
remove_child(node)
node.queue_free()
return
node.disconnect('complete', self, connected_function)
remove_child(node)
node.queue_free()
return
func new_game() -> void:
if get_tree().change_scene(world_path) != OK:
print('ERROR: Main failed to change scene to World.')
return
if get_tree().change_scene(world_path) != OK:
print('ERROR: Main failed to change scene to World.')
return
func quit_game() -> void:
get_tree().quit()
return
get_tree().quit()
return