From 8d644feb616ce6b0f8180bd69840da2aecd91cd1 Mon Sep 17 00:00:00 2001 From: MaD_CaT Date: Fri, 10 Jan 2025 14:08:20 +0300 Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D1=80=D0=B0=D0=B1=D0=BE=D1=82?= =?UTF-8?q?=D0=BA=D0=B0.=20=D0=A0=D0=B0=D1=81=D0=BF=D0=B0=D0=BA=D0=BE?= =?UTF-8?q?=D0=B2=D0=BA=D0=B0=20=D0=B4=D0=B0=D0=BD=D0=BD=D1=8B=D1=85=20?= =?UTF-8?q?=D0=B8=D0=B7=20=D1=84=D0=B0=D0=B9=D0=BB=D0=B0=20=D0=BD=D0=B0?= =?UTF-8?q?=D1=81=D1=82=D1=80=D0=BE=D0=B5=D0=BA=20=D0=B2=20=D1=84=D0=BE?= =?UTF-8?q?=D1=80=D0=BC=D0=B0=D1=82=D0=B5=20json.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- project.godot | 1 + scripts/settings.gd | 20 +++++++++++++++++++- 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a/project.godot b/project.godot index 1cd41bc..27a8a4e 100644 --- a/project.godot +++ b/project.godot @@ -39,6 +39,7 @@ config/unit_rr_right_bort="http://127.0.0.1:8080/reports/right_SelfTestReport.js config/unit_rr_request_period=5.0 config/kems_files_path="user://kems/" config/emsg_files_path="user://emsg/" +config/settings_path="user://settings.json" [autoload] diff --git a/scripts/settings.gd b/scripts/settings.gd index 95f1299..8932b3d 100644 --- a/scripts/settings.gd +++ b/scripts/settings.gd @@ -3,6 +3,8 @@ class_name rep_settings extends Node ## Параметры. +var settings_file = ProjectSettings.get_setting('application/config/settings_path', 'user://settings.json') # Путь к файлу с настройками + @export var UnitProfiles: = { \ # Название | Протокол | Адрес | Порт | Широковещательное | Привязывать к адресу | Комментарий 'уарэп-яу07-частный': ['yau07rx', '10.1.1.14', [50014], false, true, 'IP-адрес на котором принимают частные сообщения от ЯУ-07'], @@ -39,7 +41,23 @@ class_name rep_settings extends Node } -func _ready() -> void: log.info('Модуль настроек готов') +func _ready() -> void: + var file = FileAccess.open(settings_file, FileAccess.READ) + if file != null: + var read = file.get_as_text() + file.close() + var json_conv: = JSON.new() + if Error.OK == json_conv.parse(read): + var json_data = json_conv.get_data() + for key in UnitProfiles.keys(): + if json_data.has(key): + UnitProfiles[key][1] = json_data[key][0] + for i in len(json_data[key]) - 1: + if json_data[key][1][i+1].is_valid_int(): + UnitProfiles[key][2][i] = int(json_data[key][i+1]) + else: + UnitProfiles[key][2][i] = json_data[key][i+1] + log.info('Модуль настроек готов') ## Возвращает ключ устройства.