summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/game_state.h21
-rw-r--r--include/spacebot.h10
2 files changed, 26 insertions, 5 deletions
diff --git a/include/game_state.h b/include/game_state.h
new file mode 100644
index 0000000..abb2efa
--- /dev/null
+++ b/include/game_state.h
@@ -0,0 +1,21 @@
+#pragma once
+
+#include "alien.h"
+#include "enemy_bullet.h"
+#include "player_missile.h"
+#include "shield.h"
+#include "spaceship.h"
+#include <vector>
+#include <iostream>
+
+class GameState
+{
+public:
+ GameState(const std::istream& mapFile){}
+private:
+ std::vector<Alien> aliens;
+ std::vector<EnemyBullet> bullets;
+ std::vector<PlayerMissile> missiles;
+ std::vector<Shield> shields;
+ std::vector<Spaceship> spaceships;
+};
diff --git a/include/spacebot.h b/include/spacebot.h
index a5c23c2..b152197 100644
--- a/include/spacebot.h
+++ b/include/spacebot.h
@@ -1,16 +1,16 @@
#pragma once
-#include <iostream>
-#include <fstream>
+#include <string>
#include "move.h"
+#include "game_state.h"
class Spacebot {
public:
- Spacebot(const std::string& outputPath);
+ Spacebot(std::string outputPath);
void writeNextMove();
private:
- std::ifstream mapStream;
- std::ofstream resultStream;
+ std::string outputPath;
+ GameState gameState;
void writeMove(const Move& move);
Move chooseMove();
};