refactor: implement singleton pattern for key managers and improve resource access

This commit is contained in:
2026-03-19 02:00:56 +01:00
parent cfef49fbc7
commit 470b0c3a8c
14 changed files with 72 additions and 83 deletions

View File

@@ -4,13 +4,16 @@ namespace Mr.BrickAdventures.Autoloads;
public partial class ConfigFileHandler : Node
{
public static ConfigFileHandler Instance { get; private set; }
private ConfigFile _settingsConfig = new();
public const string SettingsPath = "user://settings.ini";
public ConfigFile SettingsConfig => _settingsConfig;
public override void _Ready()
{
Instance = this;
if (!FileAccess.FileExists(SettingsPath))
{
var err = _settingsConfig.Save(SettingsPath);
@@ -24,4 +27,9 @@ public partial class ConfigFileHandler : Node
GD.PushError($"Failed to load settings file at {SettingsPath}: {err}");
}
}
public override void _ExitTree()
{
if (Instance == this) Instance = null;
}
}