wesnoth-cvs-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Wesnoth-cvs-commits] wesnoth/src actions.cpp ai.cpp ai_move.cpp asta...


From: David White
Subject: [Wesnoth-cvs-commits] wesnoth/src actions.cpp ai.cpp ai_move.cpp asta...
Date: Fri, 21 Jan 2005 18:17:15 -0500

CVSROOT:        /cvsroot/wesnoth
Module name:    wesnoth
Branch:         
Changes by:     David White <address@hidden>    05/01/21 23:17:15

Modified files:
        src            : actions.cpp ai.cpp ai_move.cpp astarnode.cpp 
                         pathfind.cpp 

Log message:
        some fixes for the pathfinding patch

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/actions.cpp.diff?tr1=1.183&tr2=1.184&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/ai.cpp.diff?tr1=1.131&tr2=1.132&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/ai_move.cpp.diff?tr1=1.55&tr2=1.56&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/astarnode.cpp.diff?tr1=1.1&tr2=1.2&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/wesnoth/wesnoth/src/pathfind.cpp.diff?tr1=1.54&tr2=1.55&r1=text&r2=text

Patches:
Index: wesnoth/src/actions.cpp
diff -u wesnoth/src/actions.cpp:1.183 wesnoth/src/actions.cpp:1.184
--- wesnoth/src/actions.cpp:1.183       Fri Jan 21 22:21:54 2005
+++ wesnoth/src/actions.cpp     Fri Jan 21 23:17:15 2005
@@ -1,4 +1,4 @@
-/* $Id: actions.cpp,v 1.183 2005/01/21 22:21:54 Sirp Exp $ */
+/* $Id: actions.cpp,v 1.184 2005/01/21 23:17:15 Sirp Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -53,7 +53,6 @@
                if(!map_.is_castle(loc))
                        return 10000;
 
-                       return (getNoPathValue());
                return 1;
        }
 
Index: wesnoth/src/ai.cpp
diff -u wesnoth/src/ai.cpp:1.131 wesnoth/src/ai.cpp:1.132
--- wesnoth/src/ai.cpp:1.131    Fri Jan 21 20:16:43 2005
+++ wesnoth/src/ai.cpp  Fri Jan 21 23:17:15 2005
@@ -1,4 +1,4 @@
-/* $Id: ai.cpp,v 1.131 2005/01/21 20:16:43 Sirp Exp $ */
+/* $Id: ai.cpp,v 1.132 2005/01/21 23:17:15 Sirp Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -353,7 +353,7 @@
        //stop the user from issuing any commands while the unit is moving
        const command_disabler disable_commands;
 
-       assert(info_.units.find(to) == info_.units.end() || from == to);
+       wassert(info_.units.find(to) == info_.units.end() || from == to);
 
        info_.disp.select_hex(from);
        info_.disp.update_display();
@@ -362,7 +362,7 @@
        unit_map::iterator u_it = info_.units.find(from);
        if(u_it == info_.units.end()) {
                lg::err(lg::ai) << "Could not find unit at " << from.x << ", " 
<< from.y << "\n";
-               assert(false);
+               wassert(false);
                return location();
        }
 
@@ -1279,7 +1279,7 @@
                LOG_AI << "choosing move...\n";
                std::pair<location,location> move = 
choose_move(targets,srcdst,dstsrc,enemy_srcdst,enemy_dstsrc);
                for(std::vector<target>::const_iterator ittg = targets.begin(); 
ittg != targets.end(); ++ittg) {
-                       assert(map_.on_board(ittg->loc));
+                       wassert(map_.on_board(ittg->loc));
                }
 
                if(move.first.valid() == false) {
@@ -1625,7 +1625,7 @@
        const std::vector<std::string>& options = 
current_team().recruitment_pattern();
 
        if(options.empty()) {
-               assert(false);
+               wassert(false);
                return;
        }
 
Index: wesnoth/src/ai_move.cpp
diff -u wesnoth/src/ai_move.cpp:1.55 wesnoth/src/ai_move.cpp:1.56
--- wesnoth/src/ai_move.cpp:1.55        Fri Jan 21 20:07:30 2005
+++ wesnoth/src/ai_move.cpp     Fri Jan 21 23:17:15 2005
@@ -1,4 +1,4 @@
-/* $Id: ai_move.cpp,v 1.55 2005/01/21 20:07:30 Sirp Exp $ */
+/* $Id: ai_move.cpp,v 1.56 2005/01/21 23:17:15 Sirp Exp $ */
 /*
    Copyright (C) 2003 by David White <address@hidden>
    Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -69,7 +69,7 @@
                if (units_.count(loc))
                        res *= 4.0;
 
-               assert(res > 0);
+               wassert(res > 0);
                return res;
        }
 
@@ -112,7 +112,7 @@
                                }
                        }
 
-                       assert(threats.empty() == false);
+                       wassert(threats.empty() == false);
 
                        const double value = threat/double(threats.size());
                        for(std::set<gamemap::location>::const_iterator i = 
threats.begin(); i != threats.end(); ++i) {
@@ -124,7 +124,7 @@
        if(has_leader && current_team().village_value() > 0.0) {
                const std::vector<location>& villages = map_.villages();
                for(std::vector<location>::const_iterator t = villages.begin(); 
t != villages.end(); ++t) {
-                       assert(map_.on_board(*t));
+                       wassert(map_.on_board(*t));
                        bool get_village = true;
                        for(size_t i = 0; i != teams_.size(); ++i) {
                                if(!current_team().is_enemy(i+1) && 
teams_[i].owns_village(*t)) {
@@ -147,7 +147,7 @@
 
                //is an enemy leader
                if(u->second.can_recruit() && 
current_team().is_enemy(u->second.side())) {
-                       assert(map_.on_board(u->first));
+                       wassert(map_.on_board(u->first));
                        
targets.push_back(target(u->first,current_team().leader_value(),target::LEADER));
                }
 
@@ -179,7 +179,7 @@
                }
        }
 
-       assert(new_values.size() == targets.size());
+       wassert(new_values.size() == targets.size());
        for(size_t n = 0; n != new_values.size(); ++n) {
                LOG_AI << "target value: " << targets[n].value << " -> " << 
new_values[n] << "\n";
                targets[n].value = new_values[n];
@@ -387,7 +387,7 @@
 
        std::vector<target>::const_iterator ittg;
        for(ittg = targets.begin(); ittg != targets.end(); ++ittg) {
-               assert(map_.on_board(ittg->loc));
+               wassert(map_.on_board(ittg->loc));
        }
 
        paths::route best_route;
@@ -425,7 +425,7 @@
 
                user_interact();
 
-               assert(map_.on_board(tg->loc));
+               wassert(map_.on_board(tg->loc));
                const double locStopValue = minimum(tg->value / best_rating, 
500.0);
                paths::route cur_route = a_star_search(u->first, tg->loc, 
locStopValue, &cost_calc, map_.x(), map_.y());
 
@@ -561,10 +561,10 @@
 
        LOG_AI << "best unit: " << (best->first.x+1) << "," << 
(best->first.y+1) << "\n";
 
-       assert(best_target >= targets.begin() && best_target < targets.end());
+       wassert(best_target >= targets.begin() && best_target < targets.end());
 
        for(ittg = targets.begin(); ittg != targets.end(); ++ittg) {
-               assert(map_.on_board(ittg->loc));
+               wassert(map_.on_board(ittg->loc));
        }
 
        //if our target is a position to support, then we
Index: wesnoth/src/astarnode.cpp
diff -u wesnoth/src/astarnode.cpp:1.1 wesnoth/src/astarnode.cpp:1.2
--- wesnoth/src/astarnode.cpp:1.1       Fri Jan 21 20:07:30 2005
+++ wesnoth/src/astarnode.cpp   Fri Jan 21 23:17:15 2005
@@ -1,4 +1,4 @@
-/* $Id: astarnode.cpp,v 1.1 2005/01/21 20:07:30 Sirp Exp $ */
+/* $Id: astarnode.cpp,v 1.2 2005/01/21 23:17:15 Sirp Exp $ */
 /*
 Copyright (C) 2003 by David White <address@hidden>
 Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -13,8 +13,7 @@
 
 #include "global.hpp"
 #include "astarnode.hpp"
-
-#include <cassert>
+#include "wassert.hpp"
 
 poss_a_star_node* SingletonPOSS_AStarNode = NULL;
 
@@ -51,7 +50,7 @@
 capacity(0), curIndex(0)
 {
        nbElemByPage = size_t((4096 - 24) / sizeof(a_star_node));               
-       assert(nbElemByPage > 0);
+       wassert(nbElemByPage > 0);
        addPage(); 
        SingletonPOSS_AStarNode = this; 
 } 
@@ -68,8 +67,8 @@
 a_star_node* poss_a_star_node::getAStarNode(void)
 {
        //----------------- PRE_CONDITIONS ------------------
-       assert(capacity > 0);
-       assert(curIndex <= capacity);
+       wassert(capacity > 0);
+       wassert(curIndex <= capacity);
        //---------------------------------------------------
        a_star_node* locPageAStarNode;
        
@@ -97,15 +96,15 @@
        }       
        curIndex = 0;   
        //----------------- POST_CONDITIONS -----------------
-       assert(capacity == nbElemByPage);
-       assert(vectPageAStarNode.size() == 1);
+       wassert(capacity == nbElemByPage);
+       wassert(vectPageAStarNode.size() == 1);
        //---------------------------------------------------
 } 
 
 void a_star_world::resize_IFN(const size_t parWidth, const size_t parHeight)
 {
        //----------------- PRE_CONDITIONS ------------------
-       assert(_nbNode == 0);
+       wassert(_nbNode == 0);
        //---------------------------------------------------
        _width = parWidth;
        if (_vectAStarNode.size() != parWidth * parHeight)
@@ -143,8 +142,8 @@
 void a_star_world::erase(gamemap::location const &loc)
 {
        //----------------- PRE_CONDITIONS ------------------
-       assert(loc.valid());
-       assert(loc.x + (loc.y * _width) < _vectAStarNode.size());
+       wassert(loc.valid());
+       wassert(loc.x + (loc.y * _width) < _vectAStarNode.size());
        //---------------------------------------------------
        _vectAStarNode[loc.x + (loc.y * _width)] = NULL;
 }
@@ -152,7 +151,7 @@
 a_star_node* a_star_world::getNodeFromLocation(gamemap::location const &loc, 
bool& isCreated)
 {      
        //----------------- PRE_CONDITIONS ------------------
-       assert(loc.valid());
+       wassert(loc.valid());
        //---------------------------------------------------
        a_star_node*            node;
        size_t                          index;
@@ -163,7 +162,7 @@
        if (node == NULL)
        {
                isCreated = true;
-               assert(SingletonPOSS_AStarNode != NULL);
+               wassert(SingletonPOSS_AStarNode != NULL);
                node = SingletonPOSS_AStarNode->getAStarNode();
                _vectAStarNode[index] = node;   
                ++_nbNode;
Index: wesnoth/src/pathfind.cpp
diff -u wesnoth/src/pathfind.cpp:1.54 wesnoth/src/pathfind.cpp:1.55
--- wesnoth/src/pathfind.cpp:1.54       Fri Jan 21 20:16:43 2005
+++ wesnoth/src/pathfind.cpp    Fri Jan 21 23:17:15 2005
@@ -1,4 +1,4 @@
-/* $Id: pathfind.cpp,v 1.54 2005/01/21 20:16:43 Sirp Exp $ */
+/* $Id: pathfind.cpp,v 1.55 2005/01/21 23:17:15 Sirp Exp $ */
 /*
 Copyright (C) 2003 by David White <address@hidden>
 Part of the Battle for Wesnoth Project http://wesnoth.whitevine.net
@@ -18,8 +18,8 @@
 #include "pathfind.hpp"
 #include "util.hpp"
 #include "astarnode.hpp"
+#include "wassert.hpp"
 
-#include <cassert>
 #include <cmath>
 #include <iostream>
 
@@ -47,9 +47,9 @@
        bool                                            locIsCreated = false;
        
        aStarGameWorld.resize_IFN(parWidth, parHeight);
-       assert(aStarGameWorld.empty());
+       wassert(aStarGameWorld.empty());
        locStartNode = aStarGameWorld.getNodeFromLocation(src, locIsCreated);
-       assert(locIsCreated);
+       wassert(locIsCreated);
        locStartNode->initNode(src, dst, 0.0, NULL, teleports); 
 
        const size_t locValueH = size_t(locStartNode->h);
@@ -98,19 +98,19 @@
 
 #ifdef _PARANO_ASTAR_
        for (vector_a_star_node::iterator iter = openList.begin(); iter != 
openList.end(); ++iter)
-               assert((*iter)->isInCloseList == false);                
+               wassert((*iter)->isInCloseList == false);               
        if (openList.size() > locNbAdded) {
                for (vector_a_star_node::iterator iter = openList.begin() + 1; 
iter != openList.end() - locNbAdded; ++iter)
                {
                        vector_a_star_node::iterator iterPrev = iter - 1;       
                
-                       assert(compare_sup_equal_a_star_node(*iterPrev, *iter));
+                       wassert(compare_sup_equal_a_star_node(*iterPrev, 
*iter));
                }
        }
        if (locNbAdded > 0) {
                for (vector_a_star_node::iterator iter = openList.end() - 
locNbAdded + 1; iter != openList.end(); ++iter)
                {
                        vector_a_star_node::iterator iterPrev = iter - 1;       
                
-                       assert(compare_sup_equal_a_star_node(*iterPrev, *iter));
+                       wassert(compare_sup_equal_a_star_node(*iterPrev, 
*iter));
                }
        }
 #endif
@@ -123,10 +123,10 @@
                for (iter = openList.begin() + 1; iter != openList.end(); 
++iter)
                {
                        vector_a_star_node::iterator iterPrev = iter - 1;       
                
-                       assert(compare_sup_equal_a_star_node(*iterPrev, 
*iter));                                
+                       wassert(compare_sup_equal_a_star_node(*iterPrev, 
*iter));                               
                }
                for (iter = openList.begin(); iter != openList.end(); ++iter)
-                       assert((*iter)->isInCloseList == false);
+                       wassert((*iter)->isInCloseList == false);
        }
 #endif
 }
@@ -140,7 +140,7 @@
                                                                                
                                         a_star_node*   parCurNode, const 
size_t parNbTeleport)
 {
        //----------------- PRE_CONDITIONS ------------------
-       assert(parCurNode != NULL);     
+       wassert(parCurNode != NULL);    
        //---------------------------------------------------
        
        typedef std::pair<vector_a_star_node::iterator, 
vector_a_star_node::iterator> pair_node_iter;
@@ -156,14 +156,14 @@
 
        if ((parNbTeleport > 0) && (teleports->count(parCurNode->loc) > 0))
        {
-               assert(teleports != NULL);
-               assert(teleports->size() == parNbTeleport);
-               assert(vectLocation.size() == parNbTeleport + 6);
+               wassert(teleports != NULL);
+               wassert(teleports->size() == parNbTeleport);
+               wassert(vectLocation.size() == parNbTeleport + 6);
                locSize = parNbTeleport + 6;
        }
        else
        {
-               assert(vectLocation.size() >= 6);
+               wassert(vectLocation.size() >= 6);
                locSize = 6;
        }       
 
@@ -184,7 +184,7 @@
                        }
                        else
                        {
-                               assert(locNextNode->isInCloseList == false);
+                               wassert(locNextNode->isInCloseList == false);
                                locNextNode->isInCloseList = true;
                        }
                }
@@ -216,12 +216,12 @@
                                                                                
                                const size_t parHeight, 
std::set<gamemap::location> const *teleports)
 {
        //----------------- PRE_CONDITIONS ------------------
-       assert(parWidth > 0);
-       assert(parHeight > 0);
-       assert(src.valid());
-       assert(dst.valid());
-       assert(costCalculator != NULL);
-       assert(stop_at <= costCalculator->getNoPathValue());
+       wassert(parWidth > 0);
+       wassert(parHeight > 0);
+       wassert(src.valid());
+       wassert(dst.valid());
+       wassert(costCalculator != NULL);
+       wassert(stop_at <= costCalculator->getNoPathValue());
        //---------------------------------------------------                   
        static a_star_world                             aStarGameWorld; 
        static poss_a_star_node   POSS_AStarNode;
@@ -234,8 +234,8 @@
        a_star_node*                                            locDestNode = 
NULL;
        a_star_node*                                            locCurNode = 
NULL;
        
-       assert(openList.empty());       
-       assert(aStarGameWorld.empty());
+       wassert(openList.empty());      
+       wassert(aStarGameWorld.empty());
        assertParanoAstar(aStarGameWorld.reallyEmpty());        
        
        LOG_PF << "A* search: " << src.x << ", " << src.y << " -> " << dst.x << 
", " << dst.y << "\n";
@@ -254,7 +254,7 @@
        while (!openList.empty()) 
        {
                locCurNode = openList.back();
-               assert(locCurNode != NULL);             
+               wassert(locCurNode != NULL);            
                
                //if we have found a solution
                if (locCurNode->loc == dst)
@@ -270,8 +270,8 @@
                        std::reverse(locRoute.steps.begin(), 
locRoute.steps.end());
                        locRoute.move_left = int(locDestNode->g);
 
-                       assert(locRoute.steps.front() == src);
-                       assert(locRoute.steps.back() == dst);
+                       wassert(locRoute.steps.front() == src);
+                       wassert(locRoute.steps.back() == dst);
 
                        LOG_PF << "exiting a* search (solved)\n";
                        goto label_AStarSearch_end;
@@ -279,7 +279,7 @@
 
                openList.pop_back();
 
-               assert(locCurNode->isInCloseList == false);
+               wassert(locCurNode->isInCloseList == false);
                locCurNode->isInCloseList = true ;              
                
                locNbAdded = 0;
@@ -298,8 +298,8 @@
        aStarGameWorld.clear();
 
        //----------------- POST_CONDITIONS -----------------
-       assert(openList.empty());
-       assert(aStarGameWorld.empty());
+       wassert(openList.empty());
+       wassert(aStarGameWorld.empty());
        assertParanoAstar(aStarGameWorld.reallyEmpty());        
        //---------------------------------------------------
        return (locRoute);
@@ -568,7 +568,7 @@
        int turns = 0, movement = u.movement_left();
        for(std::vector<gamemap::location>::const_iterator i = 
rt.steps.begin()+1;
                i != rt.steps.end(); ++i) {
-                       assert(map.on_board(*i));
+                       wassert(map.on_board(*i));
                        const int move_cost = 
u.movement_cost(map,map[i->x][i->y]);
                        movement -= move_cost;
                        if(movement < 0) {
@@ -596,7 +596,7 @@
 
 double shortest_path_calculator::cost(const gamemap::location& loc, const 
double so_far, const bool isDst) const
 {
-       assert(map_.on_board(loc));
+       wassert(map_.on_board(loc));
 
        if (team_.shrouded(loc.x, loc.y))
                return (getNoPathValue());




reply via email to

[Prev in Thread] Current Thread [Next in Thread]