#pragma once
#include <boost/unordered_map.hpp>
#include <vector>
struct Fish_BulletHeadCFGData
{
	//对应道具表id
	int mID;
	//名字
	std::string mName;
	//攻击模式
	int mAttackMode;
	//钻石价格
	int mGemPrice;
	//碎片价格
	int mBallPrice;
	//场景内使用鱼雷获取金币下限
	int mGoldKillMin;
	//场景内使用鱼雷获取金币上限
	int mGoldKillMax;
	//贡献阈值
	int mThreshold;
	//场景内使用鱼雷获取金币概率（有贡献值）
	std::vector<int> mRandParam;
	//场景内使用鱼雷获取金币概率
	std::vector<int> mNoContributeRandParam;
	//每日鱼雷buff
	std::vector<int> mEverydayBuff;
	//背包内使用鱼雷获取金币下限
	int mGoldUseMin;
	//背包内使用鱼雷获取金币上限
	int mGoldUseMax;
	//掉落话费数量
	std::vector<int> mTelephoneDrop;
	//发送跑马灯的条件,0表示不用发送
	int mNotifyMsgCond;
};

class Fish_BulletHeadCFG
{
public:
private:
	static std::auto_ptr<Fish_BulletHeadCFG> msSingleton;
public:
	int GetCount();
	const Fish_BulletHeadCFGData* GetData(int ID);
	boost::unordered_map<int, Fish_BulletHeadCFGData>& GetMapData();
	void Reload();
	void Load(const std::string& path);
	void Load();
	static Fish_BulletHeadCFG* GetSingleton();
private:
	boost::unordered_map<int, Fish_BulletHeadCFGData> mMapData;
};
