1 #ifndef GAME_STATE_EVOLUTION_HPP
2 #define GAME_STATE_EVOLUTION_HPP
4 #include <BLIB/Graphics.hpp>
5 #include <BLIB/Particles.hpp>
20 ,
public bl::input::Listener {
33 const char*
name()
const override;
40 virtual void activate(bl::engine::Engine& engine)
override;
47 virtual void deactivate(bl::engine::Engine& engine)
override;
55 virtual void update(bl::engine::Engine& engine,
float dt,
float)
override;
68 bl::rc::res::TextureRef bgndTxtr;
69 bl::rc::res::TextureRef oldTxtr;
70 bl::rc::res::TextureRef newTxtr;
71 bl::gfx::Sprite background;
72 bl::gfx::Sprite oldThumb;
73 bl::gfx::Sprite newThumb;
75 enum struct AnimState {
86 AnimState cancelPriorState;
87 bl::pcl::ParticleManager<Spark>* sparks;
96 void onCancelConfirm(
const std::string& choice);
97 virtual bool observe(
const bl::input::Actor&,
unsigned int ctrl, bl::input::DispatchType,
98 bool fromEvent)
override;
Parent namespace for all functionality unique to the game.
Represents an instance of a peoplemon. Can be a wild peoplemon, trainer, or player peoplemon....
Owns all primary systems and a reference to the engine.
Game state for when a Peoplemon evolves into another one.
virtual void activate(bl::engine::Engine &engine) override
Subscribes to player input.
static bl::engine::State::Ptr create(core::system::Systems &systems, core::pplmn::OwnedPeoplemon &ppl)
const char * name() const override
Returns "Evolution".
virtual ~Evolution()=default
Destroy the Evolution state.
virtual void update(bl::engine::Engine &engine, float dt, float) override
Updates the evolution process.
virtual void deactivate(bl::engine::Engine &engine) override
Unsubscribes from player input.
Parent to all game states. Provides some commonly required data like core game systems.
core::system::Systems & systems