From 4d709ed934299a2e7ffc67e14552083597c296b7 Mon Sep 17 00:00:00 2001 From: sasha80 Date: Tue, 12 Nov 2024 15:52:11 +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=97=D0=B0=D0=B4=D0=B5=D1=80=D0=B6=D0=BA?= =?UTF-8?q?=D0=B0=20=D0=B4=D0=BB=D1=8F=20=D1=81=D0=BE=D0=B7=D0=B4=D0=B0?= =?UTF-8?q?=D0=BD=D0=B8=D1=8F=20=D1=81=D0=BE=D0=BA=D0=B5=D1=82=D0=BE=D0=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- scripts/network.gd | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/scripts/network.gd b/scripts/network.gd index 81048a7c..19de36b9 100644 --- a/scripts/network.gd +++ b/scripts/network.gd @@ -95,14 +95,22 @@ func create_serial(nm) -> Serial: return sp -func _ready() -> void: - log.info('Модуль работы с сетью готов') +func init_sockets(): poll_sockets.append(create_socket('уарэп-яу07-частный')) poll_sockets.append(create_socket('уарэп-яу07-общий')) poll_sockets.append(create_socket('уарэп-капсрпб')) poll_sockets.append(create_socket('уарэп-щ3')) sock_unicast = poll_sockets[0] sock_capsrpb = poll_sockets[2] + log.info('Модуль работы с сетью готов') + + +func _ready() -> void: + var tmr_wsa = Timer.new() + add_child(tmr_wsa) + tmr_wsa.one_shot = true + tmr_wsa.connect('timeout', init_sockets) + tmr_wsa.start(5.0) for unit_name in settings.UnitProfiles: var st = settings.UnitProfiles[unit_name] @@ -215,8 +223,11 @@ func _process(_delta: float) -> void: for addr in units_udp: var unit = units[addr] match unit.process(tick): - Error.OK: sock_unicast.send_to([addr[0], dst_ports[addr]], unit.tx_data.slice(0, unit.tx_len)) - Error.FAILED: emit_signal('socket_error', 'ошибка: %s %s:%d' % [unit, addr[0], addr[1]]) + Error.OK: + if sock_unicast: + sock_unicast.send_to([addr[0], dst_ports[addr]], unit.tx_data.slice(0, unit.tx_len)) + Error.FAILED: + emit_signal('socket_error', 'ошибка: %s %s:%d' % [unit, addr[0], addr[1]]) for key in units_serial: var unit = units_serial[key] var serial = serials[key]