M_MainTaskCFG.h 1008 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #pragma once
  2. #include <boost/unordered_map.hpp>
  3. #include <vector>
  4. struct M_MainTaskCFGData
  5. {
  6. //任务ID
  7. int mID;
  8. //任务组
  9. int mGroup;
  10. //任务类型
  11. int mCompleteType;
  12. //炮倍解锁
  13. std::vector<int> mCannonFold;
  14. //名字
  15. std::string mName;
  16. //完成计数
  17. int mCompleteCount;
  18. //特殊参数,填0不生效。对任务捕获指定鱼需要填写
  19. std::vector<int> mCompleteParam;
  20. //后续任务id
  21. int mNextQuestID;
  22. //初始化
  23. int mDefault;
  24. //奖励物品ID
  25. std::vector<int> mAwardItemIDs;
  26. //奖励物品数量
  27. std::vector<int> mAwardItemCounts;
  28. //前往类型
  29. int mGoType;
  30. //搜索范围
  31. std::vector<int> mFindRand;
  32. //转化类型
  33. int mShowChangeType;
  34. };
  35. class M_MainTaskCFG
  36. {
  37. public:
  38. private:
  39. static std::auto_ptr<M_MainTaskCFG> msSingleton;
  40. public:
  41. int GetCount();
  42. const M_MainTaskCFGData* GetData(int ID);
  43. boost::unordered_map<int, M_MainTaskCFGData>& GetMapData();
  44. void Reload();
  45. void Load(const std::string& path);
  46. void Load();
  47. static M_MainTaskCFG* GetSingleton();
  48. private:
  49. boost::unordered_map<int, M_MainTaskCFGData> mMapData;
  50. };