From c33ba2c5af2346c5205a516bad50438622d225f5 Mon Sep 17 00:00:00 2001 From: RndName Date: Thu, 10 Nov 2022 20:31:37 +0100 Subject: [PATCH] Fix IADS by range calculation --- game/theater/iadsnetwork/iadsnetwork.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/game/theater/iadsnetwork/iadsnetwork.py b/game/theater/iadsnetwork/iadsnetwork.py index 38d9943f..5a0e2e9e 100644 --- a/game/theater/iadsnetwork/iadsnetwork.py +++ b/game/theater/iadsnetwork/iadsnetwork.py @@ -261,19 +261,20 @@ class IadsNetwork: def _add_connections_by_range(self, node: IadsNetworkNode) -> None: """Add all connections for the given primary node based range calculation""" - go = node.group.ground_object + primary_tgo = node.group.ground_object for nearby_go in self.ground_objects.values(): # Find nearby Power or Connection - if nearby_go == go: + if nearby_go == primary_tgo: continue + nearby_iads_role = IadsRole.for_category(nearby_go.category) if ( - IadsRole.for_category(go.category) + nearby_iads_role in [ IadsRole.POWER_SOURCE, IadsRole.CONNECTION_NODE, ] - and nearby_go.position.distance_to_point(go.position) - <= node.group.iads_role.connection_range.meters + and nearby_go.position.distance_to_point(primary_tgo.position) + <= nearby_iads_role.connection_range.meters ): node.add_connection_for_tgo(nearby_go)