diff options
-rw-r--r-- | inc/Character.hpp | 4 | ||||
-rw-r--r-- | inc/List.hpp | 1 | ||||
-rw-r--r-- | src/List.cpp | 6 | ||||
-rw-r--r-- | src/main.cpp | 6 |
4 files changed, 13 insertions, 4 deletions
diff --git a/inc/Character.hpp b/inc/Character.hpp index 3c88ab2..f519c3f 100644 --- a/inc/Character.hpp +++ b/inc/Character.hpp @@ -23,9 +23,9 @@ class Character void wander(vector <Character> men, vector <Location> impassable); Location getLocation(){return l;} char getSymbol(){return symbol;} - + void giveOrder(Location L){d = L;order="move";} private: - string order = "move"; + string order = "wander"; Location l; // current location Location d; // destination char symbol; diff --git a/inc/List.hpp b/inc/List.hpp index 447903b..56d25e9 100644 --- a/inc/List.hpp +++ b/inc/List.hpp @@ -14,6 +14,7 @@ class List List(vector <Location> i); void draw(WINDOW * w); void action(); + void order(Location l); private: vector <Character> men; vector <Location> impassable; diff --git a/src/List.cpp b/src/List.cpp index bd0f5d4..86049a3 100644 --- a/src/List.cpp +++ b/src/List.cpp @@ -24,3 +24,9 @@ void List::action() for(int i = 0; i < men.size(); i++) men[i].action(men,impassable); } + +void List::order(Location l) +{ + for(int i = 0; i < men.size(); i++) + men[i].giveOrder(l); +} diff --git a/src/main.cpp b/src/main.cpp index 75847a2..1588dbd 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -20,7 +20,7 @@ int main() while(true) { char c = getch(); - Location l = cursor.getLocation(); + l = cursor.getLocation(); if (c == 'h') l.y = l.y-1; else if (c == 'l') @@ -32,7 +32,9 @@ int main() else if (c == 'q') break; else if (c == 'p') - paused = !paused; + paused = !paused; + else if (c == 'o') + L.order(l); cursor.move(l); if (!paused) |