Fish_RoomCFG.h 2.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. #pragma once
  2. #include <boost/unordered_map.hpp>
  3. #include <vector>
  4. struct Fish_RoomCFGData
  5. {
  6. //房间id
  7. int mRoomID;
  8. //房间类型
  9. int mRoomType;
  10. //房间名
  11. std::string mRoomName;
  12. //房间图片
  13. std::string mRoomImage;
  14. //房间名字
  15. std::string mArmatureName;
  16. //房间路径
  17. std::string mArmaturePath;
  18. //出鱼配置
  19. std::string mOutFishConfig;
  20. //鱼阵配置
  21. std::string mLargetFishConfig;
  22. //BOSS鱼阵
  23. int mBOSSID;
  24. //普通刷鱼时间(秒)
  25. int mNormalOutFishTime;
  26. //特殊BOSSID
  27. int mSpecialBoss;
  28. //BOSS路径分组
  29. int mBossGroup;
  30. //金币条件
  31. int mGoldCondition;
  32. //vip条件
  33. int mVipCondition;
  34. //场次顺序
  35. int mOrder;
  36. //礼券条件
  37. int mTicketCondition;
  38. //解锁礼包到达等级
  39. int mLockBagLv;
  40. //等级条件
  41. int mLevelCondition;
  42. //机器人最少金币
  43. int mRobotMinGold;
  44. //机器人最多金币
  45. int mRobotMaxGold;
  46. //最低倍率
  47. int mMinRate;
  48. //最大倍率
  49. int mMaxRate;
  50. //是否开放高炮
  51. int mSkillTurret;
  52. //倍率列表
  53. std::vector<int> mRateList;
  54. //桌子数
  55. int mTableCount;
  56. //时间检测
  57. std::string mTimeCheck;
  58. //红包次数
  59. int mRedPackage;
  60. //红包数量
  61. std::vector<int> mRedQuantity;
  62. //是否显示
  63. bool mIsShow;
  64. //是否开放
  65. bool mIsOpen;
  66. //能量系数
  67. int mPowerParam;
  68. //购买能量消耗
  69. int mBuyPowerCost;
  70. //导弹倍率
  71. int mMissileRate;
  72. //导弹消耗
  73. int mMissileCost;
  74. //开启保护
  75. bool mOpenProtect;
  76. //是否可以获得捕鱼经验
  77. bool mExpGet;
  78. //是否可以换桌
  79. bool mChangeTable;
  80. //提示离开房间等级
  81. int mWarnLeaveLv;
  82. //不可进入等级
  83. int mNoEnterLv;
  84. //期望盈利率千分比
  85. int mWinRateAverage;
  86. //最大盈利率
  87. int mWinRateMax;
  88. //最小盈利率
  89. int mWinRateMin;
  90. //盈利率起始控制值
  91. int mWinRateCtrValue;
  92. //场景id列表
  93. std::vector<int> mSceneIds;
  94. //开放时间
  95. std::vector<int> mOpenTime;
  96. //免费锁定道具ID
  97. std::vector<int> mFreeLockId;
  98. //免费狂暴道具ID
  99. std::vector<int> mFreeViolentId;
  100. };
  101. class Fish_RoomCFG
  102. {
  103. public:
  104. private:
  105. static std::auto_ptr<Fish_RoomCFG> msSingleton;
  106. public:
  107. int GetCount();
  108. const Fish_RoomCFGData* GetData(int RoomID);
  109. boost::unordered_map<int, Fish_RoomCFGData>& GetMapData();
  110. void Reload();
  111. void Load(const std::string& path);
  112. void Load();
  113. static Fish_RoomCFG* GetSingleton();
  114. private:
  115. boost::unordered_map<int, Fish_RoomCFGData> mMapData;
  116. };