YAPOG  0.0.1
Yet Another Pokemon Online Game
Game.hpp
Go to the documentation of this file.
1 #ifndef YAPOG_CLIENT_GAME_HPP
2 # define YAPOG_CLIENT_GAME_HPP
3 
5 # include "YAPOG/System/Path.hpp"
7 
8 namespace yap
9 {
10  class ContentManager;
11  class ObjectFactory;
12  class WorldObjectStateFactory;
13  class GameInputManager;
14  class Logger;
15 } // namespace yap
16 
17 namespace ycl
18 {
19  class Session;
20 
21  class Game : public yap::Game
22  {
23  public:
24 
25  Game (const yap::String& name);
26  virtual ~Game ();
27 
28  virtual void HandleInit ();
29  virtual bool HandleOnEvent (const yap::GuiEvent& guiEvent);
30 
31  virtual void HandleRun (
32  const yap::Time& dt,
33  yap::IDrawingContext& context);
34 
35  virtual void HandleDispose ();
36 
37  static const yap::Vector2 SCREEN_SIZE;
38 
39  private:
40 
41  void InitRandom ();
42  void InitContentManager (const yap::Path& contentRootPath);
43  void InitObjectFactory ();
45  void InitGameInputManager ();
46  void InitDrawingContext (const yap::Vector2& resolution);
47  void InitScreenManager ();
48 
49  void InitLoggerManager ();
50 
52 
54 
57 
59 
61  };
62 } // namespace ycl
63 
64 #endif // YAPOG_CLIENT_GAME_HPP