#pragma once //#include //#include #include struct QuestLink; struct QuestLinkEx { QuestLinkEx() : questCode(0) {} ~QuestLinkEx() { startNpcId.clear(); progressNpcId.clear(); endNpcId.clear(); } int questCode; std::vector startNpcId; std::vector progressNpcId; std::vector endNpcId; }; class SQuestLinkDB { public: SQuestLinkDB(); ~SQuestLinkDB(); QuestLinkEx * GetQuestLinkData( int nQuestCode ); protected: void Init(); void Destroy(); void Load(); void convert(QuestLink const* questLink, QuestLinkEx* ex); KHash< QuestLinkEx*, hashPr_mod_int> m_hashQuestLink; private: public: static SQuestLinkDB* m_pThis; }; SQuestLinkDB & GetQuestLinkDB();