#ifndef LEVELEXTINPUTDATA_H #define LEVELEXTINPUTDATA_H //一个关卡扩展输入参数 #include "ajson5.hpp" #include #include using std::vector; using std::string; struct LevelExtInputData { public: LevelExtInputData(); bool readFromFile(string filename) ; bool writeToFile(string filename) ; int _seed ; int _hasMovement ; string _firstMoveType ; // A1, B1,B2,B3, C1,C2... int _firstMoveLyrCnt ; int _firstMoveDirection; //0-fromRight2Left 1-fromLeft2Right string _secondMoveType ; int _secondMoveLyrCnt ; int _secondMoveDirection ; int _bigPlatePercent; //不移动盘子中大盘子百分比 int _midPlatePercent; //不移动盘子中中盘子百分比 int _lyr1Percent; //不移动盘子中有一层的盘子百分比 int _lyr2Percent; //不移动盘子中有两层的盘子百分比 int _lyr3Percent; //不移动盘子中有三层的盘子百分比 int _matchLyr1; //第一层可配百分比,第一层是点击层、第二层是可见层、第三层为隐藏层 int _matchLyr2; //第二层可配百分比 int _matchLyr3; //第三层可配百分比 //将关卡输入数据文件名转换为扩展参数文件名 Level9999_99.json to Level9999_99_ext.json string levelInputFilename2ExtFilename( string levelInputFilename ) ; }; #endif // LEVELEXTINPUTDATA_H