00001 #ifndef HEADER_DEMOMODE_H 00002 #define HEADER_DEMOMODE_H 00003 00004 class Picture; 00005 class DemoInput; 00006 00007 #include "Path.h" 00008 #include "GameState.h" 00009 #include "Planner.h" 00010 #include "Drawable.h" 00011 00012 /** 00013 * Graphic demo. 00014 */ 00015 class DemoMode : public Planner, public GameState, public Drawable { 00016 private: 00017 int m_oldLimitY; 00018 Path m_demoscript; 00019 SDL_Surface *m_surfaceBuffer; 00020 Picture *m_display; 00021 protected: 00022 virtual void own_initState(); 00023 virtual void own_updateState(); 00024 virtual void own_pauseState() {} 00025 virtual void own_resumeState() {} 00026 virtual void own_cleanState(); 00027 public: 00028 DemoMode(const Path &demoscript); 00029 virtual ~DemoMode(); 00030 virtual const char *getName() const { return "state_demo"; }; 00031 00032 bool action_display(Picture *picture); 00033 virtual void drawOn(SDL_Surface *screen); 00034 }; 00035 00036 #endif