- void AddFrame(int col, int row, const geometry::Vector<int> &disposition = geometry::Vector<int>()) {
- frames.push_back(FrameProp(col, row, disposition));
- }
- void AddFrames(int col, int row, const geometry::Vector<int> &disposition, int amount) {
- for (int i(0); i < amount; ++i) {
- AddFrame(col, row, disposition);
- }
- }
-
- virtual void Draw(SDL_Surface *dest, geometry::Point<int> position) const {
- Animation::Draw(dest, position + frames[Frame()].disposition);
- }
-
-protected:
- virtual int Col() const { return frames[Frame()].col; }
- virtual int Row() const { return frames[Frame()].row; }
- virtual int NumFrames() const { return frames.size(); };
-
-private: