1 #ifndef GAME_STATES_BATTLESTATE_HPP
2 #define GAME_STATES_BATTLESTATE_HPP
22 ,
public bl::event::Listener<core::event::OpenPeoplemonMenu, core::event::OpenBagMenu> {
32 std::unique_ptr<core::battle::Battle>&& battle);
42 virtual const char*
name()
const override;
47 virtual void activate(bl::engine::Engine&)
override;
52 virtual void deactivate(bl::engine::Engine&)
override;
59 virtual void update(bl::engine::Engine&,
float dt,
float)
override;
62 std::unique_ptr<core::battle::Battle> battle;
63 bl::rc::SceneRef scene;
Parent namespace for all functionality unique to the game.
Event that is fired when the bag menu should be opened.
Special event to trigger the opening of the peoplemon menu.
Owns all primary systems and a reference to the engine.
This game state does all battling. When the battle is complete it will pop itself from the engine sta...
virtual const char * name() const override
Returns "BattleState".
virtual void deactivate(bl::engine::Engine &) override
Does nothing.
static bl::engine::State::Ptr create(core::system::Systems &systems, std::unique_ptr< core::battle::Battle > &&battle)
Creates a new BattleState.
virtual void activate(bl::engine::Engine &) override
Does nothing.
virtual ~BattleState()=default
Destroy the Battle State object.
virtual void update(bl::engine::Engine &, float dt, float) override
Calls into the battle's update method.
Parent to all game states. Provides some commonly required data like core game systems.
core::system::Systems & systems