diff options
| author | Kelly Rauchenberger <fefferburbia@gmail.com> | 2021-01-31 12:08:02 -0500 |
|---|---|---|
| committer | Kelly Rauchenberger <fefferburbia@gmail.com> | 2021-01-31 12:08:02 -0500 |
| commit | 908f792db6fdc04fde4b48e8873767edd5d59cea (patch) | |
| tree | e1ec1659bfe9d7389d1dbc52aaa7045fdb652279 /src/sprite.h | |
| parent | f648c6776e0a1c5e1e3f6fcf9c81fefcb67a0c3e (diff) | |
| download | tanetane-908f792db6fdc04fde4b48e8873767edd5d59cea.tar.gz tanetane-908f792db6fdc04fde4b48e8873767edd5d59cea.tar.bz2 tanetane-908f792db6fdc04fde4b48e8873767edd5d59cea.zip | |
Made use of new sprite sheet data!
Diffstat (limited to 'src/sprite.h')
| -rw-r--r-- | src/sprite.h | 14 |
1 files changed, 8 insertions, 6 deletions
| diff --git a/src/sprite.h b/src/sprite.h index 82ea90c..dc26fad 100644 --- a/src/sprite.h +++ b/src/sprite.h | |||
| @@ -8,6 +8,12 @@ | |||
| 8 | #include "renderer.h" | 8 | #include "renderer.h" |
| 9 | #include "vector.h" | 9 | #include "vector.h" |
| 10 | 10 | ||
| 11 | struct SpriteFrame { | ||
| 12 | SDL_Rect srcRect; | ||
| 13 | vec2i center; | ||
| 14 | vec2i size; | ||
| 15 | }; | ||
| 16 | |||
| 11 | class Sprite { | 17 | class Sprite { |
| 12 | public: | 18 | public: |
| 13 | 19 | ||
| @@ -21,11 +27,7 @@ public: | |||
| 21 | 27 | ||
| 22 | vec2i& loc() { return loc_; } | 28 | vec2i& loc() { return loc_; } |
| 23 | 29 | ||
| 24 | const vec2i& size() const { return size_; } | 30 | const SpriteFrame& getFrame() const { return frames_.at(animations_[curAnim_][curFrame_]); } |
| 25 | |||
| 26 | vec2i& size() { return size_; } | ||
| 27 | |||
| 28 | int getFrame() const { return animations_[curAnim_][curFrame_]; } | ||
| 29 | 31 | ||
| 30 | void setDirection(Direction dir); | 32 | void setDirection(Direction dir); |
| 31 | 33 | ||
| @@ -41,11 +43,11 @@ private: | |||
| 41 | 43 | ||
| 42 | int textureId_; | 44 | int textureId_; |
| 43 | vec2i loc_ { 0, 0 }; | 45 | vec2i loc_ { 0, 0 }; |
| 44 | vec2i size_; | ||
| 45 | Direction curDir_ = Direction::down; | 46 | Direction curDir_ = Direction::down; |
| 46 | std::string state_; | 47 | std::string state_; |
| 47 | int curAnim_ = 0; | 48 | int curAnim_ = 0; |
| 48 | int curFrame_ = 0; | 49 | int curFrame_ = 0; |
| 50 | std::vector<SpriteFrame> frames_; | ||
| 49 | std::vector<std::vector<int>> animations_; | 51 | std::vector<std::vector<int>> animations_; |
| 50 | std::map<std::string, std::map<Direction, int>> stateDirToAnim_; | 52 | std::map<std::string, std::map<Direction, int>> stateDirToAnim_; |
| 51 | }; | 53 | }; |
