]> git.localhorst.tv Git - blobs.git/blobdiff - src/creature/Genome.hpp
split creature when it's "ripe" lol
[blobs.git] / src / creature / Genome.hpp
index 4437150a6ef6e2a15163698117a29f5aa3c72536..057c6609915abc0cece270fbdb197a426215eb41 100644 (file)
@@ -16,19 +16,37 @@ class Creature;
 
 struct Genome {
 
+       template<class T>
+       struct Properties {
+               T birth_mass;
+               T fertile_mass;
+               T max_mass;
+
+               T fertile_age;
+               T infertile_age;
+               T death_age;
+
+               T fertility;
+       };
+       Properties<math::Distribution> properties;
+
+
        struct Composition {
                // which resource
                int resource;
                // how much contained in the body
+               // relative value to determine average density
                math::Distribution mass;
                // how much to circulate
                math::Distribution intake;
                // how important for alive-being
                math::Distribution penalty;
+               // how much off the mass may stay in the body
+               math::Distribution growth;
        };
        std::vector<Composition> composition;
 
-       void Configure(app::Assets &, Creature &) const;
+       void Configure(Creature &) const;
 
 };