#pragma once
#include <boost/unordered_map.hpp>
#include <vector>
struct M_DropCFGData
{
	//ID
	int mID;
	//掉落类型
	int mType;
	//掉落组
	std::vector<int> mdropInfo;
	//开始炮倍
	int mstarRate;
	//结束炮倍
	int mEndRate;
	//随机数量
	std::vector<int> mDropCount;
	//其他类型
	int mOtherTypes;
};

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