extends Node2D var sock = PacketPeerUDP.new() @onready var table_threads = get_node('tabs/threats/table_t') @onready var btn_add_threads = get_node('tabs/threats/btn_add') @onready var btn_del_threads = get_node('tabs/threats/btn_del') @onready var btn_save_threads = get_node('tabs/threats/btn_save') @onready var table_pomehi = get_node('tabs/pomehi/table_p') # Called when the node enters the scene tree for the first time. func _ready(): sock.bind(Consts.MAIN_ADDR[1], Consts.MAIN_ADDR[0]) sock.set_dest_address(Consts.DST_ADDR[0], Consts.DST_ADDR[1]) Threats.init_treats(table_threads, btn_add_threads, btn_del_threads, btn_save_threads) Interfers.init_pomehi(table_pomehi) fs.init_fs($tabs/pomehi, $tabs/pomehi/fs_rect) var timer = Timer.new() timer.connect('timeout', Callable(self, 'on_timeout').bind()) add_child(timer) #to process timer.start(1) #to start func on_timeout(): sock.put_packet(Threats.get_threats_data()) func on_receive(data): var json_conv: = JSON.new() var utf8_data = data.get_string_from_utf8() if Error.OK == json_conv.parse(utf8_data): var json_data = json_conv.get_data() if not (json_data is Dictionary): return if not json_data.has('ts'): return if not ((json_data['ts'] is int) or (json_data['ts'] is float)): return if json_data['ts'] == 6: if not json_data.has('ispp'): return if not ((json_data['ispp'] is int) or (json_data['ispp'] is float)): return if not json_data.has('ss'): return if not ((json_data['ss'] is int) or (json_data['ss'] is float)): return if not json_data.has('krp'): return if not json_data.has('powp'): return if not json_data.has('kni'): return if not json_data.has('params'): return if not json_data.has('get'): return Interfers.set_interfer(json_data) sock.put_packet(Interfers.get_msg7_data()) elif json_data['ts'] == 8: fs.on_receive_msg8(json_data) # Called every frame. 'delta' is the elapsed time since the previous frame. func _process(delta): while sock.get_available_packet_count() > 0: var data: = sock.get_packet() var addr: = sock.get_packet_ip() var port: = sock.get_packet_port() var addr_port: = [addr, port] on_receive(data)