summary refs log tree commit diff stats
path: root/src/game.cpp
diff options
context:
space:
mode:
authorKelly Rauchenberger <fefferburbia@gmail.com>2021-02-03 00:52:47 -0500
committerKelly Rauchenberger <fefferburbia@gmail.com>2021-02-03 00:52:47 -0500
commitf449345e3aeb599eb497dfeeac7027cf4d1de515 (patch)
treef73bcf0bf9df4f5b173448447131078065844534 /src/game.cpp
parent17643b13c2b4b40464bd992765327be3dc364b74 (diff)
downloadtanetane-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.cpp14
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 @@
3int Game::addSprite(Sprite sprite) { 3int 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
10void 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
22void Game::tick() { 10void Game::tick() {
23 if (!cameraLocked_) { 11 if (!cameraLocked_) {
24 const Sprite& follow = getSprite(followingSprite_); 12 const Sprite& follow = getSprite(followingSprite_);