[Top][All Lists]
[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());
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Wesnoth-cvs-commits] wesnoth/src actions.cpp ai.cpp ai_move.cpp asta...,
David White <=