diff --git a/.gitignore b/.gitignore index a6146d7f..3cb4a5c7 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,4 @@ modbus/serial/__pycache__ /scenes/pribor-prd-n/kasseta-fs-nd.tscn.bak *.patch +проверка.log diff --git a/check.sh b/check.sh index 2f104301..a140e2f5 100644 --- a/check.sh +++ b/check.sh @@ -50,10 +50,12 @@ while IFS= read -r file; do # Удаляем начальные и конечные пробелы gsub(/^[[:space:]]+|[[:space:]]+$/, "", line) - # Ищем непустые строки с двойными кавычками - if (line ~ /"[^"\\]*"/) { - print line_num ": " original_line - } + if (index(original_line, "\"\"\"") == 0) { + # Ищем непустые строки с двойными кавычками + if (line ~ /"[^"\\]*"/) { + print line_num ": " original_line + } + } } ' "$file") @@ -65,8 +67,10 @@ while IFS= read -r file; do done echo "" fi -done < <(find "$TARGET_DIR" -type f -name "*.gd") +done < <(find "$TARGET_DIR" -type f -name "*.gd" -not -path "./addons/*") if [ "$FOUND_MATCHES" -eq 0 ]; then - echo "Совпадений не найдено." + exit 0 fi + +exit 1 diff --git a/git-hook.sh b/git-hook.sh index e38d1643..80a19566 100644 --- a/git-hook.sh +++ b/git-hook.sh @@ -20,8 +20,8 @@ # - выполнение фиксации; # - выполнение слияния. - GDSCRIPT_FILE="scripts/commit.gd" +LOGFILE="проверка.log" HEAD="$(git rev-parse --abbrev-ref HEAD) $(git rev-parse --short HEAD) $(git log -1 --format=%cd)" if [ -n "$(git status --porcelain)" ]; then HEAD="Изменённый ${HEAD}" @@ -29,3 +29,6 @@ fi echo "extends Node" > ${GDSCRIPT_FILE} echo "# Файл сгенерирован автоматически! Не изменять вручную!" >> ${GDSCRIPT_FILE} echo "const VCS_HEAD = '${HEAD}'" >> ${GDSCRIPT_FILE} + +echo "${HEAD}" > ${LOGFILE} +./check.sh . >> ${LOGFILE} diff --git a/ip-tables-navigation.sh b/ip-tables-navigation.sh index 960abb7e..a3108538 100644 --- a/ip-tables-navigation.sh +++ b/ip-tables-navigation.sh @@ -8,7 +8,6 @@ ## ``` ## > iptables v1.8.2 (nf_tables) - INI_FILE="/opt/5p28/device.ini" ## Путь к INI-файлу 5п28 SECTION_NAME="navigat" ## Название секции INI-файла 5п28 IP_PORT_NAME="port" ## Имя поля INI-файла 5п28 в котором хранится номер порта назначения diff --git a/scenes/button-flat/nine-patch-button.gd b/scenes/button-flat/nine-patch-button.gd index 7936e624..6fe49ab2 100644 --- a/scenes/button-flat/nine-patch-button.gd +++ b/scenes/button-flat/nine-patch-button.gd @@ -97,7 +97,7 @@ func _enter_tree() -> void: func _on_settings_changed(): - apply_colors(ProjectSettings.get_setting("application/config/Цвет темы программы", false )) + apply_colors(ProjectSettings.get_setting('application/config/%s' % 'Цвет темы программы', false )) func _exit_tree() -> void: diff --git a/scenes/tilemap/tilemap.gd b/scenes/tilemap/tilemap.gd index c12ce22d..99f75444 100644 --- a/scenes/tilemap/tilemap.gd +++ b/scenes/tilemap/tilemap.gd @@ -2,6 +2,9 @@ extends CanvasGroup class_name MercatorTileMap +const VECTOR00: = Vector2(0, 0) +const VECTOR11: = Vector2(1, 1) + ## Отображение карт WEB Mercator #http://10.1.1.220/osm_tiles/0/0/0.png @@ -26,7 +29,6 @@ const TILE_REQUEST_NAME: = 'tile_request_%d' @export_color_no_alpha() var back_color: = Color.BLACK @export var show_ship_radius: bool = true @export var ship_radius_km: float = 8.0 -@onready var scale_label: String @onready var coordinates_label: String @onready var threat_mark: PackedScene = load("res://scenes/tilemap/threat.tscn") @onready var ship_mark: PackedScene = load("res://scenes/tilemap/ship-mark.tscn") @@ -89,7 +91,7 @@ var _marks: Dictionary = {} var _req_count: = 0 var image: = Image.new() var image_load_proc: Callable -var now: = 0 +var now: = 0.0 var visible_marks_count: = 0 var border1: ImageTexture var border2: ImageTexture @@ -227,9 +229,11 @@ func _input(e) -> void: if e.button_index == MOUSE_BUTTON_WHEEL_DOWN: if (not is_out_border1) and (not is_out_border2): increment_zoom(-zoom_step, lmp) + update_scale_label() queue_redraw() elif e.button_index == MOUSE_BUTTON_WHEEL_UP: increment_zoom( zoom_step, lmp) + update_scale_label() queue_redraw() if e.button_index == MOUSE_BUTTON_LEFT: _dragging = e.pressed @@ -256,22 +260,12 @@ func _input(e) -> void: signaller.emmit(signaller.map_user_panning) -func multiply_zoom(multiplier: float, pivot: Vector2) -> void: - var p1: = screen_to_world(_xyz, pivot) - _xyz.z = clampf(_xyz.z * multiplier, min_zoom_level, max_zoom_level) - var p2: = screen_to_world(_xyz, pivot) - _xyz.x -= p2.x - p1.x - _xyz.y -= p2.y - p1.y - update_scale_label() - - func increment_zoom(increment: float, pivot: Vector2) -> void: var p1: = screen_to_world(_xyz, pivot) _xyz.z = clampf(_xyz.z + increment, min_zoom_level, max_zoom_level) var p2: = screen_to_world(_xyz, pivot) _xyz.x -= p2.x - p1.x _xyz.y -= p2.y - p1.y - update_scale_label() func set_zoom(zoom: float, pivot: Vector2) -> void: @@ -280,14 +274,13 @@ func set_zoom(zoom: float, pivot: Vector2) -> void: var p2: = screen_to_world(_xyz, pivot) _xyz.x -= p2.x - p1.x _xyz.y -= p2.y - p1.y - update_scale_label() func _draw() -> void: # Рисование плиток var z: float = min(max_zoom_level, _xyz.z) - var t1: = screen_to_tile(Vector2(0, 0), z) - var t2: = screen_to_tile($canvas.size, z) + Vector2(1, 1) + var t1: = screen_to_tile(VECTOR00, z) + var t2: = screen_to_tile($canvas.size, z) + VECTOR11 is_out_border1 = true is_out_border2 = true for tx in range(t1.x, t2.x): @@ -373,12 +366,10 @@ func _process(delta) -> void: remove_child(req) req.queue_free() _req_count -= 1 - push_error('запрос \"%s\" не отправлен' % tile.url) #TODO: For Deugs + push_error('запрос \"%s\" не отправлен' % tile.url) if _queue.is_empty(): emit_signal('load_completed') - update_scale_label() - func process_online(result): # ERROR: res://scenes/tilemap/tilemap.gd:396 - Invalid access to property or key 'online' on a base object of type 'Nil'. @@ -642,7 +633,7 @@ class Tile: var x: int = 0 var y: int = 0 var z: int = 0 - var t: int = 0 + var t: float = 0.0 var url: String = '' var texture: Texture2D = null @@ -732,7 +723,7 @@ func update_coordinates_label(lon: float, lat: float) -> void: func update_scale_label() -> void: - scale_label = 'Масштаб: ' + str(round(_xyz.z)) + var scale_label: = 'Масштаб: %f' % round(_xyz.z) signaller.emit_signal('update_scale_map', scale_label) @@ -766,6 +757,7 @@ func zoom_in() -> void: return var center: Vector2 = $canvas.size / 2.0 increment_zoom(zoom_step, center) + update_scale_label() queue_redraw() @@ -774,6 +766,7 @@ func zoom_out() -> void: return var center: Vector2 = $canvas.size / 2.0 increment_zoom(-zoom_step, center) + update_scale_label() queue_redraw() diff --git a/scenes/контроль/control-prd.gd b/scenes/контроль/control-prd.gd index b4666287..ee217acd 100644 --- a/scenes/контроль/control-prd.gd +++ b/scenes/контроль/control-prd.gd @@ -30,18 +30,14 @@ func _setup_styles() -> void: func _setup_signals() -> void: connect('pressed', Callable(self, '_on_pressed')) - - if not signaller: - return var signals_to_connect := ['режим_работа', 'режим_журнал', 'режим_эмс', 'режим_настройки', 'режим_контроль'] for signal_name in signals_to_connect: - if signaller.has_signal(signal_name): - signaller.connect(signal_name, Callable(self, '_on_status_change')) + signaller.connect(signal_name, Callable(self, '_on_status_change')) func _on_pressed(): disabled = true - text = 'Идет выполнение контроля' + text = 'Контроль выполняется ...' flag_control_is_over = false _start_pulse() diff --git a/scenes/работа/работа.gd b/scenes/работа/работа.gd index 10d86c7d..5d199846 100644 --- a/scenes/работа/работа.gd +++ b/scenes/работа/работа.gd @@ -634,12 +634,12 @@ func set_btns_disabled(value: bool, btn): func on_interfer_prinuditelno(prenuditelno_sectors): for key in prenuditelno_sectors: - var sectors = [] + var sectors: = [] for sector in prenuditelno_sectors[key]: sectors.append(prd.get_fs_param(sector)) signaller.emit_signal('interfer_init', key, sectors, interfer.POW_DEFAULT) update_fs_colors() - var btns: Array = get_tree().get_nodes_in_group('группа-режим-помехи') + var btns: = get_tree().get_nodes_in_group('группа-режим-помехи') for btn in btns: btn.set_pressed(false) set_btns_disabled(true, btn) @@ -663,12 +663,12 @@ func on_btn_activate_toggled(toggled_on: bool) -> void: $btn_activate.self_modulate = Color.WHITE -func on_update_coordinates_label(coordinates_label) -> void: - $coordinates_map.text = str(coordinates_label) +func on_update_coordinates_label(coordinates_label: String) -> void: + $coordinates_map.text = coordinates_label -func on_update_scale_label(scale_label) -> void: - $scale_map.text = str(scale_label) +func on_update_scale_label(scale_label: String) -> void: + $scale_map.text = scale_label func on_btn_close(): @@ -698,7 +698,7 @@ func on_th_aoa_update(ths): func count_threats(ths): - $count_all_pad/count_all.text = '%02d' % ths.size() + $count_all_pad/count_all.text = '%02d' % ths.size() if ths.size() < 100 else 99 var c: int = 0 if gos_flag: c = ths.values().filter(func(th: threats.Threat): return th.proto != '').size() diff --git a/scripts/signaller.gd b/scripts/signaller.gd index 6491caed..46fbe23d 100644 --- a/scripts/signaller.gd +++ b/scripts/signaller.gd @@ -197,7 +197,7 @@ signal emit_changed(state) ## Вызывается при изменении детализации карты.[br] ## [param new_scale] - обновленное значение масштаба ([b]true[/b] -signal update_scale_map(new_scale) +signal update_scale_map(new_scale: String) ## Вызывается при изменении текущих координат.[br]