M_DropCFG.h 667 B

12345678910111213141516171819202122232425262728293031323334353637
  1. #pragma once
  2. #include <boost/unordered_map.hpp>
  3. #include <vector>
  4. struct M_DropCFGData
  5. {
  6. //ID
  7. int mID;
  8. //掉落类型
  9. int mType;
  10. //掉落组
  11. std::vector<int> mdropInfo;
  12. //开始炮倍
  13. int mstarRate;
  14. //结束炮倍
  15. int mEndRate;
  16. //随机数量
  17. std::vector<int> mDropCount;
  18. //其他类型
  19. int mOtherTypes;
  20. };
  21. class M_DropCFG
  22. {
  23. public:
  24. private:
  25. static std::auto_ptr<M_DropCFG> msSingleton;
  26. public:
  27. int GetCount();
  28. const M_DropCFGData* GetData(int ID);
  29. boost::unordered_map<int, M_DropCFGData>& GetMapData();
  30. void Reload();
  31. void Load(const std::string& path);
  32. void Load();
  33. static M_DropCFG* GetSingleton();
  34. private:
  35. boost::unordered_map<int, M_DropCFGData> mMapData;
  36. };