diff --git a/scenes/frame-ecm-params/scroll-ecm-params.gd b/scenes/frame-ecm-params/scroll-ecm-params.gd index 3fc2c3a0..1d9c5650 100644 --- a/scenes/frame-ecm-params/scroll-ecm-params.gd +++ b/scenes/frame-ecm-params/scroll-ecm-params.gd @@ -45,7 +45,6 @@ func init_table(): $table.set_meta('id', 0) signaller.connect('interfer_selected', Callable(self, 'on_interfer_selected').bind(toggle_btn)) signaller.connect('rto_threat_unsel', Callable(self, 'on_rto_threat_unsel')) - signaller.connect('emit_changed', Callable(self, 'on_emit_changed').bind(toggle_btn)) ## Called when the node enters the scene tree for the first time. @@ -114,8 +113,3 @@ func on_toggle_btn(toggle_btn): if not $table.has_meta('ecm'): return var ecm: interfer.Interfer = $table.get_meta('ecm') ecm.modulation = toggle_btn.button_pressed - - -func on_emit_changed(state, toggle_btn): - if not toggle_btn.disabled: - toggle_btn.button_pressed = state diff --git a/scenes/работа/работа.gd b/scenes/работа/работа.gd index 724eef04..31db96ca 100644 --- a/scenes/работа/работа.gd +++ b/scenes/работа/работа.gd @@ -84,9 +84,6 @@ func on_threat_selected(th, ecm_btns): on_rto_threat_sel(th.id, ecm_btns) func on_enter_tree() -> void: call_deferred('on_button_strobe_pressed') -func on_btn_activate(val: bool): signaller.emit_signal('emit_changed', val) - - ## Обработчик нажатия на кнопку вид. func on_button_view_toggled(toggled: bool): signaller.emit_signal('map_mode_changed', int(toggled)) @@ -144,7 +141,7 @@ func _ready(): signaller.connect('update_coordinates_map', Callable(self, 'on_update_coordinates_label')) signaller.connect('update_scale_map', Callable(self, 'on_update_scale_label')) on_btn_center_toggled(true) - on_btn_activate_toggled(false) + on_btn_activate_toggled(true) func on_user_panning(): @@ -308,7 +305,6 @@ func on_button_pressed(btn_this, btn_others) -> void: var interfer_name: String = btn_this.get_meta('rfi_name') for key in fs_selected.keys(): fs_arr.append(prd.get_fs_param(key)) - print(fs_arr) signaller.emit_signal('interfer_init', interfer_name, fs_arr, interfer.POW_DEFAULT) @@ -514,6 +510,7 @@ func on_btn_center_toggled(toggled_on: bool) -> void: func on_btn_activate_toggled(toggled_on: bool) -> void: $btn_activate.tooltip_text = 'Включает подавление (%s)' % ('включено' if toggled_on else 'отключено') + signaller.emit_signal('emit_changed', toggled_on) func on_update_coordinates_label(coordinates_label) -> void: diff --git a/scenes/работа/работа.tscn b/scenes/работа/работа.tscn index 4bb6358e..6d645182 100644 --- a/scenes/работа/работа.tscn +++ b/scenes/работа/работа.tscn @@ -257,6 +257,7 @@ offset_right = 1136.0 offset_bottom = 1127.0 scale = Vector2(0.5, 0.5) toggle_mode = true +button_pressed = true action_mode = 0 texture_normal = ExtResource("10_cnr1s") texture_pressed = ExtResource("11_xp4y6") diff --git a/scripts/interfer.gd b/scripts/interfer.gd index dabecd58..b3025d18 100644 --- a/scripts/interfer.gd +++ b/scripts/interfer.gd @@ -304,6 +304,11 @@ func interfer_create(u, interfer_name, ecms, param, kni, id, dict, source_interf func send_ecm(ecm, unit0) -> void: + if ecm.krp != INTERFER_OFF: + if not emit_enable: + return + elif not ecm.modulation: + return msg6_num += 1 var json_data = ecm.get_msg6_data(msg6_num) unit0.tx_stack.append(json_data) @@ -341,5 +346,3 @@ func push_id(id: int) -> void: func on_emit_changed(state, ecms) -> void: emit_enable = state - for ecm in ecms.values(): - ecm.modulation = state