1 #ifndef __GAME_H 2 #define __GAME_H 3 4 #include <SDL.h> 5 #include <string> 6 7 using namespace std; 8 9 class ActorManager; 10 class RenderManager; 11 class TimeManager; 12 class ControlManager; 13 class CollisionManager; 14 class FontManager; 15 class Collision; 16 17 //Clase principal donde se mantiene todos los manager 18 //Se modifica la main que es donde empieza el juego 19 class Game 20 { 21 public: 22 Game(); 23 virtual ~Game(); 24 25 ActorManager *actormanager; 26 RenderManager *rendermanager; 27 TimeManager *timemanager; 28 ControlManager *controlmanager; 29 CollisionManager *collisionmanager; 30 FontManager *fontmanager; 31 32 virtual int init(int w,int h,int col); 33 virtual void main(); 34 void setName(const string name); getName()35 string getName()const{return name;} 36 void setIcon(const string icon); getIcon()37 string getIcon()const{return icon;} 38 39 void setEnd(int v=0){end=1;returnvalue=v;} 40 typedef int team_t; 41 getCollision(Collision & c)42 virtual void getCollision(Collision &c){} 43 44 protected: 45 bool end; 46 int returnvalue; 47 string name; 48 string icon; load()49 virtual void load(){} logicgame()50 virtual void logicgame(){} unload()51 virtual void unload(){} 52 53 private: 54 void start(); 55 void shutdown(string message="Gracias por jugar"); 56 void update(); 57 virtual void create_actormanager(); 58 virtual void create_rendermanager(int w,int h,int col); 59 virtual void create_timemanager(); 60 virtual void create_controlmanager(); 61 virtual void create_collisionmanager(); 62 virtual void create_fontmanager(); 63 }; 64 65 #endif 66