Fish_TurretSetCFG.h 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. #pragma once
  2. #include <boost/unordered_map.hpp>
  3. #include <vector>
  4. struct Fish_TurretSetCFGData
  5. {
  6. //ID
  7. int mID;
  8. //套装ID
  9. int mSetID;
  10. //炮台套装
  11. std::string mName;
  12. //最低倍率
  13. int mMinRate;
  14. //最大倍率
  15. int mMaxRate;
  16. //品级
  17. int mGrade;
  18. //Vip等级解锁
  19. int mVipClear;
  20. //Vip等级获取
  21. int mVipGet;
  22. //物品ID
  23. std::vector<int> mItemID;
  24. //效果类型
  25. std::vector<int> mEffectType;
  26. //随机属性
  27. std::vector<int> mRandomEffect;
  28. //炮台
  29. int mTurretID;
  30. //射速
  31. int mVelocity;
  32. //普通鱼命中
  33. int mLockingPower;
  34. //Boss鱼命中
  35. int mRagePower;
  36. //子弹
  37. int mSelfBulletID;
  38. //子弹
  39. int mOtherBulletID;
  40. //大招子弹
  41. int mPowerBulletID;
  42. //增加金额
  43. int mAddRate;
  44. //最大能量
  45. int mMaxPower;
  46. //大招效果
  47. int mPowerBuff;
  48. //发炮间隔(毫秒)
  49. int mFireSpeed;
  50. //道具使用期间发炮间隔(毫秒)
  51. std::vector<int> mFireItemSpeed;
  52. //获取路径
  53. int mRoute;
  54. //最高等级
  55. int mTopLevel;
  56. //升级所需道具ID
  57. int mLvUpItem;
  58. //升级所需道具数量
  59. int mLvUpCount;
  60. //重置返还数量
  61. std::vector<int> mResetReturnCount;
  62. //炮台强化等级
  63. std::vector<int> mBatteryLv;
  64. //对应炮倍技能ID
  65. std::vector<int> mMultipleUpper;
  66. //升级加成
  67. std::vector<int> mAddValue;
  68. };
  69. class Fish_TurretSetCFG
  70. {
  71. public:
  72. private:
  73. static std::auto_ptr<Fish_TurretSetCFG> msSingleton;
  74. public:
  75. int GetCount();
  76. const Fish_TurretSetCFGData* GetData(int ID);
  77. boost::unordered_map<int, Fish_TurretSetCFGData>& GetMapData();
  78. void Reload();
  79. void Load(const std::string& path);
  80. void Load();
  81. static Fish_TurretSetCFG* GetSingleton();
  82. private:
  83. boost::unordered_map<int, Fish_TurretSetCFGData> mMapData;
  84. };