summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Character.cpp8
-rw-r--r--src/List.cpp9
2 files changed, 6 insertions, 11 deletions
diff --git a/src/Character.cpp b/src/Character.cpp
index 8b4a4b5..0ab594b 100644
--- a/src/Character.cpp
+++ b/src/Character.cpp
@@ -13,7 +13,7 @@ void Character::draw(WINDOW * w)
mvwaddch(w,l.x,l.y,symbol);
}
-Location Character::action(vector <Location> occupied)
+Location Character::action(vector <Character> men)
{
if(order == "wander")
{
@@ -64,7 +64,7 @@ Location Character::action(vector <Location> occupied)
Lo = l;
}
- if(check(Lo,occupied))
+ if(check(Lo,men))
{
move(Lo);
return Lo;
@@ -74,10 +74,10 @@ Location Character::action(vector <Location> occupied)
}
}
-bool Character::check(Location L, vector <Location> occupied)
+bool Character::check(Location L, vector <Character> men)
{
for(int i = 0; i < 10; i++)
- if(L.x == occupied[i].x && L.y == occupied[i].y)
+ if(L.x == men[i].getLocation().x && L.y == men[i].getLocation().y)
return false;
return true;
diff --git a/src/List.cpp b/src/List.cpp
index ed09c5a..05a6f66 100644
--- a/src/List.cpp
+++ b/src/List.cpp
@@ -8,8 +8,7 @@ List::List()
L.x = 150;
L.y = 150+i;
Character x ('@',4,L);
- men.push_back(x);
- occupied.push_back(x.getLocation());
+ men.push_back(x);
}
}
@@ -22,9 +21,5 @@ void List::draw(WINDOW * w)
void List::action()
{
for(int i = 0; i < 10; i++)
- {
- Location L = men[i].action(occupied);
- if (L.x != 0 && L.y != 0)
- occupied[i]=L;
- }
+ men[i].action(men);
}