diff options
-rw-r--r-- | src/actormanager.cpp | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/src/actormanager.cpp b/src/actormanager.cpp index 62d438c67..737a864a7 100644 --- a/src/actormanager.cpp +++ b/src/actormanager.cpp @@ -1360,23 +1360,13 @@ Being *ActorManager::findNearestLivingBeing(const Being *const aroundBeing, //logger->log("being prio:%3d, dist^2:%3d, name: '%s'", // priority, distSq, being->getName().c_str()); - if (!filtered) + // without filtering, priority and closestPriority are always the same + if ((priority == closestPriority && distSq < closestDistSq) || + (priority < closestPriority && distSq <= maxDistSq)) { - if (distSq < closestDistSq) - { - closestDistSq = distSq; - closestBeing = being; - } - } - else - { - if ((priority < closestPriority && distSq <= maxDistSq) || - (priority == closestPriority && distSq < closestDistSq)) - { - closestDistSq = distSq; - closestBeing = being; - closestPriority = priority; - } + closestDistSq = distSq; + closestBeing = being; + closestPriority = priority; } } return closestBeing; |