diff --git a/scripts/prd.gd b/scripts/prd.gd index ff09962..657e6cb 100644 --- a/scripts/prd.gd +++ b/scripts/prd.gd @@ -87,21 +87,35 @@ var fs_dict: Dictionary ## Словарь с модулями ФС var prd_dict: Dictionary ## Словарь с приборами ПРД class Fs: + const um_ports: Dictionary = { + 1 : 0x6, + 2 : 0xA, + 3 : 0x6, + 4 : 0xA, + 5 : 0x6, + 6 : 0xA } + var index ## Индекс блока усилителей var modulation: bool ## Состояние модуляции var prd_name: String ## Ипя прибора ПРД в котором стоит модуль + var um_port: int = 0 ## Порт для угла места + var um: int = 0 ## Код угла места signal update_modulation(index) func _init(i, p_name): prd_name = p_name index = i + if um_ports.has(index/4): + um_port = um_ports[index/4] func set_modulation(val): modulation = val class PRD: + const ug_addr: int = 0x100 ## адрес ячейки УГ + var prd_name: String ## Имя прибора var unit_yau07 ## Юнит эмс var fs_dic: Dictionary ## Массив блоков ФС diff --git a/scripts/settings.gd b/scripts/settings.gd index d464243..552a6cb 100644 --- a/scripts/settings.gd +++ b/scripts/settings.gd @@ -70,7 +70,12 @@ func _ready() -> void: temp_array.append([]) for i in len(json_data[key]) - 1: if tools.type_is_num(json_data[key][i+1]) == tools.type_is_num(UnitProfiles[key][2][i]): - temp_array[1].append(json_data[key][i+1]) + if typeof(UnitProfiles[key][2][i]) == TYPE_INT: + temp_array[1].append(int(json_data[key][i+1])) + elif typeof(UnitProfiles[key][2][i]) == TYPE_FLOAT: + temp_array[1].append(float(json_data[key][i+1])) + else: + set_from_file = false elif typeof(json_data[key][i+1]) == typeof(UnitProfiles[key][2][i]): temp_array[1].append(json_data[key][i+1]) else: