]> git.localhorst.tv Git - blobs.git/blobdiff - src/world/Resource.hpp
ingest forgein materials
[blobs.git] / src / world / Resource.hpp
index 5dd383442952b53e7ee9783288840c1ad1d534dd..17df3244955e55e58b2a540666e02f70ad1f0a84 100644 (file)
@@ -1,6 +1,9 @@
 #ifndef BLOBS_WORLD_RESOURCE_HPP_
 #define BLOBS_WORLD_RESOURCE_HPP_
 
+#include "../math/glm.hpp"
+
+#include <map>
 #include <string>
 
 
@@ -9,10 +12,28 @@ namespace world {
 
 struct Resource {
 
-       std::string name;
-       std::string label;
+       std::string name = "";
+       std::string label = "";
+
+       double density = 1.0;
+       double energy = 1.0;
+       double inverse_energy = 1.0;
+
+       int id = -1;
+
+       enum State {
+               SOLID = 0,
+               LIQUID = 1,
+               GAS = 2,
+               PLASMA = 3,
+       };
+       // the resource's natural state
+       // TODO: something about temperature and pressure and stuff
+       int state = SOLID;
+
+       glm::dvec3 base_color = glm::dvec3(1.0);
 
-       int id;
+       std::map<int, double> compatibility;
 
 };