diff options
| author | Kelly Rauchenberger <fefferburbia@gmail.com> | 2021-02-03 01:35:58 -0500 |
|---|---|---|
| committer | Kelly Rauchenberger <fefferburbia@gmail.com> | 2021-02-03 01:35:58 -0500 |
| commit | be09120d1d044b476ef8b516efbdb526f20d9e2d (patch) | |
| tree | f935389835d5f94a9cd3bb2059cf55174c9aad69 /src/main.cpp | |
| parent | 24918837c3ff9026d228657d14852c9cf39a5644 (diff) | |
| download | tanetane-be09120d1d044b476ef8b516efbdb526f20d9e2d.tar.gz tanetane-be09120d1d044b476ef8b516efbdb526f20d9e2d.tar.bz2 tanetane-be09120d1d044b476ef8b516efbdb526f20d9e2d.zip | |
Added animation system
Diffstat (limited to 'src/main.cpp')
| -rw-r--r-- | src/main.cpp | 24 |
1 files changed, 13 insertions, 11 deletions
| diff --git a/src/main.cpp b/src/main.cpp index a092114..ea27511 100644 --- a/src/main.cpp +++ b/src/main.cpp | |||
| @@ -8,26 +8,34 @@ | |||
| 8 | #include "mixer.h" | 8 | #include "mixer.h" |
| 9 | #include "transform_system.h" | 9 | #include "transform_system.h" |
| 10 | #include "camera_system.h" | 10 | #include "camera_system.h" |
| 11 | #include "animation_system.h" | ||
| 11 | 12 | ||
| 12 | void loop(Renderer& renderer, Mixer& mixer) { | 13 | void loop(Renderer& renderer, Mixer& mixer) { |
| 13 | Game game; | 14 | Game game; |
| 14 | game.emplaceSystem<TransformSystem>(); | 15 | game.emplaceSystem<TransformSystem>(); |
| 15 | game.emplaceSystem<CameraSystem>(); | 16 | game.emplaceSystem<CameraSystem>(); |
| 17 | game.emplaceSystem<AnimationSystem>(); | ||
| 16 | 18 | ||
| 17 | Input keystate; | 19 | Input keystate; |
| 18 | 20 | ||
| 19 | auto map = std::make_unique<Map>("../res/map1.tmx", renderer); | 21 | auto map = std::make_unique<Map>("../res/map1.tmx", renderer); |
| 20 | game.setMap(std::move(map)); | 22 | game.setMap(std::move(map)); |
| 21 | 23 | ||
| 22 | int lucasSprite = game.addSprite(Sprite("../res/lucas_anim.txt", renderer)); | 24 | int lucasSprite = game.emplaceSprite(); |
| 23 | int kumaSprite = game.addSprite(Sprite("../res/kuma_anim.txt", renderer)); | ||
| 24 | int dusterSprite = game.addSprite(Sprite("../res/duster_anim.txt", renderer)); | ||
| 25 | int boneySprite = game.addSprite(Sprite("../res/boney_anim.txt", renderer)); | ||
| 26 | |||
| 27 | game.getSystem<TransformSystem>().initSprite(lucasSprite, {32, 32}); | 25 | game.getSystem<TransformSystem>().initSprite(lucasSprite, {32, 32}); |
| 26 | game.getSystem<AnimationSystem>().initSprite(lucasSprite, "../res/lucas_anim.txt", renderer); | ||
| 27 | |||
| 28 | int kumaSprite = game.emplaceSprite(); | ||
| 28 | game.getSystem<TransformSystem>().initSprite(kumaSprite, {32, 32}); | 29 | game.getSystem<TransformSystem>().initSprite(kumaSprite, {32, 32}); |
| 30 | game.getSystem<AnimationSystem>().initSprite(kumaSprite, "../res/kuma_anim.txt", renderer); | ||
| 31 | |||
| 32 | int dusterSprite = game.emplaceSprite(); | ||
| 29 | game.getSystem<TransformSystem>().initSprite(dusterSprite, {32, 32}); | 33 | game.getSystem<TransformSystem>().initSprite(dusterSprite, {32, 32}); |
| 34 | game.getSystem<AnimationSystem>().initSprite(dusterSprite, "../res/duster_anim.txt", renderer); | ||
| 35 | |||
| 36 | int boneySprite = game.emplaceSprite(); | ||
| 30 | game.getSystem<TransformSystem>().initSprite(boneySprite, {32, 32}); | 37 | game.getSystem<TransformSystem>().initSprite(boneySprite, {32, 32}); |
| 38 | game.getSystem<AnimationSystem>().initSprite(boneySprite, "../res/boney_anim.txt", renderer); | ||
| 31 | 39 | ||
| 32 | Party party; | 40 | Party party; |
| 33 | party.addMember(game, lucasSprite); | 41 | party.addMember(game, lucasSprite); |
| @@ -41,7 +49,6 @@ void loop(Renderer& renderer, Mixer& mixer) { | |||
| 41 | renderer.render(game); | 49 | renderer.render(game); |
| 42 | 50 | ||
| 43 | Timer inputTimer(33); | 51 | Timer inputTimer(33); |
| 44 | Timer animTimer(1000/5);//30fps * 1000 t/s; | ||
| 45 | 52 | ||
| 46 | size_t lastTime = SDL_GetTicks(); | 53 | size_t lastTime = SDL_GetTicks(); |
| 47 | 54 | ||
| @@ -72,11 +79,6 @@ void loop(Renderer& renderer, Mixer& mixer) { | |||
| 72 | party.move(game, mixer, keystate); | 79 | party.move(game, mixer, keystate); |
| 73 | } | 80 | } |
| 74 | 81 | ||
| 75 | animTimer.accumulate(frameTime); | ||
| 76 | while (animTimer.step()) { | ||
| 77 | game.tickSpriteAnim(); | ||
| 78 | } | ||
| 79 | |||
| 80 | for (System& system : game.systems()) { | 82 | for (System& system : game.systems()) { |
| 81 | system.tick(frameTime); | 83 | system.tick(frameTime); |
| 82 | } | 84 | } |
