Рефактор.

This commit is contained in:
sasha80
2025-05-22 16:19:22 +03:00
parent 4760a0e898
commit 5004e499da
2 changed files with 31 additions and 31 deletions

View File

@@ -89,18 +89,18 @@ signal interfer_resized(ecms: Dictionary) ## Вызывается пр
## Отправляет словарь помех в юнит, для запаковки и отправки в 5П28.
func on_get_interfers(unit, ecms): unit.pack_interfers(cu, ecms)
func on_get_interfers(unit, ecms) -> void: unit.pack_interfers(cu, ecms)
## Автмат выключен
func on_manual_control(): auto_enabled = false
func on_manual_control() -> void: auto_enabled = false
## Автмат отключен
func on_full_auto(): auto_enabled = true
func on_full_auto() -> void: auto_enabled = true
func _ready():
func _ready() -> void:
var ecms: Dictionary = {} ## Словарь помех.
for i in ID_INTERFERS_LEN: # Заполняет массив ID целей
id_array.append(i + 1)
@@ -129,7 +129,7 @@ func _ready():
## Проверяет состояние отправки пакета и если не доставлен, повторяет отправку.
func on_timer_check_state(unit, ecms, resend_timeout):
func on_timer_check_state(unit, ecms, resend_timeout) -> void:
var tick = Time.get_ticks_msec()
for ecm in ecms.values():
if (tick - ecm.tick_tx) >= resend_timeout:
@@ -137,7 +137,7 @@ func on_timer_check_state(unit, ecms, resend_timeout):
ecm.tick_tx = tick
func on_th_aoa_update(threats: Dictionary, ecms: Dictionary, unit):
func on_th_aoa_update(threats: Dictionary, ecms: Dictionary, unit) -> void:
for thr in threats.values():
var th_id = thr.id
for ecm_i in thrs.keys():
@@ -160,13 +160,13 @@ func on_th_aoa_update(threats: Dictionary, ecms: Dictionary, unit):
## Производит приём состояния помех. [param unit] -> [param ecms].
func on_data_capsrpb_received(unit: capsrpb.CapsRpb, ecms: Dictionary):
if not unit.json_dic.has('ts'): return
if not (unit.json_dic['ts'] is float): return
if unit.json_dic['ts'] != 5: return
if not unit.json_dic.has('msvk'): return
if not (unit.json_dic['msvk'] is Array): return
var msvk = unit.json_dic['msvk']
func on_data_capsrpb_received(unit0: capsrpb.CapsRpb, ecms: Dictionary) -> void:
if not unit0.json_dic.has('ts'): return
if not (unit0.json_dic['ts'] is float): return
if unit0.json_dic['ts'] != 5: return
if not unit0.json_dic.has('msvk'): return
if not (unit0.json_dic['msvk'] is Array): return
var msvk = unit0.json_dic['msvk']
var sz: = ecms.size()
for dic_msvk in msvk:
if not (dic_msvk is Dictionary): continue
@@ -180,13 +180,13 @@ func on_data_capsrpb_received(unit: capsrpb.CapsRpb, ecms: Dictionary):
var ecm = Interfer.new()
ecm.set_from_dic(dic_msvk)
ecm.krp = INTERFER_OFF
send_ecm(ecm, unit)
send_ecm(ecm, unit0)
if sz != ecms.size():
call_deferred('emit_signal', 'interfer_resized', ecms)
## Вызыватся, когда пользователь выбрал помеху и выбраны цели.
func on_interfer_create(interfer_name, sel_threats, fs_arr, u, ecms):
func on_interfer_create(interfer_name, sel_threats, fs_arr, u, ecms) -> void:
for item in sel_threats:
var param: Dictionary = {}
var kni: float = item.aoa
@@ -212,7 +212,7 @@ func on_interfer_create(interfer_name, sel_threats, fs_arr, u, ecms):
interfer_create(u, interfer_name, ecms, param, kni, id, fs, SOURCE_INTERFER[1])
func on_interfer_rcv(interfer_params: Array, unit, ecms):
func on_interfer_rcv(interfer_params: Array, unit0, ecms) -> void:
var err: bool = false
var mode = interfer_params[0]
var id = interfer_params[1]
@@ -238,11 +238,11 @@ func on_interfer_rcv(interfer_params: Array, unit, ecms):
if interfer_name == '':
err = true
if not err:
interfer_create(unit, interfer_name, ecms, param, aoa, id, cu, SOURCE_INTERFER[2])
unit.on_interfer_accept(err)
interfer_create(unit0, interfer_name, ecms, param, aoa, id, cu, SOURCE_INTERFER[2])
unit0.on_interfer_accept(err)
func interfer_create(u, interfer_name, ecms, param, kni, id, dict, source_interfer):
func interfer_create(u, interfer_name, ecms, param, kni, id, dict, source_interfer) -> void:
var ispp: int = 0
if interfer_name == 'k1':
param['dur'] = 1.0 # Необходимо добавить параметры управления
@@ -285,26 +285,26 @@ func interfer_create(u, interfer_name, ecms, param, kni, id, dict, source_interf
send_ecm(ecm, u)
func send_ecm(ecm, unit):
func send_ecm(ecm, unit0) -> void:
msg_num += 1
var json_data = ecm.get_msg6_data(msg_num)
unit.tx_stack.append(json_data)
unit0.tx_stack.append(json_data)
func on_interfer_off_all(unit, ecms):
for ecm in ecms.values():
ecm.krp = INTERFER_OFF
send_ecm(ecm, unit)
signaller.emit_signal('interfer_off',ecm, ecms, thrs)
func on_interfer_off_all(unit0, ecms: Dictionary) -> void:
for ecm in ecms.values():
ecm.krp = INTERFER_OFF
send_ecm(ecm, unit0)
signaller.emit_signal('interfer_off', ecm, ecms, thrs)
func on_threats_lost(th, ecms, unit):
func on_threats_lost(th, ecms, unit0) -> void:
for key in interfer.thrs:
if interfer.thrs[key] == th.id:
var ecm_id = key
var ecm = ecms[ecm_id]
ecm.krp = INTERFER_OFF
send_ecm(ecm, unit)
send_ecm(ecm, unit0)
signaller.emit_signal('interfer_off', ecm, ecms, thrs)
@@ -316,12 +316,12 @@ func pop_id() -> int:
return id
func push_id(id: int):
func push_id(id: int) -> void:
id_array.append(id)
id_array.sort()
func on_emit_changed(state, ecms):
func on_emit_changed(state, ecms) -> void:
emit_enable = state
for ecm in ecms.values():
ecm.modulation = state