/* Level class module stores information of the generation of Block(s) */ #ifndef _LEVEL_H_ #define _LEVEL_H_ #include #include #include #include #include class Level { int level; bool isRandom; std::string defaultFile; std::ifstream defaultStream; std::string sequenceFile; std::ifstream sequenceStream; static std::default_random_engine generator; static std::map> distributions; static std::map blockTypes; public: static const int MAX_LEVEL; static const int MIN_LEVEL; Level(int level, int seed, std::string file = ""); ~Level(); char nextBlock(); void setRandom(bool active); void setSequence(std::string file); void levelUp(); void levelDown(); }; #endif