#include "stdafx.h" #include "CommonDef.h" #include "RewardInfoList.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "MissionRewardParser.h" #include "SkillInventoryStoreParser.h" #include #define ERROR_PARSER( x, y ) if(!x){/*SUNLOG( eCRITICAL_LOG, "%s ÆÄÀÏÀÌ ¾ø½À´Ï´Ù!!", y );*/} #ifdef __NA_000000_20071123_NEW_SCRIPT_PARSING_SYSTEM BOOL LoadParser( char *pszFileName, eSCRIPT_CODE eCode, IParser* pParser, BOOL bBigData=FALSE ) { return pParser->Load( eCode, pszFileName, bBigData, SEPERATOR_WHITESPACE, NULL, FALSE ); } #else // __NA_000000_20071123_NEW_SCRIPT_PARSING_SYSTEM BOOL LoadParser( char *pszFileName, eSCRIPT_CODE eCode, IParser* pParser ) { util::SolarFileReader sr; if( !sr.OpenFile( pszFileName, SEPERATOR_WHITESPACE ) ) return FALSE; pParser->_LoadEx( eCode, sr, FALSE ); sr.CloseFile(); return TRUE; } #endif // __NA_000000_20071123_NEW_SCRIPT_PARSING_SYSTEM int _tmain(int argc, _TCHAR* argv[]) { //SUNLOG( eCRITICAL_LOG, "Script Check Start !!!\n\n" ); char szModuleName[MAX_PATH]; GetCurrentDirectory( MAX_PATH, szModuleName ); std::string app_path(szModuleName); std::string check_path(szModuleName); std::string check_path2(szModuleName); check_path += "\\_bin"; check_path2 += "\\Data"; // °³¹ßÀÚ µð¹ö±ë »óȲÀÎÁö À¯Àú üũ »óȲÀÎÁö¿¡ µû¶ó µ¥ÀÌŸ °æ·Î°¡ ´Þ¶óÁø´Ù. if( _access( (char*)check_path.c_str(), 0) != -1 ) app_path += "\\_bin\\»ý¼ºSUN4WOPS\\°ÔÀÓ·ÎÁ÷\\Data"; else if( _access( (char*)check_path2.c_str(), 0) != -1 ) app_path += "\\Data"; //½ºÆ®¸µÅ×ÀÌºí ÆÄ¼­·Îµù ERROR_PARSER(m_StringTable.Init((char*)(app_path + "\\StringTable.txt").c_str()), "StringTable.txt init"); ERROR_PARSER(m_Stringtableforname.Init((char*)(app_path + "\\Stringtableforname.txt").c_str()), "Stringtableforname.txt init"); ERROR_PARSER(m_StringTableForProgram.Init((char*)(app_path + "\\StringTableForProgram.txt").c_str()), "StringTableForProgram.txt init"); //////////////////////////////////// //ItemÀÎÆ÷ ½ºÅ©¸³Æ® ·Îµù ItemInfoParser::Instance()->Init(1000, ""); ERROR_PARSER(LoadParser( (char*)(app_path + "\\AccessoryItemInfo.txt").c_str(), SCRIPT_ACCESSORYITEMINFO, ItemInfoParser::Instance()),"AccessoryItemInfo"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\WeaponItemInfo.txt").c_str(), SCRIPT_WEAPONITEMINFO, ItemInfoParser::Instance()),"WeaponItemInfo"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\ArmorItemInfo.txt").c_str(), SCRIPT_ARMORITEMINFO, ItemInfoParser::Instance()),"ArmorItemInfo"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\WasteItemInfo.txt").c_str(), SCRIPT_WASTEITEMINFO, ItemInfoParser::Instance()),"WasteItemInfo"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\ChargeItemInfo.txt").c_str(), SCRIPT_CHARGEITEMINFO, ItemInfoParser::Instance()),"ChargeItemInfo"); SkillInfoParser::Instance()->Init(1000, ""); SkillInventoryStoreParser::Instance()->Init(1000, ""); #ifdef __NA_000000_20071123_NEW_SCRIPT_PARSING_SYSTEM ERROR_PARSER(LoadParser( (char*)(app_path + "\\SkillInventoryStore.txt").c_str(), SCRIPT_SKILL_INVEN_STORE, SkillInventoryStoreParser::Instance()),"SkillInventoryStore"); #else ERROR_PARSER(SkillInventoryStoreParser::Instance()->Load((char*)(app_path + "\\SkillInventoryStore.txt").c_str() ),"SkillInventoryStore"); #endif ERROR_PARSER(LoadParser( (char*)(app_path + "\\SkillInfo.txt").c_str(), SCRIPT_SKILLINFO, SkillInfoParser::Instance()),"SkillInfo"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\StyleInfo.txt").c_str(), SCRIPT_STYLEINFO, SkillInfoParser::Instance()),"StyleInfo"); MapInfoParser::Instance()->Init(100); #if NATION_BUILD_VERSION >= 810 ERROR_PARSER(LoadParser( (char*)(app_path + "\\Worldsubinfo.txt").c_str(), SCRIPT_WORLD_SUB_INFO, MapInfoParser::Instance()),"Worldsubinfo"); #endif ERROR_PARSER(LoadParser( (char*)(app_path + "\\World.txt").c_str(), SCRIPT_WORLD, MapInfoParser::Instance()),"World"); #ifdef __NA_000000_20071123_NEW_SCRIPT_PARSING_SYSTEM ERROR_PARSER(LoadParser( (char*)(app_path + "\\Field.txt").c_str(), SCRIPT_FIELD, MapInfoParser::Instance(), TRUE),"Field"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\Fieldwmo.txt").c_str(), SCRIPT_FIELDWMO, MapInfoParser::Instance(), TRUE),"Fieldwmo"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\Fieldwut.txt").c_str(), SCRIPT_FIELDWUT, MapInfoParser::Instance(), TRUE),"Fieldwut"); #else ERROR_PARSER(LoadParser( (char*)(app_path + "\\Field.txt").c_str(), SCRIPT_FIELD, MapInfoParser::Instance()),"Field"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\Fieldwmo.txt").c_str(), SCRIPT_FIELDWMO, MapInfoParser::Instance()),"Fieldwmo"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\Fieldwut.txt").c_str(), SCRIPT_FIELDWUT, MapInfoParser::Instance()),"Fieldwut"); #endif ERROR_PARSER(LoadParser( (char*)(app_path + "\\MapEnterancePortal.txt").c_str(), SCRIPT_MAPENTERANCEPORTAL, MapInfoParser::Instance()),"MapEnterancePortal"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\RankOptionInfo.txt").c_str(), SCRIPT_RANKOPTIONINFO, RankOptionParser::Instance()),"RankOptionInfo"); ERROR_PARSER(LoadParser( (char*)(app_path + "\\SocketOptionInfo.txt").c_str(), SCRIPT_SOCKETOPTIONINFO, SocketOptionParser::Instance()),"SocketOptionInfo"); ExtraStoneOptionInfoParser::Instance()->Init(100); ERROR_PARSER(LoadParser( (char*)(app_path + "\\ExtraStoneOptionInfo.txt").c_str(), SCRIPT_EXTRASTONEOPTIONINFO, ExtraStoneOptionInfoParser::Instance()),"ExtraStoneOptionInfo"); g_pQuestInfoManager = new QuestInfoManager2; ERROR_PARSER(g_pQuestInfoManager->Load((char*)(app_path + "\\QuestInfo.txt").c_str()), "QuestInfo"); RewardInfoList::Instance()->Init(""); ERROR_PARSER(LoadParser( (char*)(app_path + "\\RewardInfoList.txt").c_str(), SCRIPT_REWARDINFOLIST, RewardInfoList::Instance()),"RewardInfoList"); AreaConquestInfoParser::Instance()->Init( 1000 ); ERROR_PARSER(LoadParser( (char*)(app_path + "\\ACScript.txt").c_str(), SCRIPT_ACSCRIPT, AreaConquestInfoParser::Instance()),"ACScript"); MissionRewardParser::Instance()->Init(100); #ifdef __NA_000000_20071123_NEW_SCRIPT_PARSING_SYSTEM ERROR_PARSER(LoadParser( (char*)(app_path + "\\MissionRewardInfo.txt").c_str(), SCRIPT_MISSIONREWARDINFO, MissionRewardParser::Instance()),"MissionRewardInfo"); #else ERROR_PARSER(MissionRewardParser::Instance()->Load((char*)(app_path + "\\MissionRewardInfo.txt").c_str()),"MissionRewardInfo"); #endif #if NATION_BUILD_VERSION >= 810 ERROR_PARSER(LoadParser( (char*)(app_path + "\\Limitediteminfo.txt").c_str(), SCRIPT_LIMITED_ITEM_INFO, LimitedItemInfoParser::Instance()),"Limitediteminfo"); #endif #if NATION_BUILD_VERSION >= 811 ERROR_PARSER(LoadParser( (char*)(app_path + "\\Luckyiteminfo.txt").c_str(), SCRIPT_FATE_ITEM_INFO, FateItemInfoParser::Instance()),"Luckyiteminfo"); #endif //SUNLOG( eCRITICAL_LOG, "\n\nScript Check End !!!\n\n" ); system( "pause" ); return 0; }