1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
|
extends Node
# 默认配置
var default_config = {}
# 配置文件路径
var config_path: String = "user://config.cfg"
# 当前配置
var current_config: Dictionary
func _ready():
var file = FileAccess.open(config_path, FileAccess.READ)
if file:
var json_string = file.get_as_text()
file.close()
var json = JSON.new()
var parse_result = json.parse(json_string)
if parse_result == OK:
current_config = json.data
_apply_config()
Log.info("配置加载成功:"+config_path)
return true
else:
Log.error("配置文件解析失败,使用默认配置")
# 使用默认配置
current_config = default_config.duplicate(true)
save_config()
Log.info("使用默认配置")
return false
func _apply_config():
pass
# 保存配置
func save_config() -> bool:
var file = FileAccess.open(config_path, FileAccess.WRITE)
if file:
var json_string = JSON.stringify(current_config, " ") # 缩进美化
file.store_string(json_string)
file.close()
Log.info("配置保存成功")
return true
else:
Log.error("配置保存失败")
return false
|