aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/headers/Scene.hpp
blob: b7a46e6a9ddc1f45d6465cb4f678d43ce9128953 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#ifndef SCENE_HPP
#define SCENE_HPP

#include <SFML/Graphics.hpp>

class Scene
{
public:
    constexpr static float MAX_ZOOM = 10;
    constexpr static float MIN_ZOOM = .1;

    virtual void render() = 0;
    virtual void resize(const sf::Event::SizeEvent &size) = 0;

    virtual void zoom(float factor) {}

protected:
    float _zoom = 1;
    sf::RenderWindow &_window;

    Scene(sf::RenderWindow &window) : _window(window) {}
};

#endif