From 8be67b99de25859bf242f219099d363de03fdf27 Mon Sep 17 00:00:00 2001 From: MaD_CaT Date: Mon, 14 Apr 2025 10:50:00 +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=9E=D1=82=D0=BF=D1=80=D0=B0=D0=B2=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=BA=D0=BE=D0=BC=D0=B0=D0=BD=D0=B4=D1=8B=20=D1=81=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=BC=D0=B5=D1=85=D0=BE=D0=B9=20=D0=B2=20=D0=9A?= =?UTF-8?q?=D0=90=D0=9F=D0=A1=20=D0=A0=D0=9F=D0=91=20=D0=BF=D0=BE=D1=81?= =?UTF-8?q?=D0=BB=D0=B5=20=D1=81=D0=BE=D0=B7=D0=B4=D0=B0=D0=BD=D0=B8=D1=8F?= =?UTF-8?q?=20=D0=BF=D0=BE=D0=BC=D0=B5=D1=85=D0=B8.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/interfer.gd | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/scripts/interfer.gd b/scripts/interfer.gd index ec001b67..da437725 100644 --- a/scripts/interfer.gd +++ b/scripts/interfer.gd @@ -24,7 +24,6 @@ const ITERFER_MODE = { const SOURCE_INTERFER = ['th','fs','cu'] const ID_INTERFERS_LEN = 63 ## Размер пула номеров целей. const INTERFER_OFF = 'off' -const STATE_TSMT = 5 ## Значение svk для цели, когда ответ ещё не получен. var msg_num: int = 0 ## Счётчик сообщений. var id_array: Array ## Массив id воздействий. var thrs: Dictionary ## Словарь воздействия для целей, ключ - id воздействия. @@ -55,7 +54,7 @@ class Interfer: var data_to_json : Dictionary = {} data_to_json['ts'] = 6 data_to_json['ss'] = msg_num - data_to_json['ispp'] = ispp + data_to_json['ispp'] = ispp data_to_json['krp'] = krp if krp != INTERFER_OFF: data_to_json['kni'] = kni @@ -184,7 +183,7 @@ func on_data_capsrpb_received(unit: capsrpb.CapsRpb, ecms: Dictionary): ## Вызыватся, когда пользователь выбрал помеху и выбраны цели. -func on_interfer_create(interfer_name, sel_threats, fs_arr, _unit, ecms): +func on_interfer_create(interfer_name, sel_threats, fs_arr, u, ecms): for item in sel_threats: var param: Dictionary = {} var kni: float = item.aoa @@ -195,7 +194,7 @@ func on_interfer_create(interfer_name, sel_threats, fs_arr, _unit, ecms): param['width'] = settings.WIDTH_MIN elif (param['width'] > settings.WIDTH_MAX): param['width'] = settings.WIDTH_MAX - interfer_create(interfer_name, ecms, param, kni, id, thrs, SOURCE_INTERFER[0]) + interfer_create(u, interfer_name, ecms, param, kni, id, thrs, SOURCE_INTERFER[0]) for item in fs_arr: var param: Dictionary = {} @@ -207,7 +206,7 @@ func on_interfer_create(interfer_name, sel_threats, fs_arr, _unit, ecms): param['width'] = settings.WIDTH_MIN elif (param['width'] > settings.WIDTH_MAX): param['width'] = settings.WIDTH_MAX - interfer_create(interfer_name, ecms, param, kni, id, fs, SOURCE_INTERFER[1]) + interfer_create(u, interfer_name, ecms, param, kni, id, fs, SOURCE_INTERFER[1]) func on_interfer_rcv(interfer_params: Array, unit, ecms): @@ -236,11 +235,11 @@ func on_interfer_rcv(interfer_params: Array, unit, ecms): if interfer_name == '': err = true if not err: - interfer_create(interfer_name, ecms, param, aoa, id, cu, SOURCE_INTERFER[2]) + interfer_create(unit, interfer_name, ecms, param, aoa, id, cu, SOURCE_INTERFER[2]) unit.on_interfer_accept(err) -func interfer_create(interfer_name, ecms, param, kni, id, dict, source_interfer): +func interfer_create(u, interfer_name, ecms, param, kni, id, dict, source_interfer): var ispp: int = 0 if interfer_name == 'k1': param['dur'] = 1.0 # Необходимо добавить параметры управления @@ -265,7 +264,6 @@ func interfer_create(interfer_name, ecms, param, kni, id, dict, source_interfer) ecm = Interfer.new() ecm.ispp = ispp ecms[ispp] = ecm - ecm.svk = STATE_TSMT # Подготовка к передаче сообщения ecm.kni = kni ecm.krp = interfer_name ecm.params = param @@ -281,6 +279,7 @@ func interfer_create(interfer_name, ecms, param, kni, id, dict, source_interfer) signaller.emit_signal('interfer_off', ecm, ecms, thrs) thrs.erase(ispp) ecm.tick_tx = Time.get_ticks_msec() + send_ecm(ecm, u) func send_ecm(ecm, unit):