#include "game.h"
+#include "debug.h"
+
+#include <vector>
+using std::vector;
+
+#include "entityCreator.h"
+#include "effectManager.h"
#include "GameStates/GameState.h"
#include "GameStates/Running.h"
#include "GameStates/Paused.h"
#include "GameStates/CreatingPolygon.h"
-#include <vector>
-using std::vector;
-
-
/// ***** Private Variables *****
// The stack of active game states
running = new Running();
paused = new Paused();
creating_Polygon = new CreatingPolygon();
+
+ // create starting entities
+ creator::init();
+
+ active_States.push_back(running);
+
+ effect::init();
+
+#ifdef DEBUGGING
+ cout << "World Created" << endl;
+#endif
}
void gameClean()
{
+ effect::clean();
+
+ creator::clean();
+
delete creating_Polygon;
delete paused;
delete running;
void gameInput()
{
- int size = active_States.size();
+ int last = active_States.size() -1;
for( int i = 0;
- i < size;
+ i <= last;
i++ )
{
- if( i-1 == size )
+ if( i == last )
active_States[i]->handleInput(true);
else
active_States[i]->handleInput(false);
}
-
}
void gameUpdate(float time_step)
{
- int size = active_States.size();
+ int last = active_States.size() -1;
for( int i = 0;
- i < size;
+ i <= last;
i++ )
{
- if( i-1 == size )
+ if( i == last )
active_States[i]->update(time_step, true);
else
active_States[i]->update(time_step, false);
void gameDraw()
{
- int size = active_States.size();
+ int last = active_States.size() -1;
for( int i = 0;
- i < size;
+ i <= last;
i++ )
{
- if( i-1 == size )
+ if( i == last )
active_States[i]->draw(true);
else
active_States[i]->draw(false);