extends BaseWidgetNode class_name SatelliteWidgetNode @export_enum("Total", "BeiDou", "Galileo", "GLONASS", "GNSS", "GPS", "NavIC", "QZSS") var sat_category: String = "Total" #[ga, gb, gi, gl, gp, gq, gn] var sat_idx_map = { "Galileo": 0, "BeiDou": 1, "NavIC": 2, "GLONASS": 3, "GPS": 4, "QZSS": 5, "GNSS": 6, } var label_node: Label var prev_num_connections: int = 0 var num_connections: int = 0 # Called when the node enters the scene tree for the first time. func _ready() -> void: super._ready() sensor_class = "PNT" label_node = get_node("Label") Signals.sat_count_updated.connect(_on_sat_count_updated) label_node.text = sat_category + ": 0" func _on_sat_count_updated(sensor_ip: String, sat_count_array: Array): if sat_category == "Total": var sat_sum = 0 for val in sat_count_array: sat_sum += val num_connections = sat_sum else: num_connections = sat_count_array[sat_idx_map[sat_category]] if num_connections == prev_num_connections: return label_node.text = sat_category + ": " + str(num_connections) prev_num_connections = num_connections