can now add and store leaderboards. started work on playlist loading

This commit is contained in:
derek
2025-02-28 11:58:10 -06:00
parent 096b505cfa
commit 3356f9e191
15 changed files with 143 additions and 45 deletions

View File

@@ -8,6 +8,8 @@ var last_scene
@onready var option_button: OptionButton = $MarginContainer/VBoxContainer/HBoxContainer/OptionButton
@onready var add_leaderboard: Button = $"MarginContainer/VBoxContainer/HBoxContainer/Add Leaderboard"
@onready var add_leaderboard_menu: Control = $"Add Leaderboard Menu"
@onready var new_leaderboard_name: TextEdit = $"Add Leaderboard Menu/MarginContainer/HBoxContainer/NewLeaderboardName"
@onready var confirm_leaderboard_add: Button = $"Add Leaderboard Menu/MarginContainer/HBoxContainer/Confirm"
func _enter_tree() -> void:
@@ -16,11 +18,9 @@ func _enter_tree() -> void:
# Called when the node enters the scene tree for the first time.
func _ready() -> void:
add_leaderboard_menu.visible = false
playlist_generator.load_playlist()
option_button.clear()
for i in GameGlobals.all_user_leaderboards[GameGlobals.user_id]:
option_button.add_item(i)
option_button.selected = GameGlobals.last_leaderboard_id
refresh_option_list()
continue_text_check()
@@ -46,6 +46,7 @@ func _on_continue_pressed() -> void:
print("LEVEL : ",GameGlobals.current_level)
func _on_exit_pressed() -> void:
SaveLoad.save_persistent_data()
get_tree().quit()
func continue_text_check():
@@ -57,3 +58,24 @@ func continue_text_check():
func _on_add_leaderboard_pressed() -> void:
add_leaderboard_menu.visible = true
func refresh_option_list():
option_button.clear()
for i in GameGlobals.all_user_leaderboards[int(GameGlobals.user_id)]:
option_button.add_item(i)
option_button.selected = int(GameGlobals.last_leaderboard_id)
func _on_confirm_pressed() -> void:
var valid_name = HelperFuncs.only_valid_chars(new_leaderboard_name.text)
GameGlobals.all_user_leaderboards[GameGlobals.user_id].append(valid_name)
GameGlobals.last_leaderboard_id = GameGlobals.all_user_leaderboards[GameGlobals.user_id].size() - 1
refresh_option_list()
continue_text_check()
add_leaderboard_menu.visible = false
func _on_option_button_item_selected(index: int) -> void:
GameGlobals.last_leaderboard_id = option_button.selected
continue_text_check()