def on_pick_enemy(self, event): self.status.setText("") this_point = event.artist # x_data and y_data of the point that was picked by the user x_data = this_point.get_xdata() y_data = this_point.get_ydata() for enemy in self.enemies: if enemy.x == x_data and enemy.y == y_data: self.picked_enemy.append(enemy) break self.engage_pushButton.setDown(False) for soldier in self.picked_soldier: message = Entities.EngageOrderMessage(soldier, enemy) packet = Packet(Sender.company_commander.value, self.company_commander.company_number, Receiver.soldier.value, MessageType.engage_order.value, message) send_handler(packet) time.sleep(0.1) self.picked_soldier.clear() self.picked_enemy.clear() self.move_pushButton.setEnabled(False) self.engage_pushButton.setEnabled(False) self.cancelButton.setEnabled(False) self.MplWidget.canvas.mpl_connect("pick_event", self.on_pick) self.MplWidget.canvas.mpl_disconnect(self.MplWidget.canvas.mpl_connect('pick_event', self.on_pick_enemy))