-
Notifications
You must be signed in to change notification settings - Fork 0
/
Game.cpp
71 lines (54 loc) · 1.22 KB
/
Game.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
#include "StdAfx.h"
#include "Game.h"
using RustyLib::Input::Keyboard;
using RustyLib::Framework::ScreenManagement::ScreenManager;
using RustyLib::Framework::ScreenManagement::Screen;
#include "Asteroid.h"
#include "SplashScreen.h"
#include "StarField.h"
Game::Game(void)
:star_field(0)
{
}
Game::~Game(void)
{
}
Error Game::Initialise(void )
{
//Get asteroids to read in their stuff
if(Asteroid::ClassInitialise())
{
return Error::RL_ERROR;
}
//Set up the various items needed
//star_field = new StarField();
//star_field->Initialise(Vector3::VectorZero(), Vector3(800.0f,600.0f,1.0f), 500);
SplashScreen *start_screen = new SplashScreen();
ScreenManager::Instance().ChangeScreen(start_screen);
return Error::RL_NO_ERROR;
}
Error Game::Exit(void )
{
//star_field->Exit();
delete star_field;
return Error::RL_NO_ERROR;
}
void Game::Update(float time_step)
{
if(Keyboard::IsKeyDown(RustyLib::Input::KeyCode::Escape))
{
//Figure out how to quit program
exit(0);
}
else
{
ScreenManager::Instance().Update(time_step);
//star_field->Update(time_step);
}
}
void Game::Render(void )
{
//Render starfield first to make sure it is in the background
//star_field->Render();
ScreenManager::Instance().Render();
}