2000-08-29 21:54:22 +02:00
|
|
|
/**********************/
|
|
|
|
/*** Main Game File ***/
|
|
|
|
/**********************/
|
|
|
|
|
|
|
|
#ifndef __GAME_GAME_H__
|
|
|
|
#define __GAME_GAME_H__
|
|
|
|
|
2000-12-07 16:56:20 +01:00
|
|
|
#include "system\gstate.h"
|
|
|
|
#include "level\level.h"
|
2000-08-29 21:54:22 +02:00
|
|
|
|
2001-01-16 21:55:44 +01:00
|
|
|
#ifndef __GAME_EVENT_H__
|
|
|
|
#include "game\event.h"
|
|
|
|
#endif
|
|
|
|
|
2000-08-29 21:54:22 +02:00
|
|
|
/*****************************************************************************/
|
2000-12-07 16:56:20 +01:00
|
|
|
class FontBank;
|
2001-04-04 02:16:26 +02:00
|
|
|
class SpriteBank;
|
2000-08-29 21:54:22 +02:00
|
|
|
class CGameScene : public CScene
|
|
|
|
{
|
|
|
|
public:
|
2001-01-15 16:22:33 +01:00
|
|
|
CGameScene() {;}
|
|
|
|
virtual ~CGameScene() {;}
|
2000-08-29 21:54:22 +02:00
|
|
|
|
|
|
|
|
2001-01-15 16:22:33 +01:00
|
|
|
void init();
|
2001-02-09 18:01:04 +01:00
|
|
|
virtual void createPlayer();
|
2001-02-12 18:24:58 +01:00
|
|
|
virtual int canPause();
|
2001-01-15 16:22:33 +01:00
|
|
|
void shutdown();
|
|
|
|
void render();
|
|
|
|
void think(int _frames);
|
|
|
|
int readyToShutdown();
|
|
|
|
char *getSceneName() {return "Game";}
|
2000-08-29 21:54:22 +02:00
|
|
|
|
2001-04-17 22:57:00 +02:00
|
|
|
// static MATRIX *GetCamMtx() {return(&CamMtx);}
|
2001-01-16 20:00:08 +01:00
|
|
|
class CPlayer *getPlayer();
|
2001-02-27 17:59:50 +01:00
|
|
|
void sendEvent( GAME_EVENT evt, class CThing *sourceThing );
|
2001-02-12 18:18:17 +01:00
|
|
|
|
|
|
|
static void setReadyToExit() {s_readyToExit=true;}
|
2001-03-05 21:01:25 +01:00
|
|
|
static void levelFinished() {s_levelFinished=true;}
|
2000-08-29 21:54:22 +02:00
|
|
|
|
2001-02-09 18:01:04 +01:00
|
|
|
protected:
|
2000-08-29 21:54:22 +02:00
|
|
|
|
2001-03-06 23:14:15 +01:00
|
|
|
void initLevel();
|
2001-04-03 23:28:56 +02:00
|
|
|
void shutdownLevel(bool CleanUp);
|
2001-03-06 23:14:15 +01:00
|
|
|
|
2001-04-17 22:57:00 +02:00
|
|
|
void AspectCorrectCamera();
|
|
|
|
|
2001-02-09 22:41:55 +01:00
|
|
|
CLevel Level;
|
|
|
|
class CPauseMenu *m_pauseMenu;
|
|
|
|
class CPlayer *m_player;
|
2001-01-22 21:57:39 +01:00
|
|
|
static FontBank *s_genericFont;
|
|
|
|
static MATRIX CamMtx;
|
2001-02-12 18:18:17 +01:00
|
|
|
|
|
|
|
static int s_readyToExit;
|
2001-03-05 21:01:25 +01:00
|
|
|
static int s_levelFinished;
|
2000-10-31 17:41:02 +01:00
|
|
|
|
2000-08-29 21:54:22 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/*****************************************************************************/
|
|
|
|
extern CGameScene GameScene;
|
|
|
|
|
|
|
|
/*****************************************************************************/
|
|
|
|
|
|
|
|
#endif
|