From 660c5eda45dfca9ff5739d131224f2dbcc258289 Mon Sep 17 00:00:00 2001 From: Star Rauchenberger Date: Fri, 29 Aug 2025 13:45:29 -0400 Subject: [Client] Save connection settings to disk --- client/Archipelago/client.gd | 2 +- client/Archipelago/manager.gd | 37 ++++++++++++++++++++++++++++++++++++- 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/client/Archipelago/client.gd b/client/Archipelago/client.gd index d394b6c..4c34e91 100644 --- a/client/Archipelago/client.gd +++ b/client/Archipelago/client.gd @@ -45,7 +45,7 @@ signal message_received(message) func _init(): global._print("Instantiated APClient") - # Read AP settings from file, if there are any + # Read AP datapackages from file, if there are any if FileAccess.file_exists("user://ap_datapackages"): var file = FileAccess.open("user://ap_datapackages", FileAccess.READ) var data = file.get_var(true) diff --git a/client/Archipelago/manager.gd b/client/Archipelago/manager.gd index e1c32b9..6b34bdf 100644 --- a/client/Archipelago/manager.gd +++ b/client/Archipelago/manager.gd @@ -22,6 +22,30 @@ signal connect_status signal ap_connected +func _init(): + # Read AP settings from file, if there are any + if FileAccess.file_exists("user://ap_settings"): + var file = FileAccess.open("user://ap_settings", FileAccess.READ) + var data = file.get_var(true) + file.close() + + if typeof(data) != TYPE_ARRAY: + global._print("AP settings file is corrupted") + data = [] + + if data.size() > 0: + ap_server = data[0] + + if data.size() > 1: + ap_user = data[1] + + if data.size() > 2: + ap_pass = data[2] + + if data.size() > 3: + connection_history = data[3] + + func _ready(): client = SCRIPT_client.new() client.SCRIPT_uuid = SCRIPT_uuid @@ -35,7 +59,18 @@ func _ready(): func saveSettings(): - pass + # Save the AP settings to disk. + var path = "user://ap_settings" + var file = FileAccess.open(path, FileAccess.WRITE) + + var data = [ + ap_server, + ap_user, + ap_pass, + connection_history, + ] + file.store_var(data, true) + file.close() func saveLocaldata(): -- cgit 1.4.1