game_manager.gd 975 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. extends Node
  2. var last_level_path
  3. var last_level_score = 0
  4. var _save: SaveData
  5. func _ready() -> void:
  6. _create_or_load_save()
  7. #_save_score()
  8. func load_level(level_path):
  9. if not ResourceLoader.exists(level_path):
  10. return
  11. last_level_path = level_path
  12. _create_or_load_save()
  13. get_tree().change_scene_to_file(level_path)
  14. func _create_or_load_save() -> void:
  15. if SaveData.save_exists():
  16. _save = SaveData.load_score_data()
  17. print("current level: " + str(last_level_path) + "- current score: " + str(_save.get_highscore_entry(last_level_path)))
  18. else:
  19. _save = SaveData.new()
  20. #_save.level01_score = last_level_score
  21. print ("saving score...")
  22. _save.save_score_data()
  23. func save_score():
  24. #print (SaveData.load_score_data())
  25. #if last_level_score > _save.last_score:
  26. _save.last_score = last_level_score
  27. _save.level_name = last_level_path
  28. _save.save_score_data()
  29. func get_highscore_entry(_level_name):
  30. return _save.get_highscore_entry(_level_name)