the game where you go into mines and start crafting! but for consoles (forked directly from smartcmd's github)
1#pragma once
2using namespace std;
3
4#include "LevelStorageSource.h"
5#include "File.h"
6
7class ProgressListener;
8class LevelData;
9class ConsoleSaveFile;
10
11class DirectoryLevelStorageSource : public LevelStorageSource
12{
13protected:
14 const File baseDir;
15
16public:
17 DirectoryLevelStorageSource(const File dir);
18 virtual wstring getName();
19 virtual vector<LevelSummary *> *getLevelList();
20 virtual void clearAll();
21 virtual LevelData *getDataTagFor(ConsoleSaveFile *saveFile, const wstring& levelId);
22 virtual void renameLevel(const wstring& levelId, const wstring& newLevelName);
23 virtual bool isNewLevelIdAcceptable(const wstring& levelId);
24 virtual void deleteLevel(const wstring& levelId);
25
26protected:
27 static void deleteRecursive(vector<File *> *files);
28
29public:
30 virtual shared_ptr<LevelStorage> selectLevel(ConsoleSaveFile *saveFile, const wstring& levelId, bool createPlayerDir);
31 virtual bool isConvertible(ConsoleSaveFile *saveFile, const wstring& levelId);
32 virtual bool requiresConversion(ConsoleSaveFile *saveFile, const wstring& levelId);
33 virtual bool convertLevel(ConsoleSaveFile *saveFile, const wstring& levelId, ProgressListener *progress);
34};