1 #ifndef GAME_STATES_MAP_EXPLORER_HPP
2 #define GAME_STATES_MAP_EXPLORER_HPP
4 #include <BLIB/Cameras.hpp>
20 ,
public bl::event::Listener<sf::Event> {
40 virtual const char*
name()
const override;
47 virtual void activate(bl::engine::Engine& engine)
override;
54 virtual void deactivate(bl::engine::Engine& engine)
override;
62 virtual void update(bl::engine::Engine& engine,
float dt,
float)
override;
65 enum HintState { Hidden, Showing, Fading };
67 bl::gfx::Rectangle hintBox;
68 bl::gfx::Text hintText;
74 virtual void observe(
const sf::Event& event)
override;
Parent namespace for all functionality unique to the game.
Owns all primary systems and a reference to the engine.
Debug only state that allows free roaming the map with a special camera.
static bl::engine::State::Ptr create(core::system::Systems &systems)
Creates a new MapExplorer state.
virtual void update(bl::engine::Engine &engine, float dt, float) override
Updates the game world logic and the hint fadeout.
virtual ~MapExplorer()=default
Destroy the Map Explorer state.
virtual const char * name() const override
Returns "MapExplorer".
virtual void deactivate(bl::engine::Engine &engine) override
Reconnects the player to their entity and pops the camera.
virtual void activate(bl::engine::Engine &engine) override
Activates the state and camera. Disconnects the player from their entity.
Parent to all game states. Provides some commonly required data like core game systems.
core::system::Systems & systems