M_RoomRewardCFG.h 792 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #pragma once
  2. #include <boost/unordered_map.hpp>
  3. #include <vector>
  4. struct M_RoomRewardCFGData
  5. {
  6. //编号
  7. int mID;
  8. //玩法
  9. int mType;
  10. //需求id
  11. int mNeedItem;
  12. //需求数量
  13. int mNeedCount;
  14. //普通奖励ID
  15. std::vector<int> mRewardItems;
  16. //普通奖励数量
  17. std::vector<int> mRewardCount;
  18. //礼包奖励ID
  19. std::vector<int> mGiftRewardItems;
  20. //礼包奖励数量
  21. std::vector<int> mGiftRewardCount;
  22. };
  23. class M_RoomRewardCFG
  24. {
  25. public:
  26. private:
  27. static std::auto_ptr<M_RoomRewardCFG> msSingleton;
  28. public:
  29. int GetCount();
  30. const M_RoomRewardCFGData* GetData(int ID);
  31. boost::unordered_map<int, M_RoomRewardCFGData>& GetMapData();
  32. void Reload();
  33. void Load(const std::string& path);
  34. void Load();
  35. static M_RoomRewardCFG* GetSingleton();
  36. private:
  37. boost::unordered_map<int, M_RoomRewardCFGData> mMapData;
  38. };