M_MainTaskCFG.h 956 B

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