summary refs log tree commit diff stats
path: root/src/main.cpp
diff options
context:
space:
mode:
authorKelly Rauchenberger <fefferburbia@gmail.com>2021-02-03 01:11:31 -0500
committerKelly Rauchenberger <fefferburbia@gmail.com>2021-02-03 01:11:31 -0500
commit24918837c3ff9026d228657d14852c9cf39a5644 (patch)
treebe131a43eb30f164bd70f542cfcaec688fbc3d51 /src/main.cpp
parentf449345e3aeb599eb497dfeeac7027cf4d1de515 (diff)
downloadtanetane-24918837c3ff9026d228657d14852c9cf39a5644.tar.gz
tanetane-24918837c3ff9026d228657d14852c9cf39a5644.tar.bz2
tanetane-24918837c3ff9026d228657d14852c9cf39a5644.zip
Added camera system
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp22
1 files changed, 14 insertions, 8 deletions
diff --git a/src/main.cpp b/src/main.cpp index d182290..a092114 100644 --- a/src/main.cpp +++ b/src/main.cpp
@@ -6,9 +6,14 @@
6#include "timer.h" 6#include "timer.h"
7#include "map.h" 7#include "map.h"
8#include "mixer.h" 8#include "mixer.h"
9#include "transform_system.h"
10#include "camera_system.h"
9 11
10void loop(Renderer& renderer, Mixer& mixer) { 12void loop(Renderer& renderer, Mixer& mixer) {
11 Game game; 13 Game game;
14 game.emplaceSystem<TransformSystem>();
15 game.emplaceSystem<CameraSystem>();
16
12 Input keystate; 17 Input keystate;
13 18
14 auto map = std::make_unique<Map>("../res/map1.tmx", renderer); 19 auto map = std::make_unique<Map>("../res/map1.tmx", renderer);
@@ -19,10 +24,10 @@ void loop(Renderer& renderer, Mixer& mixer) {
19 int dusterSprite = game.addSprite(Sprite("../res/duster_anim.txt", renderer)); 24 int dusterSprite = game.addSprite(Sprite("../res/duster_anim.txt", renderer));
20 int boneySprite = game.addSprite(Sprite("../res/boney_anim.txt", renderer)); 25 int boneySprite = game.addSprite(Sprite("../res/boney_anim.txt", renderer));
21 26
22 game.getTransformSystem().initSprite(lucasSprite, {32, 32}); 27 game.getSystem<TransformSystem>().initSprite(lucasSprite, {32, 32});
23 game.getTransformSystem().initSprite(kumaSprite, {32, 32}); 28 game.getSystem<TransformSystem>().initSprite(kumaSprite, {32, 32});
24 game.getTransformSystem().initSprite(dusterSprite, {32, 32}); 29 game.getSystem<TransformSystem>().initSprite(dusterSprite, {32, 32});
25 game.getTransformSystem().initSprite(boneySprite, {32, 32}); 30 game.getSystem<TransformSystem>().initSprite(boneySprite, {32, 32});
26 31
27 Party party; 32 Party party;
28 party.addMember(game, lucasSprite); 33 party.addMember(game, lucasSprite);
@@ -30,9 +35,8 @@ void loop(Renderer& renderer, Mixer& mixer) {
30 party.addMember(game, dusterSprite); 35 party.addMember(game, dusterSprite);
31 party.addMember(game, boneySprite); 36 party.addMember(game, boneySprite);
32 37
33 game.setFollowingSprite(lucasSprite); 38 game.getSystem<CameraSystem>().setFollowingSprite(lucasSprite);
34 game.unlockCamera(); 39 game.getSystem<CameraSystem>().unlockCamera();
35 game.tick();
36 40
37 renderer.render(game); 41 renderer.render(game);
38 42
@@ -73,7 +77,9 @@ void loop(Renderer& renderer, Mixer& mixer) {
73 game.tickSpriteAnim(); 77 game.tickSpriteAnim();
74 } 78 }
75 79
76 game.tick(); 80 for (System& system : game.systems()) {
81 system.tick(frameTime);
82 }
77 83
78 renderer.render(game); 84 renderer.render(game);
79 } 85 }