From b628c80f988c1fb250b94b17dca8e082bc4c1d0b Mon Sep 17 00:00:00 2001 From: Kelly Rauchenberger Date: Tue, 2 Feb 2021 16:51:22 -0500 Subject: Added moving camera --- src/game.h | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'src/game.h') diff --git a/src/game.h b/src/game.h index 2c1680a..a717d53 100644 --- a/src/game.h +++ b/src/game.h @@ -7,6 +7,7 @@ #include #include "sprite.h" #include "map.h" +#include "consts.h" struct Input { bool left = false; @@ -60,11 +61,31 @@ public: const Map& getMap() const { return *map_; } + // Camera + + const vec2i& getCameraPosition() const { return cameraPos_; } + + const vec2i& getFieldOfView() const { return cameraFov_; } + + void setFollowingSprite(int spriteId) { followingSprite_ = spriteId; } + + void lockCamera() { cameraLocked_ = true; } + + void unlockCamera() { cameraLocked_ = false; } + + void tick(); + private: std::vector sprites_; std::set> spritesByY_; std::unique_ptr map_; + + // Camera + vec2i cameraPos_; + vec2i cameraFov_ { CANVAS_WIDTH, CANVAS_HEIGHT }; + int followingSprite_; + bool cameraLocked_ = true; }; #endif /* end of include guard: GAME_H_E6F1396E */ -- cgit 1.4.1