/* * BrimstoneEngine.h * Jonathan Boldiga * 09/02/03 * * Description: Main interface to the Brimstone Engine. * */ #ifndef __BRIMSTONENGINE_H__ #define __BRIMSTONENGINE_H__ #define WIN32_LEAN_AND_MEAN #define WIN32_EXTRA_LEAN #include #include #include #include "Engine.h" #include "Object.h" #include "Camera.h" #include "Terrain.h" #include "World.h" class BrimstoneEngine : public Engine{ private: Camera* gameCamera; World* gameWorld; protected: Camera* onGetCamera(){ return gameCamera; } World* onGetWorld() { return gameWorld; } void onPrepare(); void onMouseDownL(float x, float y); void onMouseMove(int deltaX, int deltaY); void onMouseMove(int x, int y, int centerX, int centerY); void onKeyDown(int nVirtKey); public: BrimstoneEngine(){ gameCamera = new Camera; gameWorld = new World; } BrimstoneEngine(const char *szName, bool fscreen, int w, int h, int b) : Engine(szName, fscreen, w, h, b){ gameCamera = new Camera; gameWorld = new World(gameCamera); gameCamera->centerX = centerX; gameCamera->centerY = centerY; gameWorld->SetScreen(w,h); } ~BrimstoneEngine(){ delete gameWorld; delete gameCamera; gameWorld = NULL; gameCamera = NULL; } }; #endif