Рефактор

This commit is contained in:
sasha80
2025-04-30 09:12:53 +03:00
parent 008f7efc54
commit 4b5ff5023d
6 changed files with 41 additions and 43 deletions

View File

@@ -29,7 +29,7 @@ var id_array: Array ## Массив id воздействий.
var thrs: Dictionary ## Словарь воздействия для целей, ключ - id воздействия.
var fs: Dictionary ## Словарь воздействий для секторов, ключ - id воздействия.
var cu: Dictionary ## Словарь воздействий для 5П-28, ключ - id воздействия.
var auto_status: int = 0 ## Статус скролла автомата
var auto_enabled: bool = false ## Режим автомата
var emit_enable: bool = true ## Разрешить излучение
## Сеанс помехи.
@@ -88,6 +88,18 @@ signal interfer_update(ecm: Interfer) ## Вызывается пр
signal interfer_resized(ecms: Dictionary) ## Вызывается при изменении количества сеансов помех.
## Отправляет словарь помех в юнит, для запаковки и отправки в 5П28.
func on_get_interfers(unit, ecms): unit.pack_interfers(cu, ecms)
## Автмат выключен
func on_manual_control(): auto_enabled = false
## Автмат отключен
func on_full_auto(): auto_enabled = true
func _ready():
var ecms: Dictionary = {} ## Словарь помех.
for i in ID_INTERFERS_LEN: # Заполняет массив ID целей
@@ -125,14 +137,6 @@ func on_timer_check_state(unit, ecms, resend_timeout):
ecm.tick_tx = tick
func on_manual_control():
auto_status = 0
func on_full_auto():
auto_status = 3
func on_th_aoa_update(threats: Dictionary, ecms: Dictionary, unit):
for thr in threats.values():
var th_id = thr.id
@@ -145,10 +149,10 @@ func on_th_aoa_update(threats: Dictionary, ecms: Dictionary, unit):
signaller.emit_signal('fs_update_color', ecms)
prd.update_fs_state(ecms)
if auto_status == 0:
if not auto_enabled:
return
if auto_status == 3:
if auto_enabled:
for thr in threats.values():
thr.auto_selected = true
signaller.emit_signal('interfer_init', 'lchm1', [])
@@ -312,14 +316,11 @@ func pop_id() -> int:
return id
func push_id(id : int):
func push_id(id: int):
id_array.append(id)
id_array.sort()
## Отправляет словарь помех в юнит, для запаковки и отправки в 5П28.
func on_get_interfers(unit, ecms): unit.pack_interfers(cu, ecms)
func on_emit_changed(state, ecms):
emit_enable = state
for ecm in ecms.values():