using System.Collections; using System.Collections.Generic; using UnityEngine; using LitJson; using System; using System.Text.RegularExpressions; using System.Linq; public class GeneralDefine { public static Dictionary MoneyDisplayModel { get; private set; } public static int playerMaxLevel { get; private set; } public static int expDisplayId { get; private set; } //参数int,int ,string 分别表示职业,转生等级,icon static Dictionary> jobHeadPortrait = new Dictionary>(); static Dictionary> otherjobHeadPortrait = new Dictionary>(); public static int rechargeRedpointLv { get; private set; } public static int rechargeRedpointMinLv { get; private set; } public static List inGameDownLoadLevelCheckPoints = null; public static List inGameDownLoadTaskCheckPoints = null; public static int inGameDownLoadHighLevel { get; private set; } public static int[] CompareEquipPlaces { get; private set; } public static Dictionary> itemPutInPackDict { get; private set; } public static Dictionary itemMoneyCountDict { get; private set; } //背包中用于展示货币数量的物品 public static int UISpringDecorate { get; private set; } public static Dictionary> skillAttrIDDict { get; private set; } public static int mysteryShopRefreshInterval { get; private set; } public static int acutionItemHour { get; private set; } public static int maxXBGridCount { get; private set; } public static FuncConfigConfig parryCfg; public static void Init() { try { MoneyDisplayModel = ConfigParse.ParseIntDict(GetInputString("MoneyDisplayModel", 1)); // equipStarUpAmendFactor = GetIntArray("EquipStarRate")[0]; // equipStarDownAmendFactor = GetIntArray("EquipStarRate")[1]; // normalEquipStarUpgradeRateFloor = GetIntArray("EquipStarRate", 2)[0]; // normalEquipStarUpgradeRateCeiling = GetIntArray("EquipStarRate", 2)[1]; // suitEquipStarUpgradeRateFloor = GetIntArray("EquipStarRate", 3)[0]; // suitEquipStarUpgradeRateCeiling = GetIntArray("EquipStarRate", 3)[1]; // BlueEquipJumpLevel = GetInt("BlueEquipJumpLevel"); // initDepotGridCount = GetInt("InitDepotCellCount"); // maxDepotGridCount = GetInt("MaxDepotCellCount"); // maxBagGridCount = GetInt("MaxBagCellCount"); // maxXBGridCount = GetInt("TreasureSet", 3); // CompareEquipPlaces = GetIntArray("EquipUpType"); // playerMaxLevel = GetInt("PlayerMaxLV"); // kylinHomeCollectItems = GetIntArray("KirinNpc", 2); // dailyQuestOpenTime = GetTimeArray("ActionTime", 1); // flyBootItemId = GetInt("TransportPay"); // flyBootItemMoney = GetInt("TransportPay", 2); // teamReadyTime = GetInt("TeamReadyTime"); // playerNameLength = GetInt("RoleNameLength"); // elderGodAreaAngerTotal = GetInt("AngryAdd", 4); // petRandomSpeak = GetFloat("PetRandomSpeak"); // guardDungeonCageNPCID = GetInt("GuardFBCageNPCID"); // guardBubbleInterval = GetFloat("GuardFBCageNPCID", 3); // autoRideHorse = GetFloat("AutoRideHorseTime") * Constants.F_DELTA; // moneyDisplayIds = ConfigParse.GetDic(GetInputString("MoneyDisplayModel", 1)); // expDisplayId = GetInt("MoneyDisplayModel", 2); // openJobs = GetIntArray("OpenJob"); // xpGuideDelay = GetFloat("GuideConfig"); // xpGuideDuration = GetFloat("GuideConfig", 2); // ResetComAtkTime = GetFloat("AtkWaitingTime"); // autoOnHookMap = new List(GetIntArray("AutoOnHookMap")); // GuardianPickUpID = new List(GetIntArray("GuardianPickUpID")); // ArenaSetList = new List(GetIntArray("ArenaSet")); // RotateSpeed = GetInt("RoleTurnedAngle"); // CloseNpcDist = GetFloat("ConversationDistanc", 2); // FarawayNpcDist = GetFloat("ConversationDistanc"); // SpecialNpcIDs = new List(GetIntArray("SpecialCollectNpcs", 1)); // PetDanceInterval = GetInt("PetDanceInterval") * Constants.F_GAMMA; // FuncNpcDanceInterval = GetInt("PetDanceInterval", 2) * Constants.F_GAMMA; // ruinsTranscriptMapId = GetInt("SpRewardMapID"); // EarlierGetTreasure = new List(GetIntArray("EarlierGetTreasure")); // BossSound = GetInt("BossSound"); // PlayBossHurtInterval = GetFloat("BossSound", 2); // var jobHeadPortraitConfig1 = FuncConfigConfig.Get("Job1Head"); // jobHeadPortrait[1] = ConfigParse.GetDic(jobHeadPortraitConfig1.Numerical1); // otherjobHeadPortrait[1] = ConfigParse.GetDic(jobHeadPortraitConfig1.Numerical2); // var jobHeadPortraitConfig2 = FuncConfigConfig.Get("Job2Head"); // jobHeadPortrait[2] = ConfigParse.GetDic(jobHeadPortraitConfig2.Numerical1); // otherjobHeadPortrait[2] = ConfigParse.GetDic(jobHeadPortraitConfig2.Numerical2); // var jobHeadPortraitConfig3 = FuncConfigConfig.Get("Job3Head"); // jobHeadPortrait[3] = ConfigParse.GetDic(jobHeadPortraitConfig3.Numerical1); // otherjobHeadPortrait[3] = ConfigParse.GetDic(jobHeadPortraitConfig3.Numerical2); // bossWearyValues = ConfigParse.GetDic(GetInputString("KillBossCntLimit", 2)); // wingEquipLimits = ConfigParse.GetDic(GetInputString("WingRealmLimit", 1)); // int i = 0; // int[] equipPlaces = GetIntArray("EquipArea", 1); // var _trailBossJson = LitJson.JsonMapper.ToObject(GetInputString("MuneKadoTrialBossHead", 1)); // trailBossHeadIcons = new Dictionary(); // foreach (var _key in _trailBossJson.Keys) // { // var _npcId = int.Parse(_key); // if (!trailBossHeadIcons.ContainsKey(_npcId)) // { // trailBossHeadIcons.Add(_npcId, _trailBossJson[_key].ToString()); // } // } // FuncConfigConfig HorseTrainConfig = FuncConfigConfig.Get("HorseTrain"); // HorseTrainIDList = LitJson.JsonMapper.ToObject(HorseTrainConfig.Numerical1); // FuncConfigConfig PetTrainConfig = FuncConfigConfig.Get("PetUpItem"); // PetTrainIDList = LitJson.JsonMapper.ToObject(PetTrainConfig.Numerical3); // FuncConfigConfig LingQiTrainConfig = FuncConfigConfig.Get("HorseTrain"); // var LingQiTrainJson = LitJson.JsonMapper.ToObject(GetInputString("LingQiTrain", 1)); // LingQiTrainIDList = new Dictionary>(); // foreach (var key in LingQiTrainJson.Keys) // { // int attrId = int.Parse(key); // var skillIds = LingQiTrainJson[key]; // foreach (var skillId in skillIds) // { // int id = int.Parse(skillId.ToString()); // if (!LingQiTrainIDList.ContainsKey(attrId)) // { // List list = new List(); // list.Add(id); // LingQiTrainIDList.Add(attrId, list); // } // else // { // LingQiTrainIDList[attrId].Add(id); // } // } // } // var skillPlusAttrIDJson = LitJson.JsonMapper.ToObject(GetInputString("SkillPlusAttrID", 2)); // skillAttrIDDict = new Dictionary>(); // foreach (var key in skillPlusAttrIDJson.Keys) // { // int attrId = int.Parse(key); // var skillIds = skillPlusAttrIDJson[key]; // foreach (var skillId in skillIds) // { // int id = int.Parse(skillId.ToString()); // if (!skillAttrIDDict.ContainsKey(id)) // { // List list = new List(); // list.Add(attrId); // skillAttrIDDict.Add(id, list); // } // else // { // skillAttrIDDict[id].Add(attrId); // } // } // } // var BossAssistAwardJson = LitJson.JsonMapper.ToObject(GetInputString("AssistAward", 1)); // BossAssistAward = new Dictionary>(); // foreach (var key in BossAssistAwardJson.Keys) // { // int bossID = int.Parse(key); // var awards = BossAssistAwardJson[key]; // if (!BossAssistAward.ContainsKey(bossID)) // { // BossAssistAward[bossID] = new List(); // } // foreach (var award in awards) // { // BossAssistAward[bossID].Add(int.Parse(award.ToString())); // } // } // var FBAssistAwardJson = LitJson.JsonMapper.ToObject(GetInputString("AssistAward", 2)); // FBAssistAward = new Dictionary>(); // foreach (var key in FBAssistAwardJson.Keys) // { // int mapID = int.Parse(key); // var awards = FBAssistAwardJson[key]; // if (!FBAssistAward.ContainsKey(mapID)) // { // FBAssistAward[mapID] = new List(); // } // foreach (var award in awards) // { // FBAssistAward[mapID].Add(int.Parse(award.ToString())); // } // } // var _godWeaponJson = LitJson.JsonMapper.ToObject(GetInputString("GodModel", 1)); // godWeaponMobs = new Dictionary(); // foreach (var _key in _godWeaponJson.Keys) // { // var _godWeaponType = int.Parse(_key); // if (!godWeaponMobs.ContainsKey(_godWeaponType)) // { // godWeaponMobs.Add(_godWeaponType, _godWeaponJson[_key].ToString()); // } // } // audioScaleWhenFullScreenOn = GetFloat("AudioSound"); // iceCrystalMonsterScores = ConfigParse.GetDic(GetInputString("IceLodeNeedPoint", 2)); // NoXpDungeons = new List(GetIntArray("XpNoUseDungeon")); // RandomJobs = new List(GetIntArray("RandomJob")); // elderGodTalkingTime = GetInt("ElderGodTalkingTime"); // elderGodBigBoss = GetInt("ElderGodBigBoss"); // PassiveSkillShow = new List(GetIntArray("PassiveSkillShow")); // FuncConfigConfig func = FuncConfigConfig.Get("NpcPosOffset"); // LitJson.JsonData _data = LitJson.JsonMapper.ToObject(func.Numerical1); // foreach (var _key in _data.Keys) // { // int _npcID = int.Parse(_key); // double[] _pos = new double[2]; // _pos[0] = (double)_data[_key][0]; // _pos[1] = (double)_data[_key][1]; // NpcPosOffset.Add(_npcID, new Vector3((float)_pos[0], 0, (float)_pos[1])); // } // //checkShowSwitchAccount // var showSwitchAccount = FuncConfigConfig.Get("ShowSwitchAccount"); // LitJson.JsonData itemShowSwitchAccount = LitJson.JsonMapper.ToObject(showSwitchAccount.Numerical1); // checkShowSwitchAccount = new List(); // foreach(var item in itemShowSwitchAccount) // { // checkShowSwitchAccount.Add(item.ToString()); // } var putInItemPack = FuncConfigConfig.Get("PutInItemPack"); LitJson.JsonData itemPutInData = LitJson.JsonMapper.ToObject(putInItemPack.Numerical1); itemPutInPackDict = new Dictionary>(); foreach (var _key in itemPutInData.Keys) { var itemTypeData = itemPutInData[_key]; int packType = int.Parse(_key); List itemTypes = new List(); itemPutInPackDict.Add(packType, itemTypes); if (itemTypeData.IsArray) { for (int i = 0; i < itemTypeData.Count; i++) { int itemType = int.Parse(itemTypeData[i].ToString()); itemTypes.Add(itemType); } } } itemMoneyCountDict = ConfigParse.ParseIntDict(putInItemPack.Numerical2); // //拾取贵重物品 // FuncConfigConfig importantItemType = FuncConfigConfig.Get("AutoBuyDrug"); // ImportantItemType = LitJson.JsonMapper.ToObject(importantItemType.Numerical2); // ImportantItemID = LitJson.JsonMapper.ToObject(importantItemType.Numerical3); // FuncConfigConfig nxxdImg = FuncConfigConfig.Get("NXXDPicture"); // LitJson.JsonData nxxdData = LitJson.JsonMapper.ToObject(nxxdImg.Numerical1); // multipleRealmImgDict = new Dictionary(); // if (nxxdData.IsArray) // { // for (i = 0; i < nxxdData.Count; i++) // { // if (nxxdData[i].IsArray) // { // multipleRealmImgDict.Add(int.Parse(nxxdData[i][0].ToString()), nxxdData[i][1].ToString()); // } // } // } // bossShuntMaps = new List(GetIntArray("BossShunt")); // bossShuntDays = GetInt("BossShunt", 3); // itemDropEffect.Clear(); // func = FuncConfigConfig.Get("ItemEquipmentEffect"); // _data = LitJson.JsonMapper.ToObject(func.Numerical1); // List _keys = new List(_data.Keys); // for (i = 0; i < _keys.Count; ++i) // { // int[] _props = new int[3]; // for (int j = 0; j < 3; ++j) // { // _props[j] = (int)_data[_keys[i]][j]; // } // itemDropEffect[int.Parse(_keys[i])] = _props; // } // xllyDropEffect.Clear(); // _data = LitJson.JsonMapper.ToObject(func.Numerical2); // _keys.Clear(); // _keys.AddRange(_data.Keys); // for (i = 0; i < _keys.Count; ++i) // { // int[] _props = new int[3]; // for (int j = 0; j < 3; ++j) // { // _props[j] = (int)_data[_keys[i]][j]; // } // xllyDropEffect[int.Parse(_keys[i])] = _props; // } // xqryDropEffect.Clear(); // _data = LitJson.JsonMapper.ToObject(func.Numerical3); // _keys.Clear(); // _keys.AddRange(_data.Keys); // for (i = 0; i < _keys.Count; ++i) // { // int[] _props = new int[3]; // for (int j = 0; j < 3; ++j) // { // _props[j] = (int)_data[_keys[i]][j]; // } // xqryDropEffect[int.Parse(_keys[i])] = _props; // } // dropEffectQuality.Clear(); // func = FuncConfigConfig.Get("IeemEquipmentEffectQuality"); // _data = LitJson.JsonMapper.ToObject(func.Numerical1); // _keys.Clear(); // _keys.AddRange(_data.Keys); // for (i = 0; i < _keys.Count; ++i) // { // dropEffectQuality[int.Parse(_keys[i])] = (int)_data[_keys[i]]; // } // customDropEffect.Clear(); // func = FuncConfigConfig.Get("ItemEquipmentEffectItem"); // _data = LitJson.JsonMapper.ToObject(func.Numerical1); // _keys.Clear(); // _keys.AddRange(_data.Keys); // int[] _tmp = null; // List _content = null; // for (i = 0; i < _keys.Count; ++i) // { // _content = new List(); // foreach (LitJson.JsonData _values in _data[_keys[i]]) // { // if (_values.IsArray) // { // _tmp = new int[2]; // _tmp[0] = (int)_values[0]; // _tmp[1] = (int)_values[1]; // } // else // { // _tmp = new int[1]; // _tmp[0] = (int)_values; // } // _content.Add(_tmp); // } // customDropEffect.Add(int.Parse(_keys[i]), _content); // } // BuffToHitEffect.Clear(); // func = FuncConfigConfig.Get("BuffToHitEffect"); // if (!string.IsNullOrEmpty(func.Numerical1) && !string.IsNullOrEmpty(func.Numerical2)) // { // string[] _buffs = func.Numerical1.Split('|'); // string[] _effects = func.Numerical2.Split('|'); // for (i = 0; i < _buffs.Length; ++i) // { // BuffToHitEffect[int.Parse(_buffs[i])] = int.Parse(_effects[i]); // } // } // demonJarHintLevelLimit = GetInt("DemonJarFirstRemin"); // demonJarHintLineId = GetInt("DemonJarFirstRemin", 2); // skillPanelUnLock = GetInt("SkillPanelUnlock"); // dailyQuestRedpointLevelLimit = GetInt("DailyQuestRedPoint"); // lowHpRemind = GetInt("LowHpRemind"); // autoBuyItemIds = GetIntArray("BuyItemPrice", 1); // autoBuyItemPrices = GetIntArray("BuyItemPrice", 2); // neutralMaps.AddRange(GetIntArray("MapLine", 4)); // neutralBossMaps.AddRange(GetIntArray("BossListMapID")); // var _propertyIconCfg = FuncConfigConfig.Get("PropertyIcon"); // var _propertyIconJson = LitJson.JsonMapper.ToObject(_propertyIconCfg.Numerical1); // foreach (var _key in _propertyIconJson.Keys) // { // var _property = int.Parse(_key); // propertyIconDict.Add(_property, _propertyIconJson[_key].ToString()); // } // munekadolockLimit = GetInt("MunekadoLockLimit"); // demonJarRedPoint = GetInt("DemonJarRedPoint"); // LoadLV = GetInputString("LoadLV"); // mainWinSkillResetTime = GetFloat("AutomaticSwitch"); // heroDialogueOffset = GetInputString("NpcHalfLength", 1).Vector3Parse(); // heroDialogueRotation = GetInputString("NpcHalfLength", 2).Vector3Parse(); // heroDialogueScale = GetFloat("NpcHalfLength", 3); // var ancientConfig = FuncConfigConfig.Get("ElderBattleTarget"); // ancientGrandTotalAchievements = new List(); // ancientGrandTotalAchievements.AddRange(ConfigParse.GetMultipleStr(ancientConfig.Numerical1)); // ancientContinueKillAchievements = new List(); // ancientContinueKillAchievements.AddRange(ConfigParse.GetMultipleStr(ancientConfig.Numerical2)); // trialDungeonGroupChallengeTipLv = GetInt("SingleIntoFB"); // prayerRedpointLimitLv = GetInt("PrayRedPoint"); // demonJarLevelLimit = GetInt("DemonJarLevelLimit"); // maxItemDropEffectCount = GetInt("ItemMaskEffect"); // specialGuide41Mission = GetInt("SpecialGuide41", 1); // specialGuide41Achievement = GetInt("SpecialGuide41", 2); // supremeRechargeVipLv = GetInt("SupremeCTGVipLimit", 1); // rechargeRedpointLv = GetInt("FirstPayRedPoint", 1); // rechargeRedpointMinLv = GetInt("FirstPayRedPoint", 2); // runeTowerSweepBuyTimes = GetInt("RuneTowerSweepBuy"); // runeTowerSweepBuyPrice = GetInt("RuneTowerSweepBuy", 2); // teamMatchingTimeOut = GetInt("TeamMatchingTimeOut"); // inGameDownLoadLevelCheckPoints = new List(GetIntArray("InGameDownLoad")); // inGameDownLoadTaskCheckPoints = new List(GetIntArray("InGameDownLoad", 2)); // inGameDownLoadHighLevel = GetInt("InGameDownLoad", 3); // worldBossNoRebornRemindMaps = new List(GetIntArray("NoRebornRemindMap", 1)); // bossHomeNoRebornRemindMaps = new List(GetIntArray("NoRebornRemindMap", 2)); // elderGodNoRebornRemindMaps = new List(GetIntArray("NoRebornRemindMap", 3)); // demonJarNoRebornRemindMaps = new List(GetIntArray("NoRebornRemindMap", 4)); // dogzNoRebornRemindMaps = new List(GetIntArray("NoRebornRemindMap", 5)); // if (ModeDefaultConfig == null) // { // func = FuncConfigConfig.Get("ModeDefault"); // string[] _funcNpc = func.Numerical1.Split('|'); // string[] _fightNpc = func.Numerical2.Split('|'); // string[] _pet = func.Numerical3.Split('|'); // string[] _horse = func.Numerical4.Split('|'); // ModeDefaultConfig = new string[4][]; // ModeDefaultConfig[0] = _funcNpc; // ModeDefaultConfig[1] = _fightNpc; // ModeDefaultConfig[2] = _pet; // ModeDefaultConfig[3] = _horse; // } // if (RealmGroup == null) // { // func = FuncConfigConfig.Get("RealmGroup"); // string[] _group = func.Numerical1.Split('|'); // RealmGroup = new int[_group.Length]; // for (int j = 0; j < _group.Length; ++j) // { // int.TryParse(_group[j], out RealmGroup[j]); // } // } // func = FuncConfigConfig.Get("PrefightAtkRange"); // PrefightAtkRange = float.Parse(func.Numerical1); // inGameDownLoadHighestLevelPoint = GetInt("DownReward", 2); // dungeonCanUseMoneyIds = new List(GetIntArray("FBEnterTickeyAuto", 1)); // dungeonRebornClientTimes = ConfigParse.GetDic(GetInputString("DuplicatesRebornTime", 2)); // dogzBoxLimit = GetInt("DogzBoxLimit"); // fairyGrabBossMapLines = ConfigParse.GetDic(GetInputString("MapLine", 2)); // var grabBossMaps = fairyGrabBossMapLines.Keys.ToList(); // foreach (var _key in grabBossMaps) // { // fairyGrabBossMapLines[_key] = fairyGrabBossMapLines[_key] - 1; // } // if (DropItemEffectMapID == null) // { // DropItemEffectMapID = new Dictionary>(); // } // DropItemEffectMapID.Clear(); // func = FuncConfigConfig.Get("DropItemEffectMapID"); // _data = LitJson.JsonMapper.ToObject(func.Numerical1); // int _itemID; // _keys.Clear(); // _keys.AddRange(_data.Keys); // for (int j = 0; j < _keys.Count; ++j) // { // if (int.TryParse(_keys[j].ToString(), out _itemID)) // { // if (!DropItemEffectMapID.ContainsKey(_itemID)) // { // DropItemEffectMapID.Add(_itemID, new List()); // } // var _jsonMapIDs = _data[_keys[j]]; // foreach (var _jsonMapID in _jsonMapIDs) // { // var _mapID = ((LitJson.IJsonWrapper)_jsonMapID).GetInt(); // if (!DropItemEffectMapID[_itemID].Contains(_mapID)) // { // DropItemEffectMapID[_itemID].Add(_mapID); // } // } // } // } // int[] mapIDs = GetIntArray("RebornAutoFightDungeon"); // RebornAutoFightMapID = new List(mapIDs); // teamWorldCall = GetInputString("TeamWorldCall"); // teamWorldCallInviteCount = GetInt("TeamWorldCall", 2); // var ancientKingAwradConfig = FuncConfigConfig.Get("ElderBattlefieldTopAward"); // if (ancientKingAwradConfig != null) // { // var itemArray = LitJson.JsonMapper.ToObject(ancientKingAwradConfig.Numerical1); // for (int k = 0; k < itemArray.Length; k++) // { // // ancientKingAwards.Add(new Item() // // { // // id = itemArray[k][0], // // count = itemArray[k][1], // // }); // } // } // func = FuncConfigConfig.Get("QualityEffectConfig"); // lowQualityEffectCount = int.Parse(func.Numerical1); // medQualityEffectCount = int.Parse(func.Numerical2); // highQualityEffectCount = int.Parse(func.Numerical3); // func = FuncConfigConfig.Get("QualityPetCountConfig"); // lowQualityPetCount = int.Parse(func.Numerical1); // medQualityPetCount = int.Parse(func.Numerical2); // highQualityPetCount = int.Parse(func.Numerical3); // func = FuncConfigConfig.Get("QualityGuardCountConfig"); // lowQualityGuardCount = int.Parse(func.Numerical1); // medQualityGuardCount = int.Parse(func.Numerical2); // highQualityGuardCount = int.Parse(func.Numerical3); // func = FuncConfigConfig.Get("QualityPetEffectCount"); // lowQualityPetEffectCount = int.Parse(func.Numerical1); // medQualityPetEffectCount = int.Parse(func.Numerical2); // highQualityPetEffectCount = int.Parse(func.Numerical3); // func = FuncConfigConfig.Get("QualityHorseEffectCount"); // lowQualityHorseEffectCount = int.Parse(func.Numerical1); // medQualityHorseEffectCount = int.Parse(func.Numerical2); // highQualityHorseEffectCount = int.Parse(func.Numerical3); // fairyLandBuffCondition = GetInt("XjmjAddHarm", 1); // fairyLandBuffId = GetInt("XjmjAddHarm", 2); // achievementEarlierStageLevel = GetInt("AchieveLV"); // func = FuncConfigConfig.Get("PreloadSkillEffect"); // PreloadSkillEffect = new int[2][]; // PreloadSkillEffect[0] = GetIntArray("PreloadSkillEffect"); // PreloadSkillEffect[1] = GetIntArray("PreloadSkillEffect", 2); // demonJarAutoTime = GetInt("DemonJarAutoTime"); // // if (SgzzRobotEquipDict == null) // // { // // SgzzRobotEquipDict = new Dictionary>(); // // for (int job = 1; job <= 3; ++job) // // { // // string _jsonString = GetInputString("SGZCHelpBattleEquip", job); // // if (string.IsNullOrEmpty(_jsonString)) // // { // // continue; // // } // // var _jsonData = LitJson.JsonMapper.ToObject(_jsonString); // // var _jobDict = new Dictionary(); // // for (i = 0; i < _jsonData.Count; ++i) // // { // // var _lvJson = _jsonData[i]; // // var _lv = (int)_lvJson["LV"]; // // if (!_jobDict.ContainsKey(_lv)) // // { // // var _equips = _lvJson["Equips"]; // // var _randEquip = new GA_NpcFightSgzcZZ.EquipRandomInfo(); // // _randEquip.randClothesItemIDs = new int[_equips[0].Count]; // // for (int j = 0; j < _equips[0].Count; ++j) // // { // // _randEquip.randClothesItemIDs[j] = (int)_equips[0][j]; // // } // // _randEquip.randWeaponItemIDs = new int[_equips[1].Count]; // // for (int j = 0; j < _equips[1].Count; ++j) // // { // // _randEquip.randWeaponItemIDs[j] = (int)_equips[1][j]; // // } // // _randEquip.randSecondaryItemIDs = new int[_equips[2].Count]; // // for (int j = 0; j < _equips[2].Count; ++j) // // { // // _randEquip.randSecondaryItemIDs[j] = (int)_equips[2][j]; // // } // // _randEquip.randWingItemIDs = new int[_equips[3].Count]; // // for (int j = 0; j < _equips[3].Count; ++j) // // { // // _randEquip.randWingItemIDs[j] = (int)_equips[3][j]; // // } // // _randEquip.godWeaponIDs = new int[_equips[4].Count]; // // for (int j = 0; j < _equips[4].Count; ++j) // // { // // _randEquip.godWeaponIDs[j] = (int)_equips[4][j]; // // } // // _jobDict.Add(_lv, _randEquip); // // } // // } // // SgzzRobotEquipDict.Add(job, _jobDict); // // } // // } // if (SgzcRealm == null) // { // SgzcRealm = new Dictionary(); // var _lvArr = GetInputString("SGZCRobotRealm", 1).Split('|'); // var _rLvArr = GetInputString("SGZCRobotRealm", 2).Split('|'); // for (int j = 0; j < _lvArr.Length; ++j) // { // SgzcRealm[int.Parse(_lvArr[j])] = int.Parse(_rLvArr[j]); // } // } // crossServerBattleFieldOpenDay = GetInt("CrossRealmCfg", 2); // UISpringDecorate = GetInt("UISpringDecorate"); // mixServerCustomDays = GetInt("MixServer"); // openServerCustomDays = GetInt("OperationAction"); // ClientPvpAttributePer = GetInt("ClientPvPAttributePer") * Constants.F_DELTA; // mysteryShopRefreshItem = GetInt("MysteryShopRefresh"); // mysteryShopRefreshItemCount = new Dictionary(); // var mysteryShopJson = JsonMapper.ToObject(GetInputString("MysteryShopRefresh", 2)); // foreach (var key in mysteryShopJson.Keys) // { // var time = int.Parse(key); // mysteryShopRefreshItemCount[time] = (int)mysteryShopJson[key]; // } // mysteryShopRefreshItemValue = GetInt("MysteryShopRefresh", 3); // mysteryShopRefreshInterval = GetInt("MysteryShopRefresh", 4); // var equipStarConfig = FuncConfigConfig.Get("EquipPartStar"); // var equipStarJson = LitJson.JsonMapper.ToObject(equipStarConfig.Numerical1); // equipStarLimit = new Dictionary>(); // foreach (var itemColorKey in equipStarJson.Keys) // { // var itemColor = int.Parse(itemColorKey); // Dictionary dict = new Dictionary(); // foreach (var itemLevelKey in equipStarJson[itemColorKey].Keys) // { // var itemLevel = int.Parse(itemLevelKey); // var starLimit = int.Parse(equipStarJson[itemColorKey][itemLevelKey].ToString()); // dict.Add(itemLevel, starLimit); // } // equipStarLimit.Add(itemColor, dict); // } // equipTrainMustItemId = GetInt("EquipWashMustID"); // acutionItemHour = GetInt("AuctionItem"); // mainWinTopCloseTime = GetInt("AutomaticSwitch"); // equipDecomposeScreen.AddRange(GetIntArray("EquipDecomposeScreen", 2)); // func = FuncConfigConfig.Get("AtkTypeIncreasePushDis"); // var _ks = func.Numerical1.Split('|'); // var _vs = func.Numerical2.Split('|'); // for (i = 0; i < _ks.Length; ++i) // { // AtkTypeIncreasePushDis[int.Parse(_ks[i])] = int.Parse(_vs[i]) * Constants.F_DELTA; // } // func = FuncConfigConfig.Get("NpcDieSetCamera"); // if (func != null) // { // var _jsonData = LitJson.JsonMapper.ToObject(func.Numerical1); // for (i = 0; i < _jsonData.Count; ++i) // { // var _child = _jsonData[i]; // // var _lookAtData = new CameraController.LookAtData(); // // _lookAtData.position = new Vector3(MathUtility.GetFloatFromLitJson(_child[1][0]), // // MathUtility.GetFloatFromLitJson(_child[1][1]), // // MathUtility.GetFloatFromLitJson(_child[1][2])); // // _lookAtData.rotX = (int)_child[2]; // // _lookAtData.rotY = (int)_child[3]; // // _lookAtData.lastTime = MathUtility.GetFloatFromLitJson(_child[4]); // // NpcDieSetCamera[(int)_child[0]] = _lookAtData; // } // } // WorkForEnemySkills = GetIntArray("ArenaSetSkills", 1); // WorkForMeSkills = GetIntArray("ArenaSetSkills", 2); // WorkNotSkills = GetIntArray("ArenaSetSkills", 3); // defenseGetWays = GetIntArray("DefenseGetWays", 1); // skillYinjis = ConfigParse.GetDic(GetInputString("SkillYinji", 1)); // onlyUsedAtBackpackItems = new List(GetIntArray("ItemPush", 2)); // var signInSkillArray = GetIntArray("SignInPromoteSkill", 1); // if (signInSkillArray != null) // { // signInPromoteSkills.AddRange(signInSkillArray); // } // MasteryLoadingLevelLimit1 = GetInt("MasteryLoadingLevelLimit"); // MasteryLoadingLevelLimit2 = GetInt("MasteryLoadingLevelLimit", 2); // chestDisplayItems = new List(GetIntArray("ChestShowItems")); // func = FuncConfigConfig.Get("Zhanling"); // if (func != null) // { // OldZhanLingCtgIdDict = new Dictionary(); // ZhanLingCtgIdDict = new Dictionary>(); // var tempDict = JsonMapper.ToObject(func.Numerical1); // var keyList = tempDict.Keys.ToList(); // for (int j = 0; j < keyList.Count; j++) // { // OldZhanLingCtgIdDict[int.Parse(keyList[j])] = JsonMapper.ToObject>(tempDict[keyList[j]].ToJson())[0]; // ZhanLingCtgIdDict[int.Parse(keyList[j])] = JsonMapper.ToObject>(tempDict[keyList[j]].ToJson()); // } // ZhanLingCtgIdHDict = new Dictionary>(); // tempDict = JsonMapper.ToObject(func.Numerical3); // keyList = tempDict.Keys.ToList(); // for (int k = 0; k < keyList.Count; k++) // { // ZhanLingCtgIdHDict[int.Parse(keyList[k])] = JsonMapper.ToObject>(tempDict[keyList[k]].ToJson()); // } // } // func = FuncConfigConfig.Get("FBQuickPass"); // fightPowerMore = float.Parse(func.Numerical1) + 0.01f; //疑似玩家无法雷诛是C/S计算不对等问题,所以加0.01f // flashOpenArr = JsonMapper.ToObject(func.Numerical2); // flashCntMoreArr = JsonMapper.ToObject(func.Numerical3); // flashKillMaxCount = int.Parse(func.Numerical4); parryCfg = FuncConfigConfig.Get("ParryCfg"); } catch (Exception ex) { Debug.LogError(ex); } } public static string GetJobHeadPortrait(int _job, int _ReincarnationLv) { if (jobHeadPortrait.ContainsKey(_job) && jobHeadPortrait[_job].ContainsKey(_ReincarnationLv)) { return jobHeadPortrait[_job][_ReincarnationLv]; } else { return string.Empty; } } public static List GetAttrIdsBySkill(int _skillId) { if (skillAttrIDDict.ContainsKey(_skillId)) { return skillAttrIDDict[_skillId]; } return null; } public static string GetOtherJobHeadPortrait(int _job, int _ReincarnationLv) { if (otherjobHeadPortrait.ContainsKey(_job) && otherjobHeadPortrait[_job].ContainsKey(_ReincarnationLv)) { return otherjobHeadPortrait[_job][_ReincarnationLv]; } else { return string.Empty; } } public static PackType GetPackTypeByItemType(int itemType) { foreach (var key in itemPutInPackDict.Keys) { var types = itemPutInPackDict[key]; if (types.Contains(itemType)) { return (PackType)key; } } return PackType.Item; } public static int GetInt(string _key, int _index = 1) { var result = 0; int.TryParse(GetInputString(_key, _index), out result); return result; } public static float GetFloat(string _key, int _index = 1) { var result = 0f; float.TryParse(GetInputString(_key, _index), out result); return result; } public static bool GetBool(string _key, int _index = 1) { var result = false; bool.TryParse(GetInputString(_key, _index), out result); return result; } public static int[] GetIntArray(string _key, int _index = 1) { var inputString = GetInputString(_key, _index); var stringArray = inputString.Split(StringUtility.splitSeparator, StringSplitOptions.RemoveEmptyEntries); if (stringArray.Length == 0) { return null; } var result = new int[stringArray.Length]; for (int i = 0; i < stringArray.Length; i++) { int.TryParse(stringArray[i], out result[i]); } return result; } public static string[] GetStringArray(string _key, int _index = 1) { var inputString = GetInputString(_key, _index); var stringArray = inputString.Split(StringUtility.splitSeparator, StringSplitOptions.RemoveEmptyEntries); if (stringArray.Length == 0) { return null; } var result = new string[stringArray.Length]; for (int i = 0; i < stringArray.Length; i++) { result[i] = stringArray[i]; } return result; } public static float[] GetFloatArray(string _key, int _index = 1) { var inputString = GetInputString(_key, _index); var stringArray = inputString.Split(StringUtility.splitSeparator, StringSplitOptions.RemoveEmptyEntries); if (stringArray.Length == 0) { return null; } var result = new float[stringArray.Length]; for (int i = 0; i < stringArray.Length; i++) { float.TryParse(stringArray[i], out result[i]); } return result; } public static bool[] GetBoolArray(string _key, int _index = 1) { var inputString = GetInputString(_key, _index); var stringArray = inputString.Split(StringUtility.splitSeparator, StringSplitOptions.RemoveEmptyEntries); if (stringArray.Length == 0) { return null; } var result = new bool[stringArray.Length]; for (int i = 0; i < stringArray.Length; i++) { bool.TryParse(stringArray[i], out result[i]); } return result; } public static List GetTimeArray(string _key, int _index = 1) { var configContent = GetInputString(_key, _index); var stringArray = configContent.Split(StringUtility.splitSeparator, StringSplitOptions.RemoveEmptyEntries); var timeList = new List(); for (int i = 0; i < stringArray.Length; i++) { var input = stringArray[i]; var matches = Regex.Matches(input, "[0-9]{1,2}"); var hour = matches.Count > 0 ? int.Parse(matches[0].Value) : 0; var minute = matches.Count > 1 ? int.Parse(matches[1].Value) : 0; timeList.Add(hour * 60 + minute); } return timeList; } public static string GetInputString(string _key, int _index = 1) { var config = FuncConfigConfig.Get(_key); var inputString = string.Empty; switch (_index) { case 1: inputString = config.Numerical1; break; case 2: inputString = config.Numerical2; break; case 3: inputString = config.Numerical3; break; case 4: inputString = config.Numerical4; break; case 5: inputString = config.Numerical5; break; } return inputString; } public static long GetFactValue(uint value, uint valueEx) { return (long)valueEx * (long)Constants.ExpPointValue +(long)value; } }