Peoplemon  0.1.0
Peoplemon 3 game source documentation
WildPeoplemon.hpp
Go to the documentation of this file.
1 #ifndef CORE_SYSTEMS_WILDPEOPLEMON_HPP
2 #define CORE_SYSTEMS_WILDPEOPLEMON_HPP
3 
4 #include <BLIB/Events.hpp>
7 
8 namespace core
9 {
10 namespace system
11 {
12 class Systems;
13 
20 class WildPeoplemon : bl::event::Listener<event::EntityMoveFinished> {
21 public:
27  WildPeoplemon(Systems& owner);
28 
33  void init();
34 
38  void startDebugBattle();
39 
40 private:
41  Systems& owner;
42  pplmn::OwnedPeoplemon currentWild;
43 
44  virtual void observe(const event::EntityMoveFinished& event) override;
45  void startBattle();
46 };
47 
48 } // namespace system
49 } // namespace core
50 
51 #endif
Core classes and functionality for both the editor and game.
Fired when an entity completes a move from one tile to another.
Definition: EntityMoved.hpp:52
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.
Definition: Systems.hpp:47
Manages the appearances of wild peoplemon when walking through catch tiles.
void init()
Subscribes to the game event bus.
void startDebugBattle()
Starts a wild Peoplemon battle for debugging.
WildPeoplemon(Systems &owner)
Construct a new Wild Peoplemon system.