00001 #ifndef __GAME_H 00002 #define __GAME_H 00003 00004 #include "graphics.h" 00005 #include "object.h" 00006 #include "crosshair.h" 00007 #include "main_char.h" 00008 #include "sound.h" 00009 #include "input.h" 00010 #include "objmgr.h" 00011 #include "background.h" 00012 #include "subworld.h" 00013 00014 class Game { 00015 public: 00016 Game(Graphics &, Input &, Sound &); 00017 ~Game(); 00018 00019 // return true on exit 00020 bool step(); 00021 private: 00022 int GameLoop(); 00023 int RenderScreen(); 00024 00025 Graphics &GD; 00026 Input &ID; 00027 Sound &SD; 00028 00029 // Objects 00030 ObjectManager OM; 00031 00032 // boolean values 00033 bool exit; 00034 00035 SubWorld *currentSubWorld; 00036 00037 // Some sprites we need to be able to access quickly. 00038 Crosshair *crosshair; 00039 bool rapidfire; 00040 00041 MainChar *mainchar; 00042 00043 //the music for now NF 00044 //Music *theme; 00045 00046 //Something for the sound effects? Maybe a class for the game 00047 //is not a bad idea. 00048 //vector<Sample *> sEffects; 00049 float rotation; 00050 }; 00051 00052 #endif