diff --git a/game/state/planet.hpp b/game/state/planet.hpp index 0407683..38f02b6 100644 --- a/game/state/planet.hpp +++ b/game/state/planet.hpp @@ -2,11 +2,38 @@ #include "object.hpp" +#include + namespace game { class Planet : public Object { public: - Planet(const glm::vec2 &pos, float r) : Object(pos, r) + /** + * Planets are build out of one material. + * TODO: support mixture or multiple material per planet. + */ + enum class Material { + Rock, + Metal, + Sand, + Gas, + Ice, + Water, + Sun + }; + + Planet(const glm::vec2 &pos, float r) : Planet(pos, r, Material::Rock) { } + + Planet(const glm::vec2 &pos, float r, Material mat) + : Object(pos, r) + , material(mat) + , seed(rand()) + { + } + + // nice for rendering attributes + Material material; + int seed; }; }