少年修仙传客户端代码仓库
client_linchunjie
2019-01-23 90611eb0422227beb19503dbc0c5df25985e7f2f
5923 【前端】【1.5.100】诛仙Boss功能
1个文件已修改
32 ■■■■■ 已修改文件
System/JadeDynastyBoss/JadeDynastyBossModel.cs 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/JadeDynastyBoss/JadeDynastyBossModel.cs
@@ -80,6 +80,7 @@
            dungeonModel.updateDungeonBuyCnt += OnDungeonBuyCount;
            FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
            packModel.RefreshItemCountAct += RefreshItemCountAct;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent += PlayerDataRefreshInfoEvent;
        }
        public void OnBeforePlayerDataInitialize()
@@ -104,6 +105,7 @@
            dungeonModel.updateDungeonBuyCnt -= OnDungeonBuyCount;
            FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
            packModel.RefreshItemCountAct -= RefreshItemCountAct;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= PlayerDataRefreshInfoEvent;
        }
        void ParseConfig()
@@ -420,6 +422,15 @@
            }
        }
        private void PlayerDataRefreshInfoEvent(PlayerDataRefresh refreshType)
        {
            if(refreshType==PlayerDataRefresh.OfficialRank
                || refreshType == PlayerDataRefresh.LV)
            {
                UpdateRedpoint();
            }
        }
        private void RefreshItemCountAct(PackType packType, int arg2, int arg3)
        {
            if (packType == PackType.rptJadeDynastyEquip)
@@ -436,8 +447,25 @@
        {
            if (FuncOpen.Instance.IsFuncOpen(FUNCTIONID))
            {
                var count = dungeonModel.GetTotalTimes(JADEDYNASTY_MAP) - dungeonModel.GetEnterTimes(JADEDYNASTY_MAP);
                redpoint.count = count;
                var existAnyChallengeable = false;
                var condition = 0;
                foreach (var boss in jadeDynastyBosses)
                {
                    if (IsBossUnLocked(boss.bossNpcId, out condition))
                    {
                        existAnyChallengeable = true;
                        break;
                    }
                }
                if (existAnyChallengeable)
                {
                    var count = dungeonModel.GetTotalTimes(JADEDYNASTY_MAP) - dungeonModel.GetEnterTimes(JADEDYNASTY_MAP);
                    redpoint.count = count;
                }
                else
                {
                    redpoint.count = 0;
                }
            }
            else
            {