#include "SunClientPrecompiledHeader.h" #include "ClientScriptParserManager.h" #include "uiMissionRankMan/uiMissionRankMan.h" #include "MapInfoParser.h" #include "ItemInfoParser.h" #include "SkillInfoParser.h" #include "StateInfoParser.h" #include "InterfaceManager.h" #include "NPCInfoParser.h" #include "ShopInfoParser.h" #include "ItemCompositeParser.h" #ifdef _NA_003740_20111122_RANDOM_ITEM #include "RandomItemParser.h" #endif //#ifdef _NA_003740_20111122_RANDOM_ITEM #include "ItemComposeListParser.h" #include "SocketOptionParser.h" #include "SunEventInfoParser.h" #include "StyleQuickRegistInfoParser.h" #include "ItemTypeList.h" #include "RewardInfoList.h" #include "GameOptionParser.h" #include "RankOptionParser.h" #include "MissionRewardParser.h" #include "RequireFieldLevelInfoParser.h" #include "ItemCrystalizeListParser.h" #include "ExtraStoneOptionInfoParser.h" #include "ExpValueInfoParser.h" #ifdef __NA_001358_ENCHANT_UNIFICATION #include "InstantEnchantParser.h" #else #include "EnchantParser.h" #endif //__NA_001358_ENCHANT_UNIFICATION #include "CharInfoParser.h" #ifdef __NA_001027_20080423_RANDOM_REWARD_EVENT_ #include "ExchangeRewardInfo.h" #endif #include "AttachmentOffsetInfoParser.h" #include "BGMSoundInfoParser.h" #include "CharSoundInfoParser.h" #include "CompositeNPCInfoParser.h" #include "DlgPosInfoParser.h" #include "EnvironmentInfoParser.h" #include "EventInfoParser.h" //#include "HeadColorInfoParser.h" #include "HeadMeshInfoParser.h" #include "GuideMessageParser.h" #include "HelpInfoParser.h" #include "HelpMessageParser.h" #include "HeroHeightInfoParser.h" #include "HeroVariationInfoParser.h" #include "HeroVoiceInfoParser.h" #include "ItemSoundInfoParser.h" #include "LimitedMapPortParser.h" #include "MonsterVoiceInfoParser.h" #include "NPCVoiceInfoParser.h" #include "OptionListParser.h" #include "ProjectileInfoParser.h" #include "QuestTextInfoParser.h" #include "RadarInfoParser.h" #include "SkillEffectInfoParser.h" #include "SkillTextInfoParser.h" #include "WeaponSoundInfoParser.h" #include "SkillInventoryStoreParser.h" #include "LimitedOptionParser.h" #include "Message.h" #include "GraphicResourceList.h" #include "GlobalFunc.h" #include "Application.h" #include "message.h" #include "messagetext.h" #include "questinfomanagerex.h" #include "SetItemOptionInfoParser.h" #include "GuildRankInfoParser.h" #include "GuildRightInfoParser.h" #include "GuildMarkInfoParser.h" #ifdef _NA_003923_20120130_GUILD_RENEWAL #include "GuildInfoParser.h" #endif //_NA_003923_20120130_GUILD_RENEWAL #include "FateItemInfoParser.h" #include "PetInfoParser.h" #include "EtherWeaponEffectInfo.h" #include "LotteryInfoParser.h" #include "NpcImageInfo.h" #include "HeroCustomInfoParser.h" #ifdef __NA_001062_20080623_STRENGTH_PENALTY #include "StrengthPenaltyParser.h" #include "StrengthUIParser.h" #endif//__NA_001062_20080623_STRENGTH_PENALTY #include "ssq/SSQInfoParser.h" #include "CollectionParser.h" #include "ConstantDialogListParser.h" #include "PKScriptParser.h" #include "RidingInfoParser.h" #include "DominationInfoParser.h" #include "InDunOptionParser.h" #include "SpecialTexutureInfoParser.h" #include "AmbientSoundInfoParser.h" #include "SkillSystem/PerkInfoParser.h" #include "MissionInfoParser.h" #include "MissionTextInfoParser.h" #ifdef _YMS_AUTOBOT_GAME #include "AutomaticInfoParser.h" #include "AutomaticComboInfoParser.h" #endif //_YMS_AUTOBOT_GAME #include "CubeSystem\CubeSystemParser.h" #include "SocketSystem/SocketItemRatioParser.h" #include "SocketSystem/ZardComposeInfoParser.h" #include "AchievementParser.h" #include "TextureListInfoParser.h" #include "TextureAnimationInfoParser.h" #include "TextureAnimationManager.h" #include "CreateCharCustomCameraInfoParser.h" #include "LoadingTextureInfoParser.h" #include "CharacterCreationInfoParser.h" #include "ColorInfoParser.h" #include "TreeMenuInfoParser.h" #include "TotalGuideParser.h" #ifdef _NA_002935_20110704_ITEM_SCORE #include "ItemScoreParser.h" #endif //_NA_002935_20110704_ITEM_SCORE #ifdef _NA_20110630_BATTLE_ZONE_RENEWAL #include "BattlezoneMissionTreeParser.h" #endif//_NA_20110630_BATTLE_ZONE_RENEWAL #ifdef _NA_003027_20111013_HONOR_SYSTEM #include "FameListParser.h" #include "ReputeListParser.h" #include "TitleListParser.h" #endif //_NA_003027_20111013_HONOR_SYSTEM #include "Input/HotKeyInfoParser.h" #ifdef _NA004034_20120102_POINT_WALLET_SYSTEM #include "CurrencyInfoParser.h" #endif //_NA004034_20120102_POINT_WALLET_SYSTEM #ifdef _RU_0000_20120312_RUSSIA_CHECK_RESOURCE_VERSION_SCRIPT #include "ResourceVersionParser.h" #endif //_RU_0000_20120312_RUSSIA_CHECK_RESOURCE_VERSION_SCRIPT #ifdef _NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND #include "ChaosZoneInfoParser.h" #include "ChaosSystem/ChaosZoneTreeParser.h" #include "BattleGroundInfoParser.h" #include "BattleGroundFlagInfoParser.h" #endif //_NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND #include "SkillEventEffectInfoParser.h" #include "CostumeItemInfoParser.h" #ifdef _NA_000000_20120911_FULL_MISSION_HELPER #include "RadarFullMissionInfo.h" #endif //#ifdef _NA_000000_20120911_FULL_MISSION_HELPER #ifdef _NA_000000_20130114_RENEWER_UI #include "EnduranceInfoParser.h" #endif #include "GameOptionListParser.h" #ifdef _NA_007086_20140318_MONSTERBOOK #include "MonsterBookParser.h" #include "uiMonsterBookMan/MonsterBookDropOrderParser.h" #include "uiMonsterBookMan/MonsterBookDropItemParser.h" #endif //_NA_007086_20140318_MONSTERBOOK #ifdef _NA_007330_20140620_GUILD_SYSTEM_EXTENSION #include "GuildFacilityInfoParser.h" #include "GuildFacilityImageParser.h" #endif // _NA_007330_20140620_GUILD_SYSTEM_EXTENSION #ifdef _NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM #include "AttendanceParser.h" #endif //_NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM #ifdef _NA_008016_20150203_SUN_RANKING_SYSTEM_STATUE #include "StatueInfoParser.h" #endif // _NA_008016_20150203_SUN_RANKING_SYSTEM_STATUE #ifdef _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM #include "AwakeningInfoParser.h" #endif // _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM #ifdef _NA_008283_20150511_NOTIFICATIONS_SYSTEM #include "NotificationInfoParser.h" #endif // _NA_008283_20150511_NOTIFICATIONS_SYSTEM #ifdef _NA_008350_20150617_SPA_NEW_STYLE_MODE_ANIMATION #include "SpaZoneInfoParser.h" #endif //_NA_008350_20150617_SPA_NEW_STYLE_MODE_ANIMATION #ifdef _NA_008334_20150608_SONNENSCHEIN #include "ChaosSystem/GuildMissionTreeParser.h" #include "ChaosZoneSystem/SonnenScheinRewardInfoParser.h" #endif //_NA_008334_20150608_SONNENSCHEIN ClientScriptParserManager::ClientScriptParserManager(void) { } ClientScriptParserManager::~ClientScriptParserManager(void) { } VOID ClientScriptParserManager::InitParserPool( VOID* pPoolOption ) { //Todo: ÆÄ¼­¸¦ ã¾Æ ÃʱâÈ­ MapInfoParser::Instance()->Init(MAX_MAP_INFO); ItemInfoParser::Instance()->Init( MAX_ITEM_INFO); SkillInfoParser::Instance()->Init( MAX_SKILL_INFO); StateInfoParser::Instance()->Init(100); NPCInfoParser::Instance()->Init( MAX_NPC_INFO, 100 ); ShopInfoParser::Instance()->Init(MAX_SHOP_INFO); ItemCompositeParser::Instance()->Init(MAX_ITEM_COMPOSITE_INFO); ItemComposeListParser::Instance()->Init(MAX_ITEM_COMPOSITE_INFO); StyleQuickRegistInfoParser::Instance()->Init(MAX_STYLE_QUICK_REGISTER); MissionRewardParser::Instance()->Init(MAX_MISSION_REWARD_INFO); RequireFieldLevelInfoParser::Instance()->Init(100); ItemCrystalizeListParser::Instance()->Init(MAX_ITEM_CRYSTALIZE_INFO); ExtraStoneOptionInfoParser::Instance()->Init(100); ExpValueInfoParser::Instance()->Init(MAX_EXPVALUE_INFO); #ifdef __NA_001027_20080423_RANDOM_REWARD_EVENT_ ExchangeRewardInfoParser::Instance()->Init(100); #endif //2007.07.30 ÀÛ¾÷ EventInfoParser::Instance()->Init(100); SkillInventoryStoreParser::Instance()->Init(MAX_SKILL_INVENTORY_STORE_INFO); GraphicResourceList::Instance()->Init(MAX_GRAPHIC_INFO); WeaponSoundInfoParser::Instance()->Init(100); cSkillEventEffectInfoParser::Instance()->Init(1000); #ifdef _NA_COSTUMEITEM_IDLE_ANIMATION cCostumeItemInfoParser::Instance()->Init(100); #endif //_NA_COSTUMEITEM_IDLE_ANIMATION CharSoundInfoParser::Instance()->Init(10000); BGMSoundInfoParser::Instance()->Init(MAX_BGM); DlgPosInfoParser::Instance()->Init(MAX_DIALOG); MessageInfoParser::Instance()->Init(MESSAGE_TOTAL_MAX); EnvironmentInfoParser::Instance()->Init(100); ProjectileInfoParser::Instance()->Init(100); HeroVoiceInfoParser::Instance()->Init(10); NPCVoiceInfoParser::Instance()->Init(100); MonsterVoiceInfoParser::Instance()->Init(100); RadarInfoParser::Instance()->Init(100); HeroVariationInfoParser::Instance()->Init(100); HeroHeightInfoParser::Instance()->Init(100); ItemSoundInfoParser::Instance()->Init(MAX_ITEM_SOUND_INFO); LimitedMapPortParser::Instance()->Init(MAX_NPC_PORTAL_INFO); HeadMeshInfoParser::Instance()->Init(100); CompositeNPCInfoParser::Instance()->Init(MAX_ITEM_COMPOSITE_NPC_INFO); SkillTextInfoParser::Instance()->Init(MAX_SKILL_TEXT_INFO); SkillEffectInfoParser::Instance()->Init(MAX_SKILL_TEXT_INFO); OptionListParser::Instance()->Init(500); GuideMessageParser::Instance()->Init(MAX_HELP_INFO); HelpInfoParser::Instance()->Init(MAX_HELP_INFO); AttachmentOffsetInfoParser::Instance()->Init(MAX_ATTACH_ITEM_INFO); //#ifdef HAIR_COLOR_VARIATION // HeadColorInfoParser::Instance()->Init( 100 ); //#endif QuestTextInfoParser::Instance()->Init(MAX_QUEST_TEXT_INFO); AchievementParser::Instance()->Init(100); GuildMarkInfoParser::Instance()->Init(100); EtherWeaponEffectInfoParser::Instance()->Init(100); NPCImageInfoParser::Instance()->Init(20); InDunOptionParser::Instance()->Init(100); AmbientSoundInfoParser::Instance()->Init(300); MissionInfoParser::Instance()->Init(); MissionTextInfoParser::Instance()->Init(MAX_MISSION_TEXT_INFO); MessageText::Instance()->Init(MESSAGE_TOTAL_MAX); TotalGuideParser::Instance()->Init(500); ColorInfoParser::Instance()->Init(100); #ifdef _NA_002935_20110704_ITEM_SCORE ItemScoreParser::Instance()->Init(200); #endif //_NA_002935_20110704_ITEM_SCORE #ifdef _NA_003027_20111013_HONOR_SYSTEM FameListParser::Instance()->Init(); ReputeListParser::Instance()->Init(); TitleListParser::Instance()->Init(); #endif //_NA_003027_20111013_HONOR_SYSTEM #ifdef _NA004034_20120102_POINT_WALLET_SYSTEM CurrencyInfoParser::Instance()->Init(); #endif //_NA004034_20120102_POINT_WALLET_SYSTEM #ifdef _NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND BattleGroundFlagInfoParser::Instance()->Init(20); #endif //_NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND #ifdef _NA_000000_20120911_FULL_MISSION_HELPER RadarFullMissionInfoParser::Instance()->Init(100); #endif // _NA_000000_20120911_FULL_MISSION_HELPER #ifdef _NA_000000_20130114_RENEWER_UI EnduranceInfoParser::Instance()->Init(20); #endif OptionItemInfoParser::Instance()->Init(0); #ifdef _NA_007086_20140318_MONSTERBOOK MonsterBookParser::Instance()->Init(500); MonsterBookDropOrderParser::Instance()->Init(200); MonsterBookDropItemParser::Instance()->Init(500); #endif //_NA_007086_20140318_MONSTERBOOK #ifdef _NA_007330_20140620_GUILD_SYSTEM_EXTENSION GuildFacilityInfoParser::Instance()->Init(100); GuildFacilityImageParser::Instance()->Init(100); #endif // _NA_007330_20140620_GUILD_SYSTEM_EXTENSION #ifdef _NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM AttendanceParser::Instance()->Init(30); #endif //_NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM #ifdef _NA_008016_20150203_SUN_RANKING_SYSTEM_STATUE StatueInfoParser::Instance()->Init(100); #endif // _NA_008016_20150203_SUN_RANKING_SYSTEM_STATUE #ifdef _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM AwakeningInfoParser::Instance()->Init(500); #endif // _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM #ifdef _NA_008283_20150511_NOTIFICATIONS_SYSTEM NotificationInfoParser::Instance()->Init(500); #endif // _NA_008283_20150511_NOTIFICATIONS_SYSTEM #ifdef _NA_008350_20150617_SPA_NEW_STYLE_MODE_ANIMATION SpaZoneInfoParser::Instance()->Init(100); #endif //_NA_008350_20150617_SPA_NEW_STYLE_MODE_ANIMATION #ifdef _NA_008334_20150608_SONNENSCHEIN GuildMissionTreeParser::Instance()->Init(); SonnenScheinRewardInfoParser::Instance()->Init(); #endif //_NA_008334_20150608_SONNENSCHEIN } BOOL ClientScriptParserManager::RegisterParser() { char PACK_FILE_NAME[MAX_PATH]; if( GENERALPARAM->IsUsePackFile() ) { strcpy( PACK_FILE_NAME, "Data\\Resource.wpk" ); PACKER_MANAGER()->OpenPackFile("Data\\Resource.wpk"); } else { ZeroMemory( PACK_FILE_NAME, MAX_PATH ); } if( GENERALPARAM->IsSystemPackFileName() ) { PACKER_MANAGER()->OpenPackFile("System\\System.wpk"); ERROR_PARSER( RegisterScriptData( SCRIPT_GAME_OPTION, "system\\GameOption.ini", GameOptionParser::Instance(),SEPERATOR_WHITESPACE_ONLY_STRING, "System\\System.wpk") ); } else { ERROR_PARSER( RegisterScriptData( SCRIPT_GAME_OPTION, "system\\GameOption.ini", GameOptionParser::Instance(), SEPERATOR_WHITESPACE_ONLY_STRING, NULL) ); } ERROR_PARSER( RegisterScriptData( SCRIPT_WORLD_SUB_INFO, "data\\Worldsubinfo.txt", MapInfoParser::Instance() ,SEPERATOR_WHITESPACE ,PACK_FILE_NAME) ); ERROR_PARSER( RegisterScriptData( SCRIPT_CHARGEITEMINFO, "data\\ChargeIteminfo.txt", ItemInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME) ); ERROR_PARSER( RegisterScriptData( SCRIPT_EXPVALUEINFO, "data\\ExpValueInfo.txt", ExpValueInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #ifdef __NA_001027_20080423_RANDOM_REWARD_EVENT_ ERROR_PARSER( RegisterScriptData(SCRIPT_EXCHANGE_REWARD_INFO, "data\\ExchangeRewardInfo.txt", ExchangeRewardInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #endif ERROR_PARSER( RegisterScriptData( SCRIPT_FIELD, "data\\Field.txt", MapInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME , TRUE )); ERROR_PARSER( RegisterScriptData( SCRIPT_FIELDWMO, "data\\Fieldwmo.txt", MapInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME , TRUE )); ERROR_PARSER( RegisterScriptData( SCRIPT_FIELDWUT, "data\\Fieldwut.txt", MapInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME , TRUE )); ERROR_PARSER( RegisterScriptData( SCRIPT_WORLD, "data\\World.txt", MapInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_MAPENTERANCEPORTAL, "data\\MapEnterancePortal.txt", MapInfoParser::Instance() ,SEPERATOR_WHITESPACE,PACK_FILE_NAME ) ); #ifdef _NA_008016_20150202_OLD_RANKING_SYSTEM ERROR_PARSER( RegisterScriptData( SCRIPT_MISSIONRANKINGLVAREA, "data\\MissionRankingLVArea.txt", GET_MISSION_RANK_MANAGER(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME) ); #endif // _NA_008016_20150202_OLD_RANKING_SYSTEM ERROR_PARSER( RegisterScriptData( SCRIPT_WEAPONITEMINFO, "data\\WeaponItemInfo.txt", ItemInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_ARMORITEMINFO, "data\\ArmorItemInfo.txt", ItemInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_WASTEITEMINFO, "data\\WasteItemInfo.txt", ItemInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_ACCESSORYITEMINFO, "data\\AccessoryItemInfo.txt", ItemInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_ITEMTYPELIST, "data\\ItemTypeList.txt", ItemTypeList::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME) ); ERROR_PARSER( RegisterScriptData( SCRIPT_REWARDINFOLIST, "data\\RewardInfoList.txt", RewardInfoList::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_LIMITED_ITEM_INFO, "data\\LimitedItemInfo.txt", LimitedItemInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_SKILLINFO, "data\\SkillInfo.txt", SkillInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_STYLEINFO, "data\\StyleInfo.txt", SkillInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_STATEINFO, "data\\StateInfo.txt", StateInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_NPCINFO, "data\\NPCInfo.txt", NPCInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_NPCEXTRAINFO, "data\\NPCExtraInfo.txt", NPCInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_SHOPINFO, "data\\ShopInfo.txt", ShopInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_ITEMCOMPOSITEINFO, "data\\ItemCompositeInfo.txt", ItemCompositeParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_ITEMCOMPOSELIST, "data\\ItemComposeList.txt", ItemComposeListParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #ifdef _NA_003740_20111122_RANDOM_ITEM // ¼ø¼­¿¡ ÁÖÀÇ! ERROR_PARSER( RegisterScriptData( SCRIPT_RANDOM_ITEM_VALUE, "data\\RandomItemValue.txt", RandomItemParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_RANDOM_ITEM_OPTION_TYPE, "data\\RandomItemOptionType.txt", RandomItemParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_RANDOM_ITEM_INFO, "data\\RandomItemInfo.txt", RandomItemParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_RANDOM_ITEM_KEY, "data\\RandomItemKey.txt", RandomItemParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #endif // _NA_003740_20111122_RANDOM_ITEM ERROR_PARSER(RegisterScriptData(SCRIPT_ZARD_OPTION_INFO, "data\\ZardOptionInfo.txt", SocketOptionParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_ZARD_POINT_INFO, "data\\ZardPointInfo.txt", SocketOptionParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER( RegisterScriptData( SCRIPT_SUNEVENTINFO, "data\\SunEventInfo.txt", SunEventInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_STYLEQUICKREGISTINFO, "data\\StyleQuickRegistInfo.txt", StyleQuickRegistInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_RANKOPTIONINFO, "data\\RankOptionInfo.txt", RankOptionParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_MISSIONREWARDINFO, "data\\MissionRewardInfo.txt", MissionRewardParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_REQUIREFIELDLEVELINFO, "data\\RequireFieldLevelInfo.txt", RequireFieldLevelInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_ITEMCRYSTALIZELIST, "data\\ItemCrystalizeList.txt", ItemCrystalizeListParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_EXTRASTONEOPTIONINFO, "data\\ExtraStoneOptionInfo.txt", ExtraStoneOptionInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #ifdef __NA_001358_ENCHANT_UNIFICATION ERROR_PARSER(RegisterScriptData(SCRIPT_INSTANT_ENCHANT, "data\\InstantEnchant.txt", InstantEnchantParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #else ERROR_PARSER( RegisterScriptData( SCRIPT_ENCHANT, "data\\Enchant.txt", EnchantParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #endif // __NA_001358_ENCHANT_UNIFICATION ERROR_PARSER( RegisterScriptData( SCRIPT_INITCHARINFO, "data\\InitCharInfoList.txt", CharInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); //2007.07.30 ÀÛ¾÷ ERROR_PARSER( RegisterScriptData( SCRIPT_ATTACHMENT_OFFSET_INFO, "Data\\AttachmentOffset.txt", AttachmentOffsetInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_BGM_SOUND_INFO, "Data\\BGMInfo.txt", BGMSoundInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_CHAR_SOUND_INFO, "Data\\CharSoundInfo.txt", CharSoundInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_COMPOSITE_NPC_INFO, "Data\\composite_NPC.txt", CompositeNPCInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_DLG_POS_INFO, "Data\\DialogPosInfo.txt", DlgPosInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_ENVIRONMENT_INFO, "Data\\WorldConfig.txt", EnvironmentInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_EVENT_INFO, "Data\\EventInfo.txt", EventInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_HEAD_MESH_INFO, "Data\\HeadMeshInfo.txt", HeadMeshInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_TOTAL_GUIDE_MESSAGE, GlobalFunc::AddNationName("data\\Interface\\Text\\LibraryText.txt") , GuideMessageParser::Instance(),SEPERATOR_QUOTATIONMARKFORSTR ,NULL ,TRUE) ); ERROR_PARSER( RegisterScriptData( SCRIPT_HELP_INFO, "Data\\HelpInfo.txt", HelpInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_HERO_HEIGHT_INFO, "Data\\HeroHeightsInfo.txt", HeroHeightInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME) ); ERROR_PARSER( RegisterScriptData( SCRIPT_HERO_VARIATION_INFO, "Data\\HeroVariationInfo.txt", HeroVariationInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_HERO_VOICE_INFO, "Data\\HeroVoiceInfo.txt", HeroVoiceInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_ITEM_SOUND_INFO, "Data\\ItemSoundInfo.txt", ItemSoundInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_LIMITED_MAP_PORT, "Data\\LimitedMapPort.txt", LimitedMapPortParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_MONSTER_VOICE_INFO, "Data\\MonsterVoiceInfo.txt", MonsterVoiceInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_NPC_VOICE_INFO, "Data\\NPCVoiceInfo.txt", NPCVoiceInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_OPTION_LIST_INFO, "Data\\OptionList.txt", OptionListParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_PROJECTILE_INFO, "Data\\ProjectileInfo.txt", ProjectileInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_RADAR_INFO, "Data\\RadarInfo.txt", RadarInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_SKILL_EFFECT_INFO, "Data\\Effect\\skilleffect.txt", SkillEffectInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_SKILL_TEXT_INFO, "Data\\Skilltext.txt", SkillTextInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_WEAPON_SOUND_INFO, "Data\\WeaponSoundInfo.txt", WeaponSoundInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPt_GRAPHIC_RESOURCE_LIST, "Data\\GraphicResourceList.txt", GraphicResourceList::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME, TRUE ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_SKILL_INVEN_STORE, "data\\SkillInventoryStore.txt", SkillInventoryStoreParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_SKILLEVENTEFFECT_INFO, "Data\\SkillEventEffectInfo.txt", cSkillEventEffectInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #ifdef _NA_COSTUMEITEM_IDLE_ANIMATION ERROR_PARSER( RegisterScriptData( SCRIPT_COSTUMEITEM_INFO, "Data\\CostumeItemInfo.txt", cCostumeItemInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #endif //_NA_COSTUMEITEM_IDLE_ANIMATION #ifdef _NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND ERROR_PARSER( RegisterScriptData( SCRIPT_BATTLE_GROUND_FLAG_INFO, "Data\\BattleGroundFlagInfo.txt", BattleGroundFlagInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #endif //_NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND //#ifdef HAIR_COLOR_VARIATION // ERROR_PARSER( RegisterScriptData( SCRIPT_HEAD_COLOR_INFO, "Data\\HeadColorInfo.txt", HeadColorInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); //#endif ERROR_PARSER(RegisterScriptData(SCRIPT_MESSAGE, "data\\message.txt" , MessageInfoParser::Instance() ,SEPERATOR_WHITESPACE ,PACK_FILE_NAME ,TRUE)); #ifdef _NA_008364_20150623_CHANGE_TEXT_PATH ERROR_PARSER(RegisterScriptData(SCRIPT_MESSAGE_TEXT, GlobalFunc::AddNationName("Data\\Interface\\Text\\messagetext.txt"), MessageText::Instance() ,SEPERATOR_QUOTATIONMARKFORSTR ,NULL ,TRUE)); #else ERROR_PARSER(RegisterScriptData(SCRIPT_MESSAGE_TEXT, GlobalFunc::AddNationName("Data\\Interface\\Text\\messagetext.txt"), MessageText::Instance() ,SEPERATOR_QUOTATIONMARKFORSTR ,PACK_FILE_NAME ,TRUE)); #endif // _NA_008364_20150623_CHANGE_TEXT_PATH #ifdef _NA_008364_20150623_CHANGE_TEXT_PATH ERROR_PARSER(RegisterScriptData(SCRIPT_HELP_MESSAGE, GlobalFunc::AddNationName("Data\\Interface\\Text\\HelpLoadingMessage.txt"), HelpMessageParser::Instance() ,SEPERATOR_QUOTATIONMARKFORSTR ,NULL ,TRUE)); #else ERROR_PARSER(RegisterScriptData(SCRIPT_HELP_MESSAGE, GlobalFunc::AddNationName("Data\\Interface\\Text\\HelpLoadingMessage.txt"), HelpMessageParser::Instance() ,SEPERATOR_QUOTATIONMARKFORSTR ,PACK_FILE_NAME ,TRUE)); #endif // _NA_008364_20150623_CHANGE_TEXT_PATH #ifdef _NA_008364_20150623_CHANGE_TEXT_PATH ERROR_PARSER(RegisterScriptData(SCRIPT_QUEST_TEXT_INFO,GlobalFunc::AddNationName("Data\\Interface\\Text\\QuestText.txt"), QuestTextInfoParser::Instance(), SEPERATOR_QUOTATIONMARKFORSTR ,NULL ,TRUE)); #else ERROR_PARSER(RegisterScriptData(SCRIPT_QUEST_TEXT_INFO,GlobalFunc::AddNationName("Data\\Interface\\Text\\QuestText.txt"), QuestTextInfoParser::Instance(), SEPERATOR_QUOTATIONMARKFORSTR ,PACK_FILE_NAME ,TRUE)); #endif // _NA_008364_20150623_CHANGE_TEXT_PATH ERROR_PARSER(RegisterScriptData(SCRIPT_QUESTINFO_MANAGER, "Data\\QuestInfo.txt", &g_QuestInfoManager,SEPERATOR_WHITESPACE ,PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_ACHIEVEMENT_INFO, "data\\ACScript.txt", AchievementParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #ifdef _NA_003923_20120130_GUILD_RENEWAL ERROR_PARSER(RegisterScriptData(SCRIPT_GUILDINFO, "Data\\GuildInfo.txt" , GuildInfoParser::Instance() ,SEPERATOR_WHITESPACE, PACK_FILE_NAME)); #endif //_NA_003923_20120130_GUILD_RENEWAL ERROR_PARSER(RegisterScriptData(SCRIPT_GUILD_RANK_INFO, "Data\\GuildRankInfo.txt" , GuildRankInfoParser::Instance() ,SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_GUILD_RIGHT_INFO,"Data\\GuildRightInfo.txt", GuildRightInfoParser::Instance(),SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_SETITEM_OPTION_INFO, "data\\SetItemoptioninfo.txt", SetItemOptionInfoParser::Instance() ,SEPERATOR_WHITESPACE ,PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_GUILD_MARK, "Data\\GuildMarkInfo.txt", GuildMarkInfoParser::Instance() , SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_FATE_ITEM_INFO, "Data\\LuckyIteminfo.txt", FateItemInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_PET_INFO, "data\\PetManageInfo.txt", PetInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME)); ERROR_PARSER( RegisterScriptData( SCRIPT_RIDING_INFO, "data\\RidingInfo.txt", RidingInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_SPECIAL_TEXTURE, "data\\SpecialTexture\\SpecialTexture.txt", SpecialTexutureInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData( SCRIPT_GAMBLE_OPTION, "data\\GambleOptionList.txt", LimitedOptionParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER(RegisterScriptData(SCRIPT_ETHER_WEAPON_EFFECT, "data\\EtherWeaponEffectInfo.txt", EtherWeaponEffectInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_LOTTO_INFO, "data\\LotteryInfo.txt", LotteryInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #ifdef __NA_001062_20080623_STRENGTH_PENALTY ERROR_PARSER(RegisterScriptData(SCRIPT_STRENGTH_PENALTY, "data\\StrengthPenalty.txt", StrengthPenaltyParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_STRENGTH_UI, "data\\StrengthUI.txt", StrengthUIParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif//__NA_001062_20080623_STRENGTH_PENALTY(³»±¸µµÆÐ³ÎƼ) ERROR_PARSER(RegisterScriptData(SCRIPT_NPC_IMAGE_INFO, "data\\NPCImageInfo.txt", NPCImageInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_HEROVARIATION_INFO, "data\\ItemtryonInfo.txt", HeroCustomInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_SSQINFO, "data\\SSQinfo.txt", SSQInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_SSQPATTERN, "data\\SSQPattern.txt", SSQInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_COLLECT, "data\\CollectInfo.txt", CollectionParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #ifdef __NA_001358_ENCHANT_UNIFICATION ERROR_PARSER(RegisterScriptData(SCRIPT_INSTANT_ENCHANT, "data\\InstantEnchant.txt", InstantEnchantParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif // __NA_001358_ENCHANT_UNIFICATION ERROR_PARSER(RegisterScriptData(SCRIPT_CONSTANT_DIALOG, "data\\ConstantDialogList.txt", ConstantDialogListParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_PKSCRIPT, "data\\PKScript.txt", PKScriptParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_DOMINATIONINFO, "data\\DominationInfo.txt", DominationInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_INDUN_OPTION, "data\\Topfloors.txt", InDunOptionParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_AMBIENT_SOUND_INFO, "data\\AmbientInfo.txt", AmbientSoundInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_PERKINFO, "data\\PerkInfo.txt", PerkInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME)); ERROR_PARSER(RegisterScriptData(SCRIPT_DISPLAY_FOR_MISSION_OBJECT, "data\\MissionInformation.txt", MissionInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER( RegisterScriptData( SCRIPT_MISSION_TEXT_INFO,GlobalFunc::AddNationName("data\\Interface\\Text\\MissionText.txt"), MissionTextInfoParser::Instance(), SEPERATOR_QUOTATIONMARKFORSTR ,PACK_FILE_NAME ,TRUE) ); #ifdef _YMS_AUTOBOT_GAME ERROR_PARSER(RegisterScriptData(SCRIPT_AUTOMATIC_INFO, "data\\AutomaticInfo.txt", AutomaticInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_AUTOMATIC_COMBO_INFO, "data\\AutomaticComboInfo.txt", AutomaticComboInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_YMS_AUTOBOT_GAME ERROR_PARSER(RegisterScriptData(SCRIPT_CUBE_COMPOSE, "data\\CubeComposeInfo.txt", CubeSystemParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_CUBE_DECOMPOSE, "data\\CubeDeCompositionInfo.txt", CubeSystemParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_SOCKET_ITEM_RATIO_INFO, "data\\SocketItemRatio.txt", SocketItemRatioParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_ZARD_COMPOSE_INFO, "data\\ZardComposeInfo.txt", ZardComposeInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #ifdef _CHINA // TextureListInfo.txt TextureAnimationInfo.txt ´Â _cn.txt¸¦ »ç¿ëÇÒ Çʿ䰡 ¾ø´Ù. ERROR_PARSER(RegisterScriptData(SCRIPT_TEXTURE_LIST_INFO, "data\\TextureListInfo.txt", TextureListInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_TEXTURE_ANIMATION_INFO, "data\\TextureAnimationInfo.txt", TextureAnimationInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #else ERROR_PARSER(RegisterScriptData(SCRIPT_TEXTURE_LIST_INFO, GlobalFunc::AddNationName("data\\TextureListInfo.txt"), TextureListInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_TEXTURE_ANIMATION_INFO, GlobalFunc::AddNationName("data\\TextureAnimationInfo.txt"), TextureAnimationInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif ERROR_PARSER(RegisterScriptData(SCRIPT_CREATECHAR_CUSTOMCAMERA_INFO, "data\\CreateCharCustomCamera.txt", CreateCharCustomCameraInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_LOADINGTEXTURE_INFO, "data\\LoadingTextureInfo.txt", LoadingTextureInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #ifdef _NA_005003_20120612_NEW_CHARACTER_MYSTIC_FOR_CLIENT ERROR_PARSER(RegisterScriptData(SCRIPT_CHARACTER_CREATION_INFO, "data\\NewChaCreation.txt", CharacterCreationInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #else ERROR_PARSER(RegisterScriptData(SCRIPT_CHARACTER_CREATION_INFO, "data\\ChaCreation.txt", CharacterCreationInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_NA_005003_20120612_NEW_CHARACTER_MYSTIC_FOR_CLIENT HANDLE fileHandle = CreateFile("data\\ColorInfo.txt",GENERIC_READ, FILE_SHARE_READ | FILE_SHARE_WRITE, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL); if (fileHandle != INVALID_HANDLE_VALUE) { ERROR_PARSER(RegisterScriptData(SCRIPT_COLOR_INFO, "data\\ColorInfo.txt", ColorInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ::CloseHandle(fileHandle); } #ifdef _YMS_TREECONTROL ERROR_PARSER(RegisterScriptData(SCRIPT_TOTAL_GUIDE_TREE_CONTROL, "data\\Interface\\TreeMenu_Library.txt", TreeMenuInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_TREE_CONTROL, "data\\Interface\\TreeMenuInfoParser.txt", TreeMenuInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); //ERROR_PARSER(RegisterScriptData(SCRIPT_TREE_CONTROL, "data\\Interface\\TreeMenuInfoParser_Shop.txt", TreeMenuInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); //ERROR_PARSER(RegisterScriptData(SCRIPT_TREE_CONTROL_ICON, "data\\TextureListInfoTreeMenu.txt", TextureListInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_YMS_TREECONTROL ERROR_PARSER(RegisterScriptData(SCRIPT_TOTAL_GUIDE, "data\\LibraryList.txt", TotalGuideParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_TOTAL_GUIDE_PAGE, "data\\LibraryPage.txt", TotalGuideParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_TOTAL_GUIDE_NOTICE, "data\\Notice.txt", TotalGuideParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_TOTAL_GUIDE_IMAGE, "data\\LibraryImageList.txt", TotalGuideParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #ifdef _NA_002935_20110704_ITEM_SCORE ERROR_PARSER(RegisterScriptData(SCRIPT_ITEM_SCORE_COMMON, "data\\ItemScoreInfo.txt", ItemScoreParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_NA_002935_20110704_ITEM_SCORE #ifdef _NA_20110630_BATTLE_ZONE_RENEWAL ERROR_PARSER(RegisterScriptData(SCRIPT_BATTLEZONE_TREE, "data\\BattlezoneMissiontree.txt", BattlezoneMissionTreeParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif//_NA_20110630_BATTLE_ZONE_RENEWAL #ifdef _NA_003027_20111013_HONOR_SYSTEM ERROR_PARSER(RegisterScriptData(SCRIPT_FAME_LIST, "data\\FameList.txt", FameListParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_REPUTE_LIST, "data\\ReputeList.txt", ReputeListParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_TITLE_LIST, "data\\TitleList.txt", TitleListParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_NA_003027_20111013_HONOR_SYSTEM ERROR_PARSER(RegisterScriptData(SCRIPT_HOT_KEY_INFO, "data\\HotKeyInfo.txt", HotKeyInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #ifdef _NA004034_20120102_POINT_WALLET_SYSTEM ERROR_PARSER(RegisterScriptData(SCRIPT_CURRENCY_INFO, "data\\CurrencyInfo.txt", CurrencyInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_NA004034_20120102_POINT_WALLET_SYSTEM #ifdef _RU_0000_20120312_RUSSIA_CHECK_RESOURCE_VERSION_SCRIPT ERROR_PARSER(RegisterScriptData(SCRIPT_RESOURCE_VERSION, "data\\ResourceVersion.txt", ResourceVersionParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_RU_0000_20120312_RUSSIA_CHECK_RESOURCE_VERSION_SCRIPT #ifdef _NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND ERROR_PARSER(RegisterScriptData(SCRIPT_CHAOSZONE_INFO, "data\\ChaosZoneInfo.txt", ChaosZoneInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_CHAOSZONE_TREE, "data\\ChaosZoneTree.txt", ChaosZoneTreeParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_BATTLE_GROUND_INFO, "data\\BattleGroundInfo.txt", BattleGroundInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND #ifdef _NA_000000_20120911_FULL_MISSION_HELPER ERROR_PARSER(RegisterScriptData(SCRIPT_MISSIONHELP_INFO, "data\\MissionHelp.txt", RadarFullMissionInfoParser::Instance(), SEPERATOR_QUOTATIONMARKFORSTR, PACK_FILE_NAME,TRUE) ); #endif // _NA_000000_20120911_FULL_MISSION_HELPER #ifdef _NA_000000_20130114_RENEWER_UI ERROR_PARSER(RegisterScriptData(SCRIPT_ENDURANCE_INFO, "data\\EnduranceInfo.txt", EnduranceInfoParser::Instance(), SEPERATOR_QUOTATIONMARKFORSTR, PACK_FILE_NAME,TRUE) ); #endif ERROR_PARSER(RegisterScriptData(SCRIPT_OPTION_CATEGORY_INFO, "data\\GameOptionList.txt", OptionItemInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME,TRUE) ); #ifdef _NA_007086_20140318_MONSTERBOOK ERROR_PARSER(RegisterScriptData(SCRIPT_MONSTER_BOOK, "data\\MonsterBook.txt", MonsterBookParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME,TRUE) ); ERROR_PARSER(RegisterScriptData(SCRIPT_MONSTER_BOOK_DROP_ORDER_INFO, "data\\MonsterBookDropOrder.txt", MonsterBookDropOrderParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME,TRUE) ); ERROR_PARSER(RegisterScriptData(SCRIPT_MONSTER_BOOK_DROP_ITEM, "data\\MonsterBookDropItem.txt", MonsterBookDropItemParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME,TRUE) ); #endif //_NA_007086_20140318_MONSTERBOOK #ifdef _NA_007330_20140620_GUILD_SYSTEM_EXTENSION ERROR_PARSER(RegisterScriptData(SCRIPT_GUILD_FACILITY_INFO, "data\\GuildFacilityInfo.txt", GuildFacilityInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_GUILD_FACILITY_IMAGE_INFO, "data\\GuildFacilityImage.txt", GuildFacilityImageParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif // _NA_007330_20140620_GUILD_SYSTEM_EXTENSION #ifdef _NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM ERROR_PARSER(RegisterScriptData(SCRIPT_ATTENDANCE, "data\\Attendance.txt", AttendanceParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM #ifdef _NA_008016_20150203_SUN_RANKING_SYSTEM_STATUE ERROR_PARSER(RegisterScriptData(SCRIPT_STATUE_INFO, "data\\StatueInfo.txt", StatueInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif // _NA_008016_20150203_SUN_RANKING_SYSTEM_STATUE #ifdef _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM ERROR_PARSER(RegisterScriptData(SCRIPT_AWAKENING_INFO, "data\\AwakeningInfo.txt", AwakeningInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif // _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM #ifdef _NA_008283_20150511_NOTIFICATIONS_SYSTEM ERROR_PARSER(RegisterScriptData(SCRIPT_NOTIFICATION_INFO, "data\\NotificationInfo.txt", NotificationInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif // _NA_008283_20150511_NOTIFICATIONS_SYSTEM #ifdef _NA_008350_20150617_SPA_NEW_STYLE_MODE_ANIMATION ERROR_PARSER( RegisterScriptData(SCRIPT_SPA_ZONE_INFO, "Data\\SpaZoneInfo.txt", SpaZoneInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #endif //_NA_008350_20150617_SPA_NEW_STYLE_MODE_ANIMATION #ifdef _NA_008334_20150608_SONNENSCHEIN ERROR_PARSER( RegisterScriptData(SCRIPT_GUILDMISSIONTREE, "Data\\GuildMissionTree.txt", GuildMissionTreeParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); ERROR_PARSER( RegisterScriptData(SCRIPT_SONNENSCHEIN_REWARDINFO, "Data\\SonnenScheinReward.txt", SonnenScheinRewardInfoParser::Instance(),SEPERATOR_WHITESPACE ,PACK_FILE_NAME ) ); #endif //_NA_008334_20150608_SONNENSCHEIN #ifdef _NA_008679_20160202_REWORK_BATTLEGROUND ERROR_PARSER(RegisterScriptData(SCRIPT_BATTLE_GROUND_COSTUME, "data\\BattleCostume.txt", BattleGroundInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); ERROR_PARSER(RegisterScriptData(SCRIPT_BATTLE_GROUND_WEAPON, "data\\BattleWeapon.txt", BattleGroundInfoParser::Instance(), SEPERATOR_WHITESPACE, PACK_FILE_NAME) ); #endif //_NA_008679_20160202_REWORK_BATTLEGROUND return TRUE; } VOID ClientScriptParserManager::DestroyInstanceEx() { OptionItemInfoParser::Instance()->DestroyInstance(); MapInfoParser::Instance()->DestroyInstance(); ItemInfoParser::Instance()->DestroyInstance(); SkillInfoParser::Instance()->DestroyInstance(); StateInfoParser::Instance()->DestroyInstance(); NPCInfoParser::Instance()->DestroyInstance(); ShopInfoParser::Instance()->DestroyInstance(); #ifdef _NA_003740_20111122_RANDOM_ITEM RandomItemParser::Instance()->DestroyInstance(); #endif // _NA_003740_20111122_RANDOM_ITEM ItemCompositeParser::Instance()->DestroyInstance(); ItemComposeListParser::Instance()->DestroyInstance(); SocketOptionParser::Instance()->DestroyInstance(); SunEventInfoParser::Instance()->DestroyInstance(); StyleQuickRegistInfoParser::Instance()->DestroyInstance(); ItemTypeList::Instance()->DestroyInstance(); RewardInfoList::Instance()->DestroyInstance(); LimitedItemInfoParser::Instance()->DestroyInstance(); RankOptionParser::Instance()->DestroyInstance(); MissionRewardParser::Instance()->DestroyInstance(); RequireFieldLevelInfoParser::Instance()->DestroyInstance(); ItemCrystalizeListParser::Instance()->DestroyInstance(); ExtraStoneOptionInfoParser::Instance()->DestroyInstance(); ExpValueInfoParser::Instance()->DestroyInstance(); #ifdef __NA_001358_ENCHANT_UNIFICATION InstantEnchantParser::Instance()->DestroyInstance(); #else EnchantParser::Instance()->DestroyInstance(); #endif // __NA_001358_ENCHANT_UNIFICATION #ifdef __NA_001027_20080423_RANDOM_REWARD_EVENT_ ExchangeRewardInfoParser::Instance()->DestroyInstance(); #endif GameOptionParser::Instance()->DestroyInstance(); ////2007.07.30 ÀÛ¾÷ AttachmentOffsetInfoParser::Instance()->DestroyInstance(); BGMSoundInfoParser::Instance()->DestroyInstance(); CharSoundInfoParser::Instance()->DestroyInstance(); CompositeNPCInfoParser::Instance()->DestroyInstance(); DlgPosInfoParser::Instance()->DestroyInstance(); EnvironmentInfoParser::Instance()->DestroyInstance(); EventInfoParser::Instance()->DestroyInstance(); //#ifdef HAIR_COLOR_VARIATION // HeadColorInfoParser::Instance()->DestroyInstance(); //#endif HeadMeshInfoParser::Instance()->DestroyInstance(); GuideMessageParser::Instance()->DestroyInstance(); HelpInfoParser::Instance()->DestroyInstance(); HelpMessageParser::Instance()->DestroyInstance(); HeroHeightInfoParser::Instance()->DestroyInstance(); HeroVariationInfoParser::Instance()->DestroyInstance(); HeroVoiceInfoParser::Instance()->DestroyInstance(); ItemSoundInfoParser::Instance()->DestroyInstance(); LimitedMapPortParser::Instance()->DestroyInstance(); MonsterVoiceInfoParser::Instance()->DestroyInstance(); NPCVoiceInfoParser::Instance()->DestroyInstance(); OptionListParser::Instance()->DestroyInstance(); ProjectileInfoParser::Instance()->DestroyInstance(); QuestTextInfoParser::Instance()->DestroyInstance(); RadarInfoParser::Instance()->DestroyInstance(); SkillEffectInfoParser::Instance()->DestroyInstance(); SkillTextInfoParser::Instance()->DestroyInstance(); #ifdef _NA_COSTUMEITEM_IDLE_ANIMATION cCostumeItemInfoParser::Instance()->DestroyInstance(); #endif //_NA_COSTUMEITEM_IDLE_ANIMATION cSkillEventEffectInfoParser::Instance()->DestroyInstance(); WeaponSoundInfoParser::Instance()->DestroyInstance(); GraphicResourceList::Instance()->DestroyInstance(); SkillInventoryStoreParser::Instance()->DestroyInstance(); AchievementParser::Instance()->DestroyInstance(); GuildRankInfoParser::Instance()->DestroyInstance(); GuildRightInfoParser::Instance()->DestroyInstance(); MessageInfoParser::Instance()->DestroyInstance(); SetItemOptionInfoParser::Instance()->DestroyInstance(); GuildMarkInfoParser::Instance()->DestroyInstance(); #ifdef _NA_007330_20140620_GUILD_SYSTEM_EXTENSION GuildFacilityInfoParser::Instance()->DestroyInstance(); GuildFacilityImageParser::Instance()->DestroyInstance(); #endif // _NA_007330_20140620_GUILD_SYSTEM_EXTENSION #ifdef _NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM AttendanceParser::Instance()->DestroyInstance(); #endif //_NA_007932_20150112_ATTENDANCE_CHECK_SYSTEM FateItemInfoParser::Instance()->DestroyInstance(); PetInfoParser::Instance()->DestroyInstance(); RidingInfoParser::Instance()->DestroyInstance(); SpecialTexutureInfoParser::Instance()->DestroyInstance(); LimitedOptionParser::Instance()->DestroyInstance(); EtherWeaponEffectInfoParser::Instance()->DestroyInstance(); LotteryInfoParser::Instance()->DestroyInstance(); #ifdef __NA_001062_20080623_STRENGTH_PENALTY StrengthPenaltyParser::Instance()->DestroyInstance(); StrengthUIParser::Instance()->DestroyInstance(); #endif//__NA_001062_20080623_STRENGTH_PENALTY(³»±¸µµÆÐ³ÎƼ) NPCImageInfoParser::Instance()->DestroyInstance(); HeroCustomInfoParser::Instance()->DestroyInstance(); SSQInfoParser::Instance()->DestroyInstance(); CollectionParser::Instance()->DestroyInstance(); //SolarSlot ³»ºÎ¿¡¼­ ÀÌ ÀνºÅϽº¸¦ »ç¿ëÁßÀ̶ó¼­, ¸®¹ÌƼµå ¾ÆÀÌÅÛ ¼ÒÁöÇÑ Ä³¸¯ÅÍ °ü·ÃÇØ¼­ ¸Þ¸ð¸®¸¯ ¹ß»ý LimitedOptionParser::Instance()->DestroyInstance(); //TODO: ¼­¹öÆÀ¿¡¼­ SolarSlot ¼öÁ¤Çϸé, ÀÌ ¶óÀÎÀº »èÁ¦Çϵµ·Ï ÇÑ´Ù.(ÇÊ¿ä¾øÀ¸¹Ç·Î) by kiki ConstantDialogListParser::Instance()->DestroyInstance(); PKScriptParser::Instance()->DestroyInstance(); DominationInfoParser::Instance()->DestroyInstance(); InDunOptionParser::Instance()->DestroyInstance(); AmbientSoundInfoParser::Instance()->DestroyInstance(); PerkInfoParser::Instance()->DestroyInstance(); MissionInfoParser::Instance()->DestroyInstance(); MissionTextInfoParser::Instance()->DestroyInstance(); #ifdef _YMS_AUTOBOT_GAME AutomaticInfoParser::Instance()->DestroyInstance(); AutomaticComboInfoParser::Instance()->DestroyInstance(); #endif //_YMS_AUTOBOT_GAME CubeSystemParser::Instance()->DestroyInstance(); SocketItemRatioParser::Instance()->DestroyInstance(); ZardComposeInfoParser::Instance()->DestroyInstance(); TextureListInfoParser::Instance()->DestroyInstance(); TextureAnimationInfoParser::Instance()->DestroyInstance(); TextureAnimationManager::Instance()->DestroyInstance(); MessageText::Instance()->DestroyInstance(); CreateCharCustomCameraInfoParser::Instance()->DestroyInstance(); LoadingTextureInfoParser::Instance()->DestroyInstance(); CharacterCreationInfoParser::Instance()->DestroyInstance(); ColorInfoParser::Instance()->DestroyInstance(); TreeMenuInfoParser::Instance()->DestroyInstance(); #ifdef _NA_002935_20110704_ITEM_SCORE ItemScoreParser::Instance()->DestroyInstance(); #endif //_NA_002935_20110704_ITEM_SCORE TotalGuideParser::Instance()->DestroyInstance(); #ifdef _NA_003027_20111013_HONOR_SYSTEM FameListParser::Instance()->DestroyInstance(); ReputeListParser::Instance()->DestroyInstance(); TitleListParser::Instance()->DestroyInstance(); #endif //_NA_003027_20111013_HONOR_SYSTEM #ifdef _NA_20110630_BATTLE_ZONE_RENEWAL ChaosZoneInfoParser::Instance()->DestroyInstance(); ChaosZoneTreeParser::Instance()->DestroyInstance(); BattleGroundInfoParser::Instance()->DestroyInstance(); BattlezoneMissionTreeParser::Instance()->DestroyInstance(); #endif//_NA_20110630_BATTLE_ZONE_RENEWAL HotKeyInfoParser::Instance()->DestroyInstance(); #ifdef _NA004034_20120102_POINT_WALLET_SYSTEM CurrencyInfoParser::Instance()->DestroyInstance(); #endif //_NA004034_20120102_POINT_WALLET_SYSTEM #ifdef _RU_0000_20120312_RUSSIA_CHECK_RESOURCE_VERSION_SCRIPT ResourceVersionParser::Instance()->DestroyInstance(); #endif //_RU_0000_20120312_RUSSIA_CHECK_RESOURCE_VERSION_SCRIPT #ifdef _NA_003923_20120130_GUILD_RENEWAL GuildInfoParser::Instance()->DestroyInstance(); #endif //_NA_003923_20120130_GUILD_RENEWAL #ifdef _NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND BattleGroundFlagInfoParser::Instance()->DestroyInstance(); #endif //_NA_005026_20120527_CHAOS_ZONE_BATTLE_GROUND #ifdef _NA_000000_20120911_FULL_MISSION_HELPER RadarFullMissionInfoParser::Instance()->DestroyInstance(); #endif // _NA_000000_20120911_FULL_MISSION_HELPER #ifdef _NA_000000_20130114_RENEWER_UI EnduranceInfoParser::Instance()->DestroyInstance(); #endif #ifdef _NA_007086_20140318_MONSTERBOOK MonsterBookParser::Instance()->DestroyInstance(); MonsterBookDropOrderParser::Instance()->DestroyInstance(); MonsterBookDropItemParser::Instance()->DestroyInstance(); #endif //_NA_007086_20140318_MONSTERBOOK #ifdef _NA_008016_20150203_SUN_RANKING_SYSTEM_STATUE StatueInfoParser::Instance()->DestroyInstance(); #endif // _NA_008016_20150203_SUN_RANKING_SYSTEM_STATUE #ifdef _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM AwakeningInfoParser::Instance()->DestroyInstance(); #endif // _NA_008121_20150311_EQUIPMENT_AWAKENING_SYSTEM #ifdef _NA_008283_20150511_NOTIFICATIONS_SYSTEM NotificationInfoParser::Instance()->DestroyInstance(); #endif // _NA_008283_20150511_NOTIFICATIONS_SYSTEM #ifdef _NA_008350_20150617_SPA_NEW_STYLE_MODE_ANIMATION SpaZoneInfoParser::Instance()->DestroyInstance(); #endif //_NA_008350_20150617_SPA_NEW_STYLE_MODE_ANIMATION #ifdef _NA_008334_20150608_SONNENSCHEIN GuildMissionTreeParser::Instance()->DestroyInstance(); SonnenScheinRewardInfoParser::Instance()->DestroyInstance(); #endif //_NA_008334_20150608_SONNENSCHEIN } //------------------------------------------------------------------------------ bool ClientScriptParserManager::ReloadScript(const char* old_filename, const char* new_filename, int pool_size) { TableData::CreateEnvironment(); SCRIPT_DATA* script_data = FindScript(old_filename); if (script_data && (strlen(new_filename) > 0)) { IParser* parser = script_data->m_pIParser; if (parser) { strcpy(script_data->m_szFileName, new_filename); parser->Release(); parser->Init(pool_size); if (parser->Load(script_data->m_ScriptCode ,script_data->m_szFileName ,script_data->m_bBigData ,script_data->m_SeperatorMode ,script_data->m_szPackFileName ,FALSE) ) { #ifdef _DH_OS_LANGUAGETYPE char string[256] = {0,}; char temp[256] = {0,}; static util::_tstring file_name; file_name.clear(); strcpy(string, old_filename); sprintf(temp, "%s.txt", strtok(string, "_.")); strcpy(string, GlobalFunc::AddNationName(kLanguageGlobal, temp, file_name)); parser->Load(script_data->m_ScriptCode ,file_name.c_str() ,script_data->m_bBigData ,script_data->m_SeperatorMode ,script_data->m_szPackFileName ,FALSE); #endif//_DH_OS_LANGUAGETYPE strncpy(script_data->m_szVersion, parser->GetVersion(), _countof(script_data->m_szVersion)); script_data->m_szVersion[_countof(script_data->m_szVersion) - 1] = '\0'; WRITELOG(eLOG_LEVEL_INF, c_wOUTPUT_LOG_FILE | c_wOUTPUT_LOG_CENTER, _T("SCRIPT_DATA::Version = %s"), script_data->m_szVersion); TableData::DestroyEnvironment(); return true; } } } TableData::DestroyEnvironment(); return false; } #ifdef _DH_OS_LANGUAGETYPE bool ClientScriptParserManager::UpdateMessageScript() { bool result = FALSE; LanguageType old_type = CGameOption::Instance()->GetLanguageType(); LanguageType new_type = kLanguageGlobal; util::_tstring old_file_name; util::_tstring new_file_name; GlobalFunc::AddNationName(old_type, "Data\\Interface\\Text\\messagetext.txt", old_file_name); GlobalFunc::AddNationName(new_type, "Data\\Interface\\Text\\messagetext.txt", new_file_name); result = g_pClientScriptParserManager->ReloadScript(old_file_name.c_str(), new_file_name.c_str(), MAX_QUEST_TEXT_INFO); SUN_ASSERT_MSG(result, "MessageText.txt load failed"); GlobalFunc::AddNationName(old_type, "Data\\Interface\\Text\\HelpLoadingMessage.txt", old_file_name); GlobalFunc::AddNationName(new_type, "Data\\Interface\\Text\\HelpLoadingMessage.txt", new_file_name); result = g_pClientScriptParserManager->ReloadScript(old_file_name.c_str(), new_file_name.c_str(), 100); SUN_ASSERT_MSG(result, "HelpLoadingMessage.txt load failed"); GlobalFunc::AddNationName(old_type, "Data\\Interface\\Text\\QuestText.txt", old_file_name); GlobalFunc::AddNationName(new_type, "Data\\Interface\\Text\\QuestText.txt", new_file_name); result = g_pClientScriptParserManager->ReloadScript(old_file_name.c_str(), new_file_name.c_str(), MAX_QUEST_TEXT_INFO); SUN_ASSERT_MSG(result, "QuestText.txt load failed"); GlobalFunc::AddNationName(old_type, "Data\\Interface\\Text\\MissionText.txt", old_file_name); GlobalFunc::AddNationName(new_type, "Data\\Interface\\Text\\MissionText.txt", new_file_name); result = g_pClientScriptParserManager->ReloadScript(old_file_name.c_str(), new_file_name.c_str(), MAX_QUEST_TEXT_INFO); SUN_ASSERT_MSG(result, "MissionText.txt load failed"); GlobalFunc::AddNationName(old_type, "Data\\Interface\\Text\\LibraryText.txt", old_file_name); GlobalFunc::AddNationName(new_type, "Data\\Interface\\Text\\LibraryText.txt", new_file_name); result = g_pClientScriptParserManager->ReloadScript(old_file_name.c_str(), new_file_name.c_str(), MAX_HELP_INFO); SUN_ASSERT_MSG(result, "LibraryText.txt load failed"); return result; } #endif//_DH_OS_LANGUAGETYPE //------------------------------------------------------------------------------