#pragma once #include "MAScannerFilter.h" class MAScanner : public CSingleton { public: MAScanner(); ~MAScanner(); enum eType { OpponentTeamScan = 0, // »ó´ëÆÀ ½ºÄµ(NPC Á¦¿Ü) MonsterSkillSameTeam, // ¸ó½ºÅÍ ½ºÅ³ »ç¿ë½Ã °°ÀºÆÀ ½ºÄµ MonsterSkillSameTeamExpectMe, // ¸ó½ºÅÍ ½ºÅ³ »ç¿ë½Ã ³ª¸¦ Á¦¿ÜÇÑ °°ÀºÆÀ ½ºÄµ MonsterSkillOpponentTeam, // ¸ó½ºÅÍ ½ºÅ³ »ç¿ë½Ã »ó´ëÆÀ ½ºÄµ Max, }; void Scan( MAScanner::eType Type, DnActorHandle hActor, float fMinRange, float fMaxRange, DNVector(DnActorHandle)& vOutputActor ); private: void _CreateFilter(); void _CreateScanner(); void _CreateOpponentTeamScanner(); void _CreateMonsterSkillSameTeamScanner(); void _CreateMonsterSkillSameTeamExpectMeScanner(); void _CreateMonsterSkillOpponentTeamScanner(); IMAScanFilter* _GetFilter( IMAScanFilter::eFilterType Type ); std::vector m_vFilterRepository; std::vector m_vScanner[MAScanner::eType::Max]; }; #define GetMAScanner() MAScanner::GetInstance()