diff --git a/src/lib/sim/CombatSystem.cpp b/src/lib/sim/CombatSystem.cpp index b1cb40d..008be73 100644 --- a/src/lib/sim/CombatSystem.cpp +++ b/src/lib/sim/CombatSystem.cpp @@ -121,8 +121,7 @@ void CombatSystem::resolveStationWeapon(Building& station, Tick currentTick, // Acquire a new target if needed. if (!w.currentTarget) { - w.currentTarget = acquireStationTarget(station, stationIsEnemy, - ships, buildings); + w.currentTarget = acquireStationTarget(station, stationIsEnemy, ships); } if (!w.currentTarget) @@ -174,8 +173,7 @@ void CombatSystem::resolveStationWeapon(Building& station, Tick currentTick, std::optional CombatSystem::acquireStationTarget( const Building& station, bool stationIsEnemy, - const ShipSystem& ships, - const BuildingSystem& buildings) const + const ShipSystem& ships) const { const QVector2D stationCenter( station.anchor.x() + station.footprint.width() / 2.0f, @@ -202,27 +200,6 @@ std::optional CombatSystem::acquireStationTarget( } } - // Enemy stations also target player buildings (HQ, PlayerDefenceStation). - if (stationIsEnemy) - { - for (const Building& b : buildings.allBuildings()) - { - if (b.type != BuildingType::Hq && - b.type != BuildingType::PlayerDefenceStation) - { - continue; - } - const QVector2D bCenter(b.anchor.x() + b.footprint.width() / 2.0f, - b.anchor.y() + b.footprint.height() / 2.0f); - const float dist = (bCenter - stationCenter).length(); - if (dist < bestDist) - { - bestDist = dist; - best = b.id; - } - } - } - return best; } diff --git a/src/lib/sim/CombatSystem.h b/src/lib/sim/CombatSystem.h index 5ba3e34..a26f17e 100644 --- a/src/lib/sim/CombatSystem.h +++ b/src/lib/sim/CombatSystem.h @@ -45,12 +45,10 @@ private: std::vector& out); // Find the nearest valid target for a defence station within its range. - // Enemy stations target player ships + HQ + PlayerDefenceStation. - // Player stations target enemy ships only. + // Both enemy and player stations target ships of the opposing faction only. std::optional acquireStationTarget( const Building& station, bool stationIsEnemy, - const ShipSystem& ships, - const BuildingSystem& buildings) const; + const ShipSystem& ships) const; // Return the world position of the entity, or nullopt if it no longer exists. std::optional targetPosition(EntityId id,