From 2e4d19ba21347cc370d1aae7a57298328b94ca4e Mon Sep 17 00:00:00 2001 From: majortom6 Date: Sun, 26 Feb 2017 07:39:15 -0600 Subject: -comepletly removed use of lists in quadtree and creature, using vectors now --- src/list.cpp | 6 +++--- src/quadtree.cpp | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/list.cpp b/src/list.cpp index 2daed25..ca69a4d 100644 --- a/src/list.cpp +++ b/src/list.cpp @@ -36,7 +36,7 @@ void List::Remove() void List::Behavior() { for(std::list::iterator it = creatures.begin(); it!= creatures.end(); it++){ - std::list N = getNear(*it); + std::vector N = getNear(*it); it->giveNearMe(N); it->Behavior(); @@ -74,9 +74,9 @@ void List::Place() } } -std::list List::getNear(Creature nC) +std::vector List::getNear(Creature nC) { - std::list N; + std::vector N; N = tree.retrieve(N, nC.getGFXD()); return N; diff --git a/src/quadtree.cpp b/src/quadtree.cpp index 54a16c6..909c875 100644 --- a/src/quadtree.cpp +++ b/src/quadtree.cpp @@ -92,7 +92,7 @@ void Quadtree::insert(Entity* iter){ split(); int index; - for(std::list ::iterator it = objects.begin(); it!=objects.end();it++){ + for(std::vector::iterator it = objects.begin(); it!=objects.end();it++){ index = getIndex((*it)->getGFXD()); if (index != -1) { nodes[index].insert(*it); @@ -104,8 +104,8 @@ void Quadtree::insert(Entity* iter){ std::vector Quadtree::Draw(){ std::vector retdat; - - for (int i = 0; i < 4; i++) { + int i; + for (i = 0; i < 4; i++) { if (!nodes[i].isNull) { std::vector temp = nodes[i].Draw(); retdat.insert(retdat.end(), temp.begin(), temp.end()); @@ -126,12 +126,12 @@ std::vector Quadtree::Draw(){ return retdat; } -std::list Quadtree::retrieve(std::list returnObjects, GraphicsData obj) { +std::vector Quadtree::retrieve(std::vector returnObjects, GraphicsData obj) { int index = getIndex(obj); if (index != -1 && !nodes[0].isNull) returnObjects = nodes[index].retrieve(returnObjects, obj); - for(std::list ::iterator it = objects.begin(); it!=objects.end(); it++) + for(std::vector::iterator it = objects.begin(); it!=objects.end(); it++) returnObjects.emplace_back(*it); return returnObjects; -- cgit v1.2.3