少年修仙传客户端代码仓库
client_Hale
2018-12-10 62667e194448b52fcc3c3b710852d9b178ceb3e9
Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
13个文件已修改
336 ■■■■■ 已修改文件
System/FindPrecious/FindPreciousBossBriefInfoBehaviour.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/FindPreciousModel.cs 32 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/RebornRightNowBossInfoQuery.cs 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/FlyingShoesTask.cs 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/InGamePushContainer.cs 115 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/TaskListTip.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentModel.cs 31 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/TalentWin.cs 43 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/GemLevelUpWin.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/GemModel.cs 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Strengthening/InlaidPanel.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Treasure/TreasureModel.cs 15 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowJump/WindowJumpMgr.cs 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FindPrecious/FindPreciousBossBriefInfoBehaviour.cs
@@ -71,7 +71,7 @@
            base.Display(_data);
            bossId = (int)_data;
            var bossInfoQuery = this.AddMissingComponent<RebornRightNowBossInfoQuery>();
            var bossInfoQuery = m_RefreshAtOnce.AddMissingComponent<RebornRightNowBossInfoQuery>();
            bossInfoQuery.bossId = bossId;
            findPreciousModel.bossSubscribeChangeEvent -= OnSubscribe;
            findPreciousModel.bossSubscribeChangeEvent += OnSubscribe;
System/FindPrecious/FindPreciousModel.cs
@@ -24,7 +24,7 @@
        }
        Dictionary<int, BossInfo> bossInfos = new Dictionary<int, BossInfo>();
        List<BossNotify> bossNotifies = new List<BossNotify>();
        public List<BossNotify> bossNotifies = new List<BossNotify>();
        BossNotify m_CurrentBossNotify = default(BossNotify);
        public BossNotify currentBossNotify {
@@ -170,24 +170,23 @@
                var bossId = (int)serverBossInfo.BossID;
                var bossOldAliveState = IsBossAlive(bossId);
                if (!bossInfos.ContainsKey(bossId))
                {
                    bossInfos[bossId] = new BossInfo(bossId);
                }
                bossInfos[bossId].UpdateBossInfo(serverBossInfo);
                var bossNewAliveState = IsBossAlive(bossId);
                if (!IsBossAlive(bossId))
                if (!bossNewAliveState)
                {
                    RemoveOneBossRebornNotify(bossId);
                }
                else
                if (bossNewAliveState != bossOldAliveState)
                {
                    if (bossNewAliveState != bossOldAliveState)
                    if (Config.Instance.ContainKey<DemonJarConfig>(bossId))
                    {
                        if (Config.Instance.ContainKey<DemonJarConfig>(bossId))
                        if (bossNewAliveState)
                        {
                            var config = Config.Instance.Get<DemonJarConfig>(bossId);
                            var grade = dungeonModel.GetGrade(new Dungeon(DemonJarModel.DEMONJAR_MAPID, config.LineID));
@@ -196,18 +195,19 @@
                                AddOneBossRebornNotify(bossId);
                            }
                        }
                    }
                    else
                    {
                        if (bossNewAliveState || (bossInfos[bossId].refreshTime - TimeUtility.ServerNow).TotalSeconds < PREPOSE_SECONDS)
                        {
                            AddOneBossRebornNotify(bossId);
                        }
                        else
                        {
                            if ((bossInfos[bossId].refreshTime - TimeUtility.ServerNow).TotalSeconds < PREPOSE_SECONDS)
                            {
                                AddOneBossRebornNotify(bossId);
                            }
                            else
                            {
                                FindPreciousTimer.Instance.AddClock(bossId, bossInfos[bossId].refreshTime);
                            }
                            FindPreciousTimer.Instance.AddClock(bossId, bossInfos[bossId].refreshTime);
                        }
                    }
                }
                if (bossInfoUpdateEvent != null)
@@ -462,7 +462,7 @@
            return FindPreciousType.None;
        }
        private BossNotify GetNextBossNotify()
        public BossNotify GetNextBossNotify()
        {
            if (bossNotifies.Count > 0)
            {
System/FindPrecious/RebornRightNowBossInfoQuery.cs
@@ -14,35 +14,19 @@
        public int bossId { get; set; }
        FindPreciousModel findPreciousModel { get { return ModelCenter.Instance.GetModel<FindPreciousModel>(); } }
        bool isRebornRightNow {
            get {
                FindPreciousModel.BossInfo bossInfo = null;
                if (findPreciousModel.TryGetBossInfo(bossId, out bossInfo))
                {
                    return !findPreciousModel.IsBossAlive(bossId) && TimeUtility.ServerNow > bossInfo.refreshTime;
                }
                else
                {
                    return false;
                }
            }
        }
        float rebornRightNowBossQueryTime = 0f;
        private void OnEnable()
        {
            rebornRightNowBossQueryTime = 0f;
            rebornRightNowBossQueryTime = Time.realtimeSinceStartup + 2f;
        }
        private void LateUpdate()
        {
            if (Time.realtimeSinceStartup > rebornRightNowBossQueryTime)
            {
                if (isRebornRightNow)
                {
                    rebornRightNowBossQueryTime = Time.realtimeSinceStartup + 5f;
                    findPreciousModel.RequestQueryBossInfo(bossId);
                }
                rebornRightNowBossQueryTime = Time.realtimeSinceStartup + 5f;
                findPreciousModel.RequestQueryBossInfo(bossId);
            }
        }
System/MainInterfacePanel/FlyingShoesTask.cs
@@ -41,7 +41,7 @@
        private List<int> DemonMissionTypeList = new List<int>();//魔族 
        private List<string> DemonMissionTypeListKey = new List<string>();//魔族 
        private List<int> TransportTask = new List<int>();//在PK状态下或打Boss状态下依旧可以传送的任务id
        PlayerTaskDatas m_TaskModel;
        PlayerTaskDatas taskmodel { get { return m_TaskModel ?? (m_TaskModel = ModelCenter.Instance.GetModel<PlayerTaskDatas>()); } }
        PlayerPackModel _playerPack;
@@ -153,11 +153,18 @@
            {
                case -5:
                case 0:
                   bool Bool= StateDetermination();
                    if (Bool)
                    if (TransportTask.Contains(Task_ID))
                    {
                        return;
                    }
                    else
                    {
                        bool Bool = StateDetermination();
                        if (Bool)
                        {
                            return;
                        }
                    }
                    if (mainModel.TaskId_Skill.Contains(Task_ID))
                    {
                        mainModel.TaskSkillID = Task_ID;
@@ -581,6 +588,13 @@
                    DemonMissionTypeList.Add(DemonMissionType[i]);
                    DemonMissionTypeListKey.Add(DemonMissionType1[i]);
                }
                var TransportTaskConfig= Config.Instance.Get<FuncConfigConfig>("TransportTask").Numerical1;
                int[] TransportTaskList = ConfigParse.GetMultipleStr<int>(TransportTaskConfig);
                TransportTask.Clear();
                for (int i = 0; i < TransportTaskList.Length; i++)
                {
                    TransportTask.Add(TransportTaskList[i]);
                }
            }
        }
System/MainInterfacePanel/InGamePushContainer.cs
@@ -104,7 +104,7 @@
        {
            int pushId = exchageModel.currentShopId;
            m_HelpPointExchangeNotify.gameObject.SetActive(pushId != 0);
            if(pushId != 0)
            if (pushId != 0)
            {
                m_HelpPointExchangeNotify.SetDisplay();
            }
@@ -231,64 +231,73 @@
        private void CheckBossReborn()
        {
            var notifies = findPreciousModel.bossNotifies;
            for (var i = notifies.Count - 1; i >= 0; i--)
            {
                if (BossFakeLineUtility.Instance.IsBossVisible(findPreciousModel.currentBossNotify.bossId))
                {
                    findPreciousModel.ReportConfirmBossRebornNotify(findPreciousModel.currentBossNotify);
                    continue;
                }
                var findPreciousType = findPreciousModel.GetBossFindPreciousType(findPreciousModel.currentBossNotify.bossId);
                var killable = false;
                var show = true;
                var mapId = PlayerDatas.Instance.baseData.MapID;
                switch (findPreciousType)
                {
                    case FindPreciousType.WorldBoss:
                        killable = worldBossModel.wearyValue < GeneralDefine.bossWearyValues[0] + worldBossModel.extraBossWearyValue;
                        show = !GeneralDefine.worldBossNoRebornRemindMaps.Contains(mapId);
                        break;
                    case FindPreciousType.BossHome:
                        killable = true;
                        show = !GeneralDefine.bossHomeNoRebornRemindMaps.Contains(mapId);
                        break;
                    case FindPreciousType.ElderGodArea:
                        var elderGodEnterTimes = dungeonModel.GetEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
                        var elderGodTotalTimes = dungeonModel.GetTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
                        killable = elderGodTotalTimes > elderGodEnterTimes;
                        show = !GeneralDefine.elderGodNoRebornRemindMaps.Contains(mapId);
                        break;
                    case FindPreciousType.DemonJar:
                        var totalTimes = dungeonModel.GetTotalTimes(DemonJarModel.DEMONJAR_MAPID);
                        var enterTimes = dungeonModel.GetEnterTimes(DemonJarModel.DEMONJAR_MAPID);
                        killable = totalTimes > enterTimes;
                        show = !GeneralDefine.demonJarNoRebornRemindMaps.Contains(mapId);
                        break;
                    case FindPreciousType.DogzDungeon:
                        killable = dogzDungeonModel.wearyValue < GeneralDefine.bossWearyValues[2];
                        show = !GeneralDefine.dogzNoRebornRemindMaps.Contains(mapId);
                        break;
                }
                if (!killable)
                {
                    findPreciousModel.ReportConfirmBossRebornNotify(findPreciousModel.currentBossNotify);
                    continue;
                }
                if (!show)
                {
                    findPreciousModel.ReportConfirmBossRebornNotify(findPreciousModel.currentBossNotify);
                    continue;
                }
                if (findPreciousModel.currentBossNotify != default(FindPreciousModel.BossNotify))
                {
                    break;
                }
            }
            if (findPreciousModel.currentBossNotify == default(FindPreciousModel.BossNotify))
            {
                m_BossRebornPusher.gameObject.SetActive(false);
            }
            else
            {
                if (!BossFakeLineUtility.Instance.IsBossVisible(findPreciousModel.currentBossNotify.bossId))
                {
                    var findPreciousType = findPreciousModel.GetBossFindPreciousType(findPreciousModel.currentBossNotify.bossId);
                    var killable = false;
                    var show = true;
                    var mapId = PlayerDatas.Instance.baseData.MapID;
                    switch (findPreciousType)
                    {
                        case FindPreciousType.WorldBoss:
                            killable = worldBossModel.wearyValue < GeneralDefine.bossWearyValues[0] + worldBossModel.extraBossWearyValue;
                            show = !GeneralDefine.worldBossNoRebornRemindMaps.Contains(mapId);
                            break;
                        case FindPreciousType.BossHome:
                            killable = true;
                            show = !GeneralDefine.bossHomeNoRebornRemindMaps.Contains(mapId);
                            break;
                        case FindPreciousType.ElderGodArea:
                            var elderGodEnterTimes = dungeonModel.GetEnterTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
                            var elderGodTotalTimes = dungeonModel.GetTotalTimes(ElderGodAreaModel.ELDERGODAREA_MAPID);
                            killable = elderGodTotalTimes > elderGodEnterTimes;
                            show = !GeneralDefine.elderGodNoRebornRemindMaps.Contains(mapId);
                            break;
                        case FindPreciousType.DemonJar:
                            var totalTimes = dungeonModel.GetTotalTimes(DemonJarModel.DEMONJAR_MAPID);
                            var enterTimes = dungeonModel.GetEnterTimes(DemonJarModel.DEMONJAR_MAPID);
                            killable = totalTimes > enterTimes;
                            show = !GeneralDefine.demonJarNoRebornRemindMaps.Contains(mapId);
                            break;
                        case FindPreciousType.DogzDungeon:
                            killable = dogzDungeonModel.wearyValue < GeneralDefine.bossWearyValues[2];
                            show = !GeneralDefine.dogzNoRebornRemindMaps.Contains(mapId);
                            break;
                    }
                    if (killable)
                    {
                        if (show)
                        {
                            m_BossRebornPusher.DisplayRebornBoss();
                            m_BossRebornPusher.gameObject.SetActive(true);
                        }
                    }
                    else
                    {
                        findPreciousModel.ReportConfirmBossRebornNotify(findPreciousModel.currentBossNotify);
                    }
                }
                else
                {
                    findPreciousModel.ReportConfirmBossRebornNotify(findPreciousModel.currentBossNotify);
                }
                m_BossRebornPusher.gameObject.SetActive(true);
                m_BossRebornPusher.DisplayRebornBoss();
            }
        }
System/MainInterfacePanel/TaskListTip.cs
@@ -243,7 +243,7 @@
            //    }
            //}
            if (WindowCenter.Instance.IsOpen("MainInterfaceWin"))
            if (Parent.gameObject.activeInHierarchy)
            {
                StartCoroutine(WaitAddTask(MissionID, MissionState));
            }       
System/Skill/TalentModel.cs
@@ -281,13 +281,25 @@
                }
                if (skillConfig.LearnSkillReq != 0)
                {
                    TalentSkill learnTalent;
                    if (TryGetTalent(skillConfig.LearnSkillReq, out learnTalent))
                    var reqSkillConfig = Config.Instance.Get<SkillConfig>(skillConfig.LearnSkillReq);
                    if (reqSkillConfig.FuncType == 1)
                    {
                        if (learnTalent.level < skillConfig.LearnSkillLV)
                        if (PlayerDatas.Instance.skill.GetSKillById(skillConfig.LearnSkillReq) == null)
                        {
                            error = 4;
                            error = 6;
                            return false;
                        }
                    }
                    else
                    {
                        TalentSkill learnTalent;
                        if (TryGetTalent(skillConfig.LearnSkillReq, out learnTalent))
                        {
                            if (learnTalent.level < skillConfig.LearnSkillLV)
                            {
                                error = 4;
                                return false;
                            }
                        }
                    }
                }
@@ -324,6 +336,17 @@
                case 5:
                    SysNotifyMgr.Instance.ShowTip("TalentRequirePropertyLimit");
                    break;
                case 6:
                    TalentSkill talent;
                    if (TryGetTalent(talentId, out talent))
                    {
                        var skillConfig = talent.GetSkillConfig();
                        var treasureModel = ModelCenter.Instance.GetModel<TreasureModel>();
                        var treasureId = treasureModel.GetTreasureBySkillId(skillConfig.LearnSkillReq);
                        var treasureConfig = Config.Instance.Get<TreasureConfig>(treasureId);
                        SysNotifyMgr.Instance.ShowTip("PreTreasureSkillLimit", treasureConfig.Name);
                    }
                    break;
            }
        }
System/Skill/TalentWin.cs
@@ -78,6 +78,7 @@
            model.talentSkillUpdate += TalentSkillUpdate;
            model.talentPointUpdate += TalentPointUpdate;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent += PlayerDataRefreshInfoEvent;
            PlayerSkillDatas.OnRefreshSkill += OnRefreshSkill;
        }
        protected override void OnAfterOpen()
@@ -91,6 +92,7 @@
            model.selectSkillEvent -= OnSelectSkillEvent;
            model.talentSkillUpdate -= TalentSkillUpdate;
            model.talentPointUpdate -= TalentPointUpdate;
            PlayerSkillDatas.OnRefreshSkill -= OnRefreshSkill;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= PlayerDataRefreshInfoEvent;
            for (int i = 0; i < m_TalentSeries.Length; i++)
            {
@@ -223,6 +225,11 @@
            }
        }
        private void OnRefreshSkill()
        {
            DisplayConditions();
        }
        void DisplayConditions()
        {
            TalentSkill talent;
@@ -263,16 +270,34 @@
                }
                if (skillConfig != null && index < m_SelectConditions.Length)
                {
                    TalentSkill learnTalent;
                    if (skillConfig.LearnSkillReq != 0 && model.TryGetTalent(skillConfig.LearnSkillReq, out learnTalent))
                    var learnSkillConfig = Config.Instance.Get<SkillConfig>(skillConfig.LearnSkillReq);
                    if (skillConfig.LearnSkillReq != 0)
                    {
                        var learnSkillConfig = Config.Instance.Get<SkillConfig>(skillConfig.LearnSkillReq);
                        m_SelectConditions[index].gameObject.SetActive(true);
                        var requireDisplay = StringUtility.Contact(learnSkillConfig.SkillName, " ", learnTalent.level, "/", skillConfig.LearnSkillLV);
                        requireDisplay = UIHelper.AppendStringColor(learnTalent.level >= skillConfig.LearnSkillLV ?
                            TextColType.Green : TextColType.Red, requireDisplay);
                        m_SelectConditions[index].text = StringUtility.Contact(Language.Get("TalentPreSkillCondition"), requireDisplay);
                        index++;
                        if (learnSkillConfig.FuncType == 1)
                        {
                            m_SelectConditions[index].gameObject.SetActive(true);
                            var treasureModel = ModelCenter.Instance.GetModel<TreasureModel>();
                            var treasureId = treasureModel.GetTreasureBySkillId(skillConfig.LearnSkillReq);
                            var treasureConfig = Config.Instance.Get<TreasureConfig>(treasureId);
                            bool satisfy = PlayerDatas.Instance.skill.GetSKillById(skillConfig.LearnSkillReq) != null;
                            var requireDisplay = StringUtility.Contact(learnSkillConfig.SkillName, "(", treasureConfig.Name, ")");
                            requireDisplay = UIHelper.AppendStringColor(satisfy ? TextColType.Green : TextColType.Red, requireDisplay);
                            m_SelectConditions[index].text = StringUtility.Contact(Language.Get("TalentPreTreasureSkillCondition"), requireDisplay);
                            index++;
                        }
                        else
                        {
                            TalentSkill learnTalent;
                            if (model.TryGetTalent(skillConfig.LearnSkillReq, out learnTalent))
                            {
                                m_SelectConditions[index].gameObject.SetActive(true);
                                var requireDisplay = StringUtility.Contact(learnSkillConfig.SkillName, " ", learnTalent.level, "/", skillConfig.LearnSkillLV);
                                requireDisplay = UIHelper.AppendStringColor(learnTalent.level >= skillConfig.LearnSkillLV ?
                                    TextColType.Green : TextColType.Red, requireDisplay);
                                m_SelectConditions[index].text = StringUtility.Contact(Language.Get("TalentPreSkillCondition"), requireDisplay);
                                index++;
                            }
                        }
                    }
                }
            }
System/Strengthening/GemLevelUpWin.cs
@@ -99,7 +99,7 @@
                if (stones != null && model.presentGemHole <= stones.Length)
                {
                    id = stones[model.presentGemHole - 1];
                    if(stoneBind!=null&& model.presentGemHole - 1< stoneBind.Length)
                    if (stoneBind != null && model.presentGemHole - 1 < stoneBind.Length)
                    {
                        _bind = stoneBind[model.presentGemHole - 1];
                    }
@@ -226,7 +226,7 @@
        {
            int pos = model.presentGemEquip;
            uint[] stones = PlayerStoneData.Instance.GetStoneInfo(model.presentGemEquip);
            byte[] stoneBind= PlayerStoneData.Instance.GetStoneBindInfo(model.presentGemEquip);
            byte[] stoneBind = PlayerStoneData.Instance.GetStoneBindInfo(model.presentGemEquip);
            if (stones != null)
            {
                if (model.presentGemHole - 1 >= stones.Length)
@@ -326,7 +326,9 @@
                    PlayerPropertyConfig _propertyCfg = Config.Instance.Get<PlayerPropertyConfig>(_itemCfg.Effect2);
                    m_Property0.text = _propertyCfg.Name;
                    m_PropertyValue0.text = StringUtility.Contact("+",
                        UIHelper.ReplacePercentage(_itemCfg.EffectValueA2, _propertyCfg.ISPercentage), _propertyCfg.ISPercentage == 1 ? "%" : string.Empty);
                        UIHelper.ReplacePercentage(_itemCfg.EffectValueA2, _propertyCfg.ISPercentage
                        , _propertyCfg.ISPercentage == 1 ? 2 : 1),
                        _propertyCfg.ISPercentage == 1 ? "%" : string.Empty);
                }
                m_Property1.gameObject.SetActive(_itemCfg.Effect3 != 0);
                m_PropertyValue1.gameObject.SetActive(_itemCfg.Effect3 != 0);
@@ -335,7 +337,9 @@
                    PlayerPropertyConfig _propertyCfg = Config.Instance.Get<PlayerPropertyConfig>(_itemCfg.Effect3);
                    m_Property1.text = _propertyCfg.Name;
                    m_PropertyValue1.text = StringUtility.Contact("+",
                        UIHelper.ReplacePercentage(_itemCfg.EffectValueA3, _propertyCfg.ISPercentage), _propertyCfg.ISPercentage == 1 ? "%" : string.Empty);
                        UIHelper.ReplacePercentage(_itemCfg.EffectValueA3, _propertyCfg.ISPercentage
                        , _propertyCfg.ISPercentage == 1 ? 2 : 1),
                        _propertyCfg.ISPercentage == 1 ? "%" : string.Empty);
                }
                m_Property2.gameObject.SetActive(_itemCfg.Effect4 != 0);
                m_PropertyValue2.gameObject.SetActive(_itemCfg.Effect4 != 0);
@@ -344,7 +348,9 @@
                    PlayerPropertyConfig _propertyCfg = Config.Instance.Get<PlayerPropertyConfig>(_itemCfg.Effect4);
                    m_Property2.text = _propertyCfg.Name;
                    m_PropertyValue2.text = StringUtility.Contact("+",
                        UIHelper.ReplacePercentage(_itemCfg.EffectValueA4, _propertyCfg.ISPercentage), _propertyCfg.ISPercentage == 1 ? "%" : string.Empty);
                        UIHelper.ReplacePercentage(_itemCfg.EffectValueA4, _propertyCfg.ISPercentage,
                        _propertyCfg.ISPercentage == 1 ? 2 : 1),
                        _propertyCfg.ISPercentage == 1 ? "%" : string.Empty);
                }
            }
@@ -358,7 +364,7 @@
                m_PropertyValue2.gameObject.SetActive(_active);
            }
            public void Display(int _index,bool _new)
            public void Display(int _index, bool _new)
            {
                if (_index == 0)
                {
System/Strengthening/GemModel.cs
@@ -762,7 +762,8 @@
            {
                _propertyCfg = Config.Instance.Get<PlayerPropertyConfig>(_itemCfg.Effect2);
                m_GemPropertys[0].text = _propertyCfg.Name;
                m_GemPropertyValues[0].text = StringUtility.Contact("+", UIHelper.ReplacePercentage(_itemCfg.EffectValueA2, _propertyCfg.ISPercentage),
                m_GemPropertyValues[0].text = StringUtility.Contact("+", UIHelper.ReplacePercentage(_itemCfg.EffectValueA2, _propertyCfg.ISPercentage
                    , _propertyCfg.ISPercentage == 1 ? 2 : 1),
                    _propertyCfg.ISPercentage == 1 ? "%" : string.Empty);
            }
            m_GemPropertys[1].gameObject.SetActive(_itemCfg.Effect3 != 0);
@@ -771,7 +772,8 @@
            {
                _propertyCfg = Config.Instance.Get<PlayerPropertyConfig>(_itemCfg.Effect3);
                m_GemPropertys[1].text = _propertyCfg.Name;
                m_GemPropertyValues[1].text = StringUtility.Contact("+", UIHelper.ReplacePercentage(_itemCfg.EffectValueA3, _propertyCfg.ISPercentage),
                m_GemPropertyValues[1].text = StringUtility.Contact("+", UIHelper.ReplacePercentage(_itemCfg.EffectValueA3, _propertyCfg.ISPercentage
                    , _propertyCfg.ISPercentage == 1 ? 2 : 1),
                    _propertyCfg.ISPercentage == 1 ? "%" : string.Empty);
            }
            m_GemPropertys[2].gameObject.SetActive(_itemCfg.Effect4 != 0);
@@ -780,7 +782,8 @@
            {
                _propertyCfg = Config.Instance.Get<PlayerPropertyConfig>(_itemCfg.Effect4);
                m_GemPropertys[2].text = _propertyCfg.Name;
                m_GemPropertyValues[2].text = StringUtility.Contact("+", UIHelper.ReplacePercentage(_itemCfg.EffectValueA4, _propertyCfg.ISPercentage),
                m_GemPropertyValues[2].text = StringUtility.Contact("+", UIHelper.ReplacePercentage(_itemCfg.EffectValueA4, _propertyCfg.ISPercentage
                    , _propertyCfg.ISPercentage == 1 ? 2 : 1),
                    _propertyCfg.ISPercentage == 1 ? "%" : string.Empty);
            }
        }
System/Strengthening/InlaidPanel.cs
@@ -296,7 +296,7 @@
        {
            _playerAttrCfg = Config.Instance.Get<PlayerPropertyConfig>(_itemCfg.Effect2);
            _textBuilder.Append(string.Format(_funcCfg.Numerical1, _playerAttrCfg.Name,
                UIHelper.ReplacePercentage(_itemCfg.EffectValueA2, _playerAttrCfg.ISPercentage)));
                UIHelper.ReplacePercentage(_itemCfg.EffectValueA2, _playerAttrCfg.ISPercentage, _playerAttrCfg.ISPercentage == 1 ? 2 : 1)));
            _textBuilder.Append(_playerAttrCfg.ISPercentage == 1 ? "%" : string.Empty);
        }
        if (_itemCfg.Effect3 != 0)
@@ -304,7 +304,7 @@
            _playerAttrCfg = Config.Instance.Get<PlayerPropertyConfig>(_itemCfg.Effect3);
            _textBuilder.Append("\n");
            _textBuilder.Append(string.Format(_funcCfg.Numerical1, _playerAttrCfg.Name,
                UIHelper.ReplacePercentage(_itemCfg.EffectValueA3, _playerAttrCfg.ISPercentage)));
                UIHelper.ReplacePercentage(_itemCfg.EffectValueA3, _playerAttrCfg.ISPercentage, _playerAttrCfg.ISPercentage == 1 ? 2 : 1)));
            _textBuilder.Append(_playerAttrCfg.ISPercentage == 1 ? "%" : string.Empty);
        }
        if (_itemCfg.Effect4 != 0)
@@ -312,7 +312,7 @@
            _playerAttrCfg = Config.Instance.Get<PlayerPropertyConfig>(_itemCfg.Effect4);
            _textBuilder.Append("\n");
            _textBuilder.Append(string.Format(_funcCfg.Numerical1, _playerAttrCfg.Name,
                UIHelper.ReplacePercentage(_itemCfg.EffectValueA4, _playerAttrCfg.ISPercentage)));
                UIHelper.ReplacePercentage(_itemCfg.EffectValueA4, _playerAttrCfg.ISPercentage, _playerAttrCfg.ISPercentage == 1 ? 2 : 1)));
            _textBuilder.Append(_playerAttrCfg.ISPercentage == 1 ? "%" : string.Empty);
        }
        text.text = _textBuilder.ToString();
System/Treasure/TreasureModel.cs
@@ -1795,6 +1795,21 @@
                demonDungeonChallengeNext();
            }
        }
        public int GetTreasureBySkillId(int skillId)
        {
            var list = GetTreasureCategory(TreasureCategory.Human);
            for (int i = 0; i < list.Count; i++)
            {
                Treasure treasure;
                if (TryGetTreasure(list[i], out treasure)
                    && treasure.unlockSkill == skillId)
                {
                    return list[i];
                }
            }
            return 0;
        }
    }
}
System/WindowJump/WindowJumpMgr.cs
@@ -179,6 +179,12 @@
            case JumpUIType.EquipCompose2:
            case JumpUIType.EquipCompose3:
            case JumpUIType.EquipCompose4:
            case JumpUIType.EquipCompose265:
            case JumpUIType.EquipCompose266:
            case JumpUIType.EquipCompose267:
            case JumpUIType.EquipCompose268:
            case JumpUIType.EquipCompose269:
            case JumpUIType.EquipCompose270:
                int[] types = GetSearchData(_tagWinSearchModel.ID).conditions;
                if(types.Length > 0)
                {
@@ -962,6 +968,12 @@
            case JumpUIType.ComposeTicketFairy:
            case JumpUIType.ComposeTicketGod:
            case JumpUIType.ComposeTicketIce:
            case JumpUIType.EquipCompose265:
            case JumpUIType.EquipCompose266:
            case JumpUIType.EquipCompose267:
            case JumpUIType.EquipCompose268:
            case JumpUIType.EquipCompose269:
            case JumpUIType.EquipCompose270:
                int[] types = GetSearchData(_tagWinSearchModel.ID).conditions;
                if (types.Length > 0)
                {
@@ -1504,6 +1516,13 @@
    DefenceMagicianPreview = 262, //护盾神兵预览界面
    XianYuanCoinsStore = 263, // 仙缘币商城返回主界面
    TrialExchange2 = 264, //宗门试练材料兑换
    EquipCompose265 = 265, //装备合成-6阶紫色玉佩
    EquipCompose266 = 266, //装备合成-7阶橙色0星玉佩
    EquipCompose267 = 267, //装备合成-7阶橙色1星玉佩
    EquipCompose268 = 268, //装备合成-8阶橙色2星玉佩
    EquipCompose269 = 269, //装备合成-9阶红色2星玉佩
    EquipCompose270 = 270, //装备合成-10阶红色3星玉佩
    DhszTs = 1001,//定海神针功法提升界面
    HyqTs = 1002,//皓月枪功法提升界面
    GyzTs = 1003,//鬼牙刃功法提升界面