diff options
author | Kelly Rauchenberger <fefferburbia@gmail.com> | 2021-02-03 00:52:47 -0500 |
---|---|---|
committer | Kelly Rauchenberger <fefferburbia@gmail.com> | 2021-02-03 00:52:47 -0500 |
commit | f449345e3aeb599eb497dfeeac7027cf4d1de515 (patch) | |
tree | f73bcf0bf9df4f5b173448447131078065844534 /src/game.cpp | |
parent | 17643b13c2b4b40464bd992765327be3dc364b74 (diff) | |
download | tanetane-f449345e3aeb599eb497dfeeac7027cf4d1de515.tar.gz tanetane-f449345e3aeb599eb497dfeeac7027cf4d1de515.tar.bz2 tanetane-f449345e3aeb599eb497dfeeac7027cf4d1de515.zip |
Pulled transform stuff into a system (starting to do ECS stuff)
Diffstat (limited to 'src/game.cpp')
-rw-r--r-- | src/game.cpp | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/src/game.cpp b/src/game.cpp index ebb792e..42dbd64 100644 --- a/src/game.cpp +++ b/src/game.cpp | |||
@@ -3,22 +3,10 @@ | |||
3 | int Game::addSprite(Sprite sprite) { | 3 | int Game::addSprite(Sprite sprite) { |
4 | int id = sprites_.size(); | 4 | int id = sprites_.size(); |
5 | sprites_.push_back(std::move(sprite)); | 5 | sprites_.push_back(std::move(sprite)); |
6 | spritesByY_.emplace(sprite.loc().y(), id); | 6 | spriteIds_.push_back(id); |
7 | return id; | 7 | return id; |
8 | } | 8 | } |
9 | 9 | ||
10 | void Game::moveSprite(int id, vec2i newLoc) { | ||
11 | Sprite& sprite = sprites_.at(id); | ||
12 | bool changedY = (sprite.loc().y() != newLoc.y()); | ||
13 | if (changedY) { | ||
14 | spritesByY_.erase(std::make_tuple(sprite.loc().y(), id)); | ||
15 | } | ||
16 | sprite.loc() = newLoc; | ||
17 | if (changedY) { | ||
18 | spritesByY_.emplace(newLoc.y(), id); | ||
19 | } | ||
20 | } | ||
21 | |||
22 | void Game::tick() { | 10 | void Game::tick() { |
23 | if (!cameraLocked_) { | 11 | if (!cameraLocked_) { |
24 | const Sprite& follow = getSprite(followingSprite_); | 12 | const Sprite& follow = getSprite(followingSprite_); |