From 0670bf4b09ba8691d63eaefce074f6039567eefa Mon Sep 17 00:00:00 2001 From: lepshiy Date: Mon, 17 Nov 2025 09:30:51 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9F=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=B8=20=D0=BA=D0=BE=D0=BF=D0=B8=D1=80=D0=BE=D0=B2?= =?UTF-8?q?=D0=B0=D0=BD=D0=B8=D0=B5/=D1=81=D0=BE=D0=B7=D0=B4=D0=B0=D0=BD?= =?UTF-8?q?=D0=B8=D0=B5=20"config/setting=5Fprd=5Fcontrol.json"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/pribor-prd.gd | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/scripts/pribor-prd.gd b/scripts/pribor-prd.gd index 23c6476..201c0ef 100644 --- a/scripts/pribor-prd.gd +++ b/scripts/pribor-prd.gd @@ -2,6 +2,7 @@ class_name TestPRD extends Node # Константы const CONFIG_PATH = "user://config/setting_prd_control.json" +const DEFAULT_CONFIG_PATH = "res://config/setting_prd_control.json" const RAY_m5: String = "RAY_m5" const RAY_5: String = "RAY_5" @@ -109,12 +110,29 @@ func _get_ray_key(machine_state: int) -> String: return _ray_state_mapping.get(machine_state, "") +func _ensure_config_exists() -> bool: + DirAccess.make_dir_recursive_absolute("user://config") + if FileAccess.file_exists(CONFIG_PATH): + return true + if not FileAccess.file_exists(DEFAULT_CONFIG_PATH): + return false + var src := FileAccess.open(DEFAULT_CONFIG_PATH, FileAccess.READ) + var dst := FileAccess.open(CONFIG_PATH, FileAccess.WRITE) + if src == null or dst == null: + return false + dst.store_string(src.get_as_text()) + src.close() + dst.close() + return true + + func _load_configuration() -> void: + if not _ensure_config_exists(): + return var config_file = FileAccess.open(CONFIG_PATH, FileAccess.READ) if config_file: var json_text = config_file.get_as_text() config_file.close() - var json = JSON.new() var parse_result = json.parse(json_text) if parse_result == OK: