41 lines
879 B
C++
41 lines
879 B
C++
#ifndef GAMESCREEN_H
|
|
#define GAMESCREEN_H
|
|
|
|
#include "Screen.h"
|
|
#include "../Renderer.h"
|
|
#include "../Assets.h"
|
|
#include "../Mesh.h"
|
|
#include "../Camera.h"
|
|
#include "../input/InputHandler.h"
|
|
|
|
#include <entityx/entityx.h>
|
|
|
|
class GameScreen : public Screen
|
|
{
|
|
public:
|
|
GameScreen(Renderer *renderer, Assets *assets);
|
|
~GameScreen();
|
|
|
|
virtual void hide() override;
|
|
virtual void pause() override;
|
|
virtual void render(unsigned int delta) override;
|
|
virtual void update(unsigned int delta) override;
|
|
virtual void resize() override;
|
|
virtual void resume() override;
|
|
virtual void show() override;
|
|
|
|
private:
|
|
//foreign managed lifetime
|
|
Renderer *renderer;
|
|
Assets *assets;
|
|
|
|
//Lifetime managed by class
|
|
InputHandler *inputHandler;
|
|
OrtographicCamera *camera;
|
|
Mesh *obj;
|
|
|
|
//Part of the class
|
|
entityx::EntityX ex;
|
|
};
|
|
|
|
#endif |