From 86e9fe8cb1beaa984aef26f138708b327229fdad Mon Sep 17 00:00:00 2001 From: sasha80 Date: Fri, 30 May 2025 13:57:34 +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=92=D1=8B=D0=BA=D0=BB=D1=8E=D1=87=D0=B8?= =?UTF-8?q?=D1=82=D1=8C=20=D1=81=D1=82=D1=80=D0=BE=D0=B1=20=D0=B2=20=D1=80?= =?UTF-8?q?=D0=B5=D0=B6=D0=B8=D0=BC=D0=B5=20=D0=BE=D0=B1=D0=B7=D0=BE=D1=80?= =?UTF-8?q?=D0=BD=D0=BE=D0=B9=20=D0=BA=D0=B0=D1=80=D1=82=D1=8B,=20=D1=82.?= =?UTF-8?q?=D0=BA.=20=D0=BE=D0=BD=20=D0=BD=D0=B0=D0=BA=D0=BB=D0=B0=D0=B4?= =?UTF-8?q?=D1=8B=D0=B2=D0=B0=D0=B5=D1=82=D1=81=D1=8F=20=D0=BD=D0=B0=20?= =?UTF-8?q?=D0=BA=D0=B0=D1=80=D1=82=D1=83.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scenes/diagram/diagram.gd | 10 +++++++++- scenes/работа/работа.gd | 12 ++++++++++-- 2 files changed, 19 insertions(+), 3 deletions(-) diff --git a/scenes/diagram/diagram.gd b/scenes/diagram/diagram.gd index 7be13d4a..008dcd31 100644 --- a/scenes/diagram/diagram.gd +++ b/scenes/diagram/diagram.gd @@ -29,9 +29,17 @@ func get_radius_outter() -> float: return material.get('shader_parameter/radius func get_radius_inner_0() -> float: return material.get('shader_parameter/radius_inner_0') func get_radius_inner_1() -> float: return material.get('shader_parameter/radius_inner_1') -func set_view_mode(val: int): material.set('shader_parameter/mode', val); func set_band_colors(val: Array): material.set('shader_parameter/ant_band_c', val) + +func set_view_mode(val: int): + if val == 1: + $строб.hide() + else: + $строб.show() + material.set('shader_parameter/mode', val) + + ## Закрашивание по умолчанию блоков ФС цветами из настроек. func set_def_colors(): var color0: Vector3 = ProjectSettings.get_setting('application/interfer/default_color0', Vector3(0.38, 0.47, 0.51)) diff --git a/scenes/работа/работа.gd b/scenes/работа/работа.gd index 3096fbf6..ea8f9365 100644 --- a/scenes/работа/работа.gd +++ b/scenes/работа/работа.gd @@ -29,7 +29,7 @@ var shift_pressed: bool ## Кнопка SHIFT нажата. var strob_band_begin: float ## Ширина строба в момент начала перетаскивания. var strob_dir_begin: float ## Направление антенны в момент начала перетаскивания. var strob_width_begin: float ## Ширина строба по углу в момент начала перетаскивания. - +var view_mode: MapViewMode ## Режим отображения карты signal drag_begin ## Вызывается в момент начала перетаскивания. signal drag_continue ## Вызывается во время продолжения перетаскивания. @@ -59,6 +59,13 @@ enum BtnSel { } +## Режим отображения карты +enum MapViewMode { + RTO = 0, ## Режим приоритет РТО (малая карта, широкие секторы) + RLS = 1 ## Режим приоритет РЛС (большая карта, узкие секторы) + } + + const VAL_TO_EVENT = { false: 'manual_control', ## Выбор целей и установка помех вручную. true: 'full_auto' } ## Выбор целей и установка помех автоматически. @@ -86,6 +93,7 @@ func on_button_view_toggled(toggled: bool): var s = map_sizes[int(toggled)] $tilemap.size = s.size $tilemap.position = s.position + view_mode = MapViewMode.RLS if toggled else MapViewMode.RTO ## Встроенный обратный вызов. @@ -379,7 +387,7 @@ func _on_drag_begin(event) -> void: ## Обработчик событий ввода. Вызывается godot. func _input(event) -> void: if not is_visible_in_tree(): return - if event is InputEventMouseMotion: + if (event is InputEventMouseMotion) and (view_mode == MapViewMode.RTO): if drag_fsm == DragFSM.DRAG: emit_signal('drag_continue', event) elif event is InputEventMouseButton: