diff options
Diffstat (limited to 'crawl-ref')
-rw-r--r-- | crawl-ref/source/coordit.cc | 33 | ||||
-rw-r--r-- | crawl-ref/source/coordit.h | 6 |
2 files changed, 1 insertions, 38 deletions
diff --git a/crawl-ref/source/coordit.cc b/crawl-ref/source/coordit.cc index cfe817a192..b93b4aad98 100644 --- a/crawl-ref/source/coordit.cc +++ b/crawl-ref/source/coordit.cc @@ -120,22 +120,6 @@ void radius_iterator::step() } } -void radius_iterator::step_back() -{ - const int minx = std::max(X_BOUND_1+1, center.x - radius); - const int maxx = std::min(X_BOUND_2-1, center.x + radius); - const int miny = std::max(Y_BOUND_1+1, center.y - radius); - - location.x--; - if (location.x < minx) - { - location.x = maxx; - location.y--; - if (location.y < miny) - iter_done = true; - } -} - bool radius_iterator::on_valid_square() const { if (!in_bounds(location)) @@ -164,26 +148,9 @@ const radius_iterator& radius_iterator::operator++() return (*this); } -const radius_iterator& radius_iterator::operator--() -{ - do - this->step_back(); - while (!this->done() && !this->on_valid_square()); - - return (*this); -} - radius_iterator radius_iterator::operator++(int dummy) { const radius_iterator copy = *this; ++(*this); return (copy); } - -radius_iterator radius_iterator::operator--(int dummy) -{ - const radius_iterator copy = *this; - --(*this); - return (copy); -} - diff --git a/crawl-ref/source/coordit.h b/crawl-ref/source/coordit.h index b7323bbef8..ecf57fad53 100644 --- a/crawl-ref/source/coordit.h +++ b/crawl-ref/source/coordit.h @@ -19,7 +19,7 @@ private: coord_def current, topleft, bottomright; }; -class radius_iterator : public std::iterator<std::bidirectional_iterator_tag, +class radius_iterator : public std::iterator<std::forward_iterator_tag, coord_def> { public: @@ -35,12 +35,9 @@ public: const coord_def* operator->() const; const radius_iterator& operator ++ (); - const radius_iterator& operator -- (); radius_iterator operator ++ (int); - radius_iterator operator -- (int); private: void step(); - void step_back(); bool on_valid_square() const; coord_def location, center; @@ -59,4 +56,3 @@ public: }; #endif - |