#pragma once
#include <boost/unordered_map.hpp>
#include <vector>
struct Fish_TurretWingCFGData
{
	//ID
	int mID;
	//翅膀名称
	std::string mName;
	//效果类型
	std::vector<int> mEffectType;
	//翅膀
	std::string mWingRES;
	//物品ID
	std::vector<int> mItemID;
	//获取路径
	int mRoute;
	//最高等级
	int mTopLevel;
	//升级所需道具ID
	int mLvUpItem;
	//升级所需道具数量
	int mLvUpCount;
	//随机属性所需道具ID
	int mRandItem;
	//随机属性所需道具数量
	int mRandItemCount;
	//重置返还数量
	std::vector<int> mResetReturnCount;
	//重随最高次数
	int mResetValue;
};

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