class_name OptionsClass
extends Node

var username: String = "DefaultUsername"
var ip_address: String = "127.0.0.1"
var data_collection: bool = false

func _ready() -> void:
	load_options()

func save_options() -> void:
	var save_data: String = JSON.stringify({
		"username": username,
		"ip_address": ip_address,
		"data_collection": data_collection,
	})
	
	var file: FileAccess = FileAccess.open("user://options.json", FileAccess.WRITE)
	
	if file and !file.store_string(save_data):
		print("Failed to save settings.")

func load_options() -> void:
	var file: FileAccess = FileAccess.open("user://options.json", FileAccess.READ)
	
	if file:
		var save_data: Dictionary = JSON.parse_string(file.get_as_text())
		if save_data:
			if save_data.has("username"):
				username = save_data.username
			if save_data.has("ip_address"):
				ip_address = save_data.ip_address
			if save_data.has("data_collection"):
				data_collection = save_data.data_collection
