root.gd 1.1 KB

123456789101112131415161718192021222324252627282930313233
  1. extends Control
  2. var main_menu_beaten: bool = false
  3. func _ready():
  4. $UILayer/MainMenu.find_child("Start", true, false).connect("pressed", beat_main_menu)
  5. $UILayer/MainMenu.find_child("Settings", true, false).connect("pressed", $PauseMenuLayer/PauseMenu.show)
  6. begin(false)
  7. func begin(restart: bool):
  8. if restart:
  9. $MainLayer.remove_child($MainLayer.get_child(0))
  10. $MainLayer.add_child(preload("res://scene/core/main.tscn").instantiate())
  11. find_child("VictoryScreen", true, false).hide()
  12. find_child("DefeatScreen", true, false).hide()
  13. find_child("SpeedrunTimer", true, false).reset()
  14. main_menu_beaten = false
  15. get_tree().paused = true
  16. $"UILayer/UI".hide()
  17. $UILayer/MainMenu.show()
  18. func _input(input: InputEvent):
  19. if input.is_action_pressed("pause") and !get_tree().paused:
  20. get_tree().paused = true
  21. $PauseMenuLayer/PauseMenu.show()
  22. func beat_main_menu():
  23. get_tree().paused = false
  24. main_menu_beaten = true
  25. $"UILayer/UI".show()
  26. $UILayer/MainMenu.hide()
  27. $PauseMenuLayer/PauseMenu.set_process_input(true)