Sophie

Sophie

distrib > Mageia > 1 > i586 > media > core-updates-src > by-pkgid > 05cc51920a41c76f49292e57bcb95121 > files > 1

manaplus-1.1.5.1-5.mga1.src.rpm

From 274d96292571495a45d32364c36531e7ff35aff0 Mon Sep 17 00:00:00 2001
From: Andrei Karas <akaras@inbox.ru>
Date: Thu, 5 May 2011 01:27:21 +0300
Subject: [PATCH] Fix monsters selection if monster added to priority list
 and option "cycle monster target" disabled.

---
 src/actorspritemanager.cpp |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/src/actorspritemanager.cpp b/src/actorspritemanager.cpp
index 6162ba7..3f37ce9 100644
--- a/src/actorspritemanager.cpp
+++ b/src/actorspritemanager.cpp
@@ -766,6 +766,7 @@ Being *ActorSpriteManager::findNearestLivingBeing(Being *aroundBeing,
     else
     {
         int dist = 0;
+        int index = defaultPriorityIndex;
 
         for (ActorSprites::const_iterator i = mActors.begin(),
              i_end = mActors.end();
@@ -797,7 +798,6 @@ Being *ActorSpriteManager::findNearestLivingBeing(Being *aroundBeing,
 
             bool valid = validateBeing(aroundBeing, being, type, excluded, 50);
             int d = being->getDistance();
-            int index = defaultPriorityIndex;
 //            logger->log("dist: %d", dist);
 //            logger->log("name: %s, %d, %d", being->getName().c_str(), (int)valid, d);
             if (being->getType() != Being::MONSTER
@@ -807,9 +807,12 @@ Being *ActorSpriteManager::findNearestLivingBeing(Being *aroundBeing,
                     + (being->getTileY() - y) * (being->getTileY() - y);
             }
 
+            if (!valid)
+                continue;
+
 //            logger->log("being name:" + being->getName());
+//            logger->log("index:" + toString(index));
 //            logger->log("d:" + toString(d));
-//            logger->log("valid:" + toString(valid))
 
             if (valid && !filtered && (d <= dist || closestBeing == 0))
             {
-- 
1.7.1