M_SevenDayActivityCFG.h 978 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #pragma once
  2. #include <boost/unordered_map.hpp>
  3. #include <vector>
  4. struct M_SevenDayActivityCFGData
  5. {
  6. //任务ID
  7. int mID;
  8. //名字
  9. std::string mName;
  10. //描述
  11. std::string mDesc;
  12. //分类
  13. int mClass;
  14. //第几天
  15. int mDay;
  16. //完成条件类型
  17. int mCompleteType;
  18. //完成计数
  19. int mCompleteCount;
  20. //特殊参数
  21. int mCompleteParam;
  22. //奖励物品ID
  23. std::vector<int> mAwardItemIDs;
  24. //奖励物品数量
  25. std::vector<int> mAwardItemCounts;
  26. //组合的主任务ID
  27. int mCombinationQuestID;
  28. //组合的子任务ID(客户端显示用)
  29. std::vector<int> mCombinationQuests;
  30. };
  31. class M_SevenDayActivityCFG
  32. {
  33. public:
  34. private:
  35. static std::auto_ptr<M_SevenDayActivityCFG> msSingleton;
  36. public:
  37. int GetCount();
  38. const M_SevenDayActivityCFGData* GetData(int ID);
  39. boost::unordered_map<int, M_SevenDayActivityCFGData>& GetMapData();
  40. void Reload();
  41. void Load(const std::string& path);
  42. void Load();
  43. static M_SevenDayActivityCFG* GetSingleton();
  44. private:
  45. boost::unordered_map<int, M_SevenDayActivityCFGData> mMapData;
  46. };