diff --git a/inc/values/DnaManager.hpp b/inc/values/DnaManager.hpp index c6a1c16..d0993cb 100644 --- a/inc/values/DnaManager.hpp +++ b/inc/values/DnaManager.hpp @@ -29,6 +29,8 @@ public: int generation; private: + void saveData(); + void saveVec(); uint128 randSeed; uint128 id; int queued; diff --git a/src/values/DnaManager.cpp b/src/values/DnaManager.cpp index 5c149d6..3ffbd14 100644 --- a/src/values/DnaManager.cpp +++ b/src/values/DnaManager.cpp @@ -71,6 +71,10 @@ void DnaManager::init() } void DnaManager::deinit() +{ +} + +void DnaManager::saveData() { const char *filename = sys::transformFilePath("data"); @@ -92,9 +96,12 @@ void DnaManager::deinit() fwrite(disliked.data(), sizeof(tmp) * tmp, 1, file); fclose(file); +} - filename = sys::transformFilePath("array"); - file = fopen(filename, "wb"); +void DnaManager::saveVec() +{ + const char *filename = sys::transformFilePath("array"); + FILE *file = fopen(filename, "wb"); if (file == NULL) return; fwrite(vector.data(), sizeof(Dna) * NUM_PER_GEN, 1, file); @@ -143,7 +150,9 @@ void DnaManager::like(Unit unit) queued = 0; showed = 0; generation += 1; + saveVec(); } + saveData(); } void DnaManager::newGen()