#pragma once
#include <boost/unordered_map.hpp>
#include <vector>
struct M_game_battle_fieldData
{
	//ID
	int64_t mID;
	//怪物ID
	int64_t mmonster_id;
	//场地类型
	int mscene_type;
	//出场权重
	int mweight;
	//最大数量
	int mmax_num;
	//击杀次数
	std::vector<int> mkill_count;
	//魔币掉落概率（百分比）
	float maward_drop_prob;
};

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