#ifndef DFRPG_H #define DFRPG_H #include "datafile.h" #include #include "common.h" struct Skill : public Named { std::string /*name*/ symbol, description; std::string multiplier; std::vector statNames; }; struct Group { std::string name, description; std::vector skills; }; struct ItemTag { std::string name, description; }; typedef std::vector SyllableLine; struct Syllables { std::vector first, mid, end; }; class DFRpg : public DataFile { public: std::vector itemTags; Syllables syllables; protected: bool LoadSingle(std::ifstream*, Group*); bool ParseSkill(std::ifstream*, Group*); void LoadItemTags(std::ifstream*); void LoadSyllables(std::ifstream*); public: ~DFRpg(); void Save(); void SaveSkill(std::ofstream&, Skill*); void SaveItemTags(std::ofstream&); void SaveSyllables(std::ofstream&); }; #endif // DFRPG_H