#pragma once
#include <map>
struct M_ActivitySailingaChievementCFGData
{
	//编号
	int mId;
	//类型
	int mType;
	//任务标题
	std::string mTaskTitle;
	//任务内容
	std::string mTaskDesc;
	//完成条件类型
	int mCompleteType;
	//特殊参数,填0不生效。对任务捕获指定鱼需要填写
	std::vector<int> mCompleteParam;
	//完成计数
	int mCompleteCount;
	//成就物品id
	int mAchievementItem;
	//成就奖励数量
	int mAchievementCounts;
	//奖励物品ID
	int mAwardItemID;
	//奖励物品数量
	int mAwardItemCounts;
	//前往类型
	int mGoType;
	//搜索范围
	std::vector<int> mFindRand;
};

class M_ActivitySailingaChievementCFG
{
public:
private:
	static std::auto_ptr<M_ActivitySailingaChievementCFG> msSingleton;
public:
	int GetCount();
	const M_ActivitySailingaChievementCFGData* GetData(int Id);
	const std::map<int, M_ActivitySailingaChievementCFGData>& GetMapData();
	void Load();
	void LoadLua();
	void Reload();
	static M_ActivitySailingaChievementCFG* GetSingleton();
	static void Release();
private:
	std::map<int, M_ActivitySailingaChievementCFGData> mMapData;
};
