X-Git-Url: http://git.localhorst.tv/?p=blobs.git;a=blobdiff_plain;f=src%2Fcreature%2FCreature.hpp;h=7c06cc81d876a1c1464552c4c38e1807db4bf221;hp=6c918270e540594bc18d0e19bd0240f80af50c80;hb=69dade793864169f7773cc133d54277eea9bf760;hpb=cd9cee86b336b5ec531028ac2deebb391e48ed21 diff --git a/src/creature/Creature.hpp b/src/creature/Creature.hpp index 6c91827..7c06cc8 100644 --- a/src/creature/Creature.hpp +++ b/src/creature/Creature.hpp @@ -3,6 +3,7 @@ #include "Genome.hpp" #include "Goal.hpp" +#include "Memory.hpp" #include "Need.hpp" #include "Situation.hpp" #include "Steering.hpp" @@ -76,6 +77,9 @@ public: void Remove() noexcept { removable = true; } bool Removable() const noexcept { return removable; } + Memory &GetMemory() noexcept { return memory; } + const Memory &GetMemory() const noexcept { return memory; } + void AddNeed(std::unique_ptr &&n) { needs.emplace_back(std::move(n)); } const std::vector> &Needs() const noexcept { return needs; } @@ -115,6 +119,8 @@ private: Callback on_death; bool removable; + Memory memory; + std::vector> needs; std::vector> goals;