Рефактор.

This commit is contained in:
sasha80
2025-05-22 14:19:58 +03:00
parent 33a4dc334d
commit 9f3f4439b5
2 changed files with 19 additions and 8 deletions

View File

@@ -130,8 +130,9 @@ func parse_cmd_line_args(settings_data: Dictionary):
## Загружает настройки из файла
func load_settings(settings_data: Dictionary):
var file = FileAccess.open(settings.settings_file, FileAccess.READ)
var abs_path = ProjectSettings.globalize_path(settings.settings_file,)
var settings_file = settings.get_settings_file_path()
var file = FileAccess.open(settings_file, FileAccess.READ)
var abs_path = ProjectSettings.globalize_path(settings_file)
if file:
var read = file.get_as_text()
file.close()
@@ -240,8 +241,12 @@ func _on_btn_save_settings_pressed():
if len(children):
var child = children[0]
json_data[parameter] = child.is_pressed()
var file = FileAccess.open(settings.settings_file, FileAccess.WRITE)
var abs_path = ProjectSettings.globalize_path(settings.settings_file)
else:
var row = $scroll_set/table.get_row(i)
json_data[parameter] = row[1].text
var settings_file = settings.get_settings_file_path()
var file = FileAccess.open(settings_file, FileAccess.WRITE)
var abs_path = ProjectSettings.globalize_path(settings_file)
if not file:
log.error('Не удалось открыть файл для записи \"%s\"' % abs_path)
return

View File

@@ -1,9 +1,7 @@
@tool
class_name rep_settings extends Node
class_name uarep_settings extends Node
## Параметры.
var settings_file = ProjectSettings.get_setting('application/config/settings_path', 'user://settings.json') # Путь к файлу с настройками
## Настройки программы
var settings_program: Dictionary
@@ -57,6 +55,7 @@ const UM_MAX: = 55.0
func _ready() -> void:
if Engine.is_editor_hint():
return
var settings_file = settings.get_settings_file_path()
var abs_path = ProjectSettings.globalize_path(settings_file)
log.info('Путь к файлу настроек: \"%s\"' % abs_path)
var file = FileAccess.open(settings_file, FileAccess.READ)
@@ -103,6 +102,13 @@ func _ready() -> void:
log.info('Не удалось прочитать значение \"%s\" из файла настроек, будет использовано значение по умолчанию' % key)
## Возвращает полный путь к файлу с настройками
func get_settings_file_path():
return ProjectSettings.get_setting(
'application/config/settings_path',
'user://settings.json')
## Возвращает ключ устройства.
func get_unit_key(unit_name: String) -> Array:
var item = UnitProfiles[unit_name]