/*
* 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