#pragma once #include #include struct M_MainTaskCFGData { //任务ID int mID; //任务组 int mGroup; //任务类型 int mCompleteType; //炮倍解锁 std::vector mCannonFold; //名字 std::string mName; //完成计数 int mCompleteCount; //特殊参数,填0不生效。对任务捕获指定鱼需要填写 std::vector mCompleteParam; //后续任务id int mNextQuestID; //初始化 int mDefault; //奖励物品ID std::vector mAwardItemIDs; //奖励物品数量 std::vector mAwardItemCounts; //前往类型 int mGoType; //搜索范围 std::vector mFindRand; //转化类型 int mShowChangeType; }; class M_MainTaskCFG { public: private: static std::auto_ptr msSingleton; public: int GetCount(); const M_MainTaskCFGData* GetData(int ID); boost::unordered_map& GetMapData(); void Reload(); void Load(const std::string& path); void Load(); static M_MainTaskCFG* GetSingleton(); private: boost::unordered_map mMapData; };