少年修仙传客户端代码仓库
client_Wu Xijin
2018-08-23 d8d333db7753a02dbbbdbf5d070bff129725d9cc
Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
4个文件已修改
184 ■■■■■ 已修改文件
System/PlayerDead/PlayerDeadModel.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/SkillModel.cs 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Skill/SkillPassWin.cs 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowJump/WindowJumpMgr.cs 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/PlayerDead/PlayerDeadModel.cs
@@ -12,6 +12,9 @@
    {
        FuncConfigConfig funcConfig = Config.Instance.Get<FuncConfigConfig>("RebornArguments");
        dungeonKillArray = ConfigParse.GetMultipleStr<int>(funcConfig.Numerical2);
        RebornConditions = ConfigParse.GetMultipleStr<int>(funcConfig.Numerical1);
        FuncConfigConfig RebornTime = Config.Instance.Get<FuncConfigConfig>("DuplicatesRebornTime");
        duplicatesRebornDict = ConfigParse.GetDic<int, int>(RebornTime.Numerical1);
        SysNotifyMgr.Instance.sysNotifyEvent += RefreshPlayerDieInfo;
    }
@@ -128,8 +131,6 @@
        if (_tagMapModel.MapFBType == 0)
        {
            IsCanReborn = true;
            _tagfuncModel = Config.Instance.Get<FuncConfigConfig>("RebornArguments");
            RebornConditions = ConfigParse.GetMultipleStr<int>(_tagfuncModel.Numerical1);
            rebornTiredNum = RebornConditions[0];
            rebornPrice = RebornConditions[2];
            //isBossKill = StatusManager.Instance.IsExist((int)playerId,20022);
@@ -153,8 +154,6 @@
            if (_dungeonOpenTimeModel.DeathTime == 1)
            {
                IsCanReborn = true;
                _tagfuncModel = Config.Instance.Get<FuncConfigConfig>("DuplicatesRebornTime");
                duplicatesRebornDict = ConfigParse.GetDic<int, int>(_tagfuncModel.Numerical1);
                if (!duplicatesRebornDict.ContainsKey(PlayerDatas.Instance.baseData.MapID))
                {
                    this.duplicatesRebornTime = duplicatesRebornDict[0];
@@ -216,12 +215,9 @@
    public void RefreshDeadModel(HB103_tagMCPlayerDeadTime data)
    {
        if (data.DeadTime == 0)
            return;
        _tagfuncModel = Config.Instance.Get<FuncConfigConfig>("RebornArguments");
        RebornConditions = ConfigParse.GetMultipleStr<int>(_tagfuncModel.Numerical1);
        double timeOffest = GetTimeOffest(TimeUtility.GetTime(data.DeadTime));
        if (timeOffest <= RebornConditions[1])
        {
System/Skill/SkillModel.cs
@@ -14,11 +14,13 @@
        {
            ParseConfig();
            FuncOpen.Instance.OnFuncStateChangeEvent += OnFuncStateChangeEvent;
            PlayerTaskDatas.Event_TaskInformation += TaskInformationUpdate;
        }
        public override void UnInit()
        {
            FuncOpen.Instance.OnFuncStateChangeEvent -= OnFuncStateChangeEvent;
            PlayerTaskDatas.Event_TaskInformation -= TaskInformationUpdate;
        }
        public void OnBeforePlayerDataInitialize()
@@ -27,6 +29,7 @@
            equipPassSkills.Clear();
            playerLoginOk = false;
            equipPassPage = false;
            taskHoleCondition = 0;
        }
        #region 配置
@@ -70,6 +73,7 @@
                    passSkillLimits.Add(limit);
                }
                passEquipCnt = int.Parse(funcCfg.Numerical2);
                taskHoleDict = ConfigParse.GetDic<int, int>(funcCfg.Numerical4);
            }
            funcCfg = Config.Instance.Get<FuncConfigConfig>("PassSkillEquipGetWay");
            if (funcCfg != null)
@@ -212,6 +216,7 @@
        public int presentEquipPage { get; private set; }
        public bool playerLoginOk = false;
        private Dictionary<int, Dictionary<int, int>> equipPassSkills = new Dictionary<int, Dictionary<int, int>>();
        public Dictionary<int, int> taskHoleDict { get; private set; }
        public event Action UpdatePassEquipSkillEvent;
        public bool equipPassPage { get; set; }
        public bool TryGetEquipPassSkills(int page, int hole, out int _skillId)
@@ -283,6 +288,52 @@
            }
        }
        public event Action taskUnlockUpdate;
        public int taskHoleCondition { get; private set; }
        public const string TASKHOLEKEY = "OpenSkillSlots";
        public int UnlockPassHole
        {
            get { return LocalSave.GetInt(StringUtility.Contact(TASKHOLEKEY, "_", PlayerDatas.Instance.baseData.PlayerID)); }
            set { LocalSave.SetInt(StringUtility.Contact(TASKHOLEKEY, "_", PlayerDatas.Instance.baseData.PlayerID), value); }
        }
        public bool IsTaskHoleUnlock(int condition)
        {
            if (task._DicTaskInformation.ContainsKey(1)
                && task._DicTaskInformation[1].ContainsKey(TASKHOLEKEY))
            {
                var value = 0;
                int.TryParse(task._DicTaskInformation[1][TASKHOLEKEY], out value);
                return value >= condition;
            }
            return false;
        }
        private void TaskInformationUpdate(int _id, Dictionary<int, Dictionary<string, string>> _Dic)
        {
            if (_Dic != null && _Dic.ContainsKey(1))
            {
                var dict = _Dic[1];
                if (dict.ContainsKey(TASKHOLEKEY))
                {
                    var result = 0;
                    int.TryParse(dict[TASKHOLEKEY], out result);
                    if (result != taskHoleCondition && playerLoginOk)
                    {
                        UnlockPassHole = result;
                        if (taskUnlockUpdate != null)
                        {
                            taskUnlockUpdate();
                        }
                    }
                    taskHoleCondition = result;
                }
            }
        }
        RolePromoteModel m_PromoteModel;
        RolePromoteModel promoteModel
        {
@@ -291,6 +342,8 @@
                return m_PromoteModel ?? (m_PromoteModel = ModelCenter.Instance.GetModel<RolePromoteModel>());
            }
        }
        PlayerTaskDatas task { get { return ModelCenter.Instance.GetModel<PlayerTaskDatas>(); } }
        public void SendEquipPassSkill(int _page, int _index, int _skillId)
        {
@@ -335,6 +388,13 @@
                else if (limit.MountLv > 0)
                {
                    if (promoteModel.GetMountTotallv() < limit.MountLv)
                    {
                        return false;
                    }
                }
                else if (limit.OpenSkillSlots > 0)
                {
                    if (!IsTaskHoleUnlock(limit.OpenSkillSlots))
                    {
                        return false;
                    }
@@ -584,6 +644,7 @@
        public int level;
        public int vipLv;
        public int MountLv;
        public int OpenSkillSlots;
    }
    [Serializable]
System/Skill/SkillPassWin.cs
@@ -25,6 +25,7 @@
        [SerializeField] Button m_LeftBtn;
        [SerializeField] Button m_RightBtn;
        [SerializeField] List<SkillCell> equipPassSkills = new List<SkillCell>();
        [SerializeField] List<UIEffect> equipPassEffects = new List<UIEffect>();
        [SerializeField] Image m_DragImg;
        [SerializeField] Image m_DragSkillImg;
        [SerializeField] List<Button> m_PageBtns = new List<Button>();
@@ -36,6 +37,7 @@
        [SerializeField] ClickScreenOtherSpace clickOtherSpace;
        private List<SkillConfig> skillListPass = new List<SkillConfig>();
        private int presentSltEquipIndex = -1;
        Coroutine cacheCoroutine = null;
        SkillModel m_Model;
        SkillModel model
        {
@@ -44,6 +46,8 @@
                return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<SkillModel>());
            }
        }
        PlayerTaskDatas task { get { return ModelCenter.Instance.GetModel<PlayerTaskDatas>(); } }
        RolePromoteModel m_PromoteModel;
        RolePromoteModel promoteModel
@@ -119,6 +123,13 @@
            UpdateEquipPassSkill();
            SetEquipHoleSelect(GetEquipHoleIndex(model.presentSltSkillID));
            DayRemind.Instance.SetDayRemind(DayRemind.PASS_SKILL_REDPOINT, true);
            model.taskUnlockUpdate += TaskUnlockUpdate;
            if (cacheCoroutine != null)
            {
                StopCoroutine(cacheCoroutine);
                cacheCoroutine = null;
            }
        }
        protected override void OnActived()
@@ -129,6 +140,7 @@
        protected override void OnAfterOpen()
        {
            DisplayEffect();
        }
        protected override void OnPreClose()
@@ -138,12 +150,52 @@
            model.OnRefreshSltSkill -= OnRefreshSltSkill;
            model.UpdatePassEquipSkillEvent -= UpdatePassEquipSkillEvent;
            PlayerDatas.Instance.PlayerDataRefreshInfoEvent -= OnRefreshPlayerInfo;
            model.taskUnlockUpdate -= TaskUnlockUpdate;
            model.SetDayRemind();
            model.UnlockPassHole = 0;
        }
        protected override void OnAfterClose()
        {
            model.SendEquipPage();
        }
        private void TaskUnlockUpdate()
        {
            DisplayEffect();
        }
        void DisplayEffect()
        {
            if (model.UnlockPassHole != 0)
            {
                var index = 0;
                for (int i = 0; i < equipPassSkills.Count; i++)
                {
                    PassSkillLimit limit;
                    if (model.TryGetPassSkillLimit(i, out limit))
                    {
                        if (limit.OpenSkillSlots != 0 && limit.OpenSkillSlots == model.UnlockPassHole)
                        {
                            index = i;
                            break;
                        }
                    }
                }
                model.UnlockPassHole = 0;
                if (index >= 0 && index < equipPassEffects.Count)
                {
                    equipPassEffects[index].Play();
                    cacheCoroutine = StartCoroutine(Co_UnlockEffectComplete());
                }
            }
        }
        IEnumerator Co_UnlockEffectComplete()
        {
            yield return WaitingForSecondConst.WaitMS800;
            SysNotifyMgr.Instance.ShowTip("PassNewHole");
            UpdateEquipPassSkill();
        }
        protected override void LateUpdate()
@@ -203,6 +255,10 @@
                else if (_limit.MountLv > 0 && promoteModel.GetMountTotallv() < _limit.MountLv)
                {
                    return true;
                }
                else if (_limit.OpenSkillSlots > 0 && !model.IsTaskHoleUnlock(_limit.OpenSkillSlots))
                {
                    return false;
                }
            }
            return false;
@@ -347,6 +403,26 @@
                            continue;
                        }
                    }
                    else if (limit.OpenSkillSlots > 0)
                    {
                        if (!model.IsTaskHoleUnlock(limit.OpenSkillSlots) || model.UnlockPassHole == limit.OpenSkillSlots)
                        {
                            SetEquipSkillDeActive(i);
                            equipPassSkills[i].skillData.m_SkillNameTxt.color = equipHoleLimitColor;
                            var taskName = string.Empty;
                            if (model.taskHoleDict.ContainsKey(limit.OpenSkillSlots))
                            {
                                var taskConfig = Config.Instance.Get<PyTaskConfig>(model.taskHoleDict[limit.OpenSkillSlots]);
                                if (taskConfig != null)
                                {
                                    var taskInfoConfig = Config.Instance.Get<TASKINFOConfig>(taskConfig.name);
                                    taskName = taskInfoConfig == null ? string.Empty : taskInfoConfig.show_writing;
                                }
                            }
                            equipPassSkills[i].skillData.m_SkillNameTxt.text = Language.Get("PassSkillHoleLimitTask", taskName);
                            continue;
                        }
                    }
                }
                int _skillId = 0;
                equipPassSkills[i].skillData.m_SkillNameTxt.text = string.Empty;
@@ -441,6 +517,24 @@
                        m_GetWayBtn.gameObject.SetActive(true);
                    }
                }
                else if (limit.OpenSkillSlots > 0)
                {
                    if (!model.IsTaskHoleUnlock(limit.OpenSkillSlots))
                    {
                        var taskName = string.Empty;
                        if (model.taskHoleDict.ContainsKey(limit.OpenSkillSlots))
                        {
                            var taskConfig = Config.Instance.Get<PyTaskConfig>(model.taskHoleDict[limit.OpenSkillSlots]);
                            if (taskConfig != null)
                            {
                                var taskInfoConfig = Config.Instance.Get<TASKINFOConfig>(taskConfig.name);
                                taskName = taskInfoConfig == null ? string.Empty : taskInfoConfig.show_writing;
                            }
                        }
                        SysNotifyMgr.Instance.ShowTip("PassEquipLimitTask", taskName);
                        m_GetWayBtn.gameObject.SetActive(false);
                    }
                }
            }
        }
System/WindowJump/WindowJumpMgr.cs
@@ -42,6 +42,7 @@
    FairyModel fairyModel { get { return ModelCenter.Instance.GetModel<FairyModel>(); } }
    DailyQuestModel dailyQuestModel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
    TrialDungeonModel trialDungeonModel { get { return ModelCenter.Instance.GetModel<TrialDungeonModel>(); } }
    ImpactRankModel rankModel { get { return ModelCenter.Instance.GetModel<ImpactRankModel>(); } }
    public bool IsJumpState { get; private set;}
    private int jumpPhase = 0;
@@ -164,9 +165,20 @@
                }
                break;
            case JumpUIType.OpenServerMountRank:
                var type = int.Parse(_tagWinSearchModel.SelectActive);
                if (rankModel.IsLock(type))
                {
                    SysNotifyMgr.Instance.ShowTip("InOperationTimeError");
                    return;
                }
                if (TimeUtility.OpenDay >= rankModel.openServerActivityDays)
                {
                    SysNotifyMgr.Instance.ShowTip("ActiveOutTime");
                    return;
                }
                break;
            case JumpUIType.OpenServerRank:
                var _model = ModelCenter.Instance.GetModel<ImpactRankModel>();
                if (TimeUtility.OpenDay >= _model.openServerActivityDays)
                if (TimeUtility.OpenDay >= rankModel.openServerActivityDays)
                {
                    SysNotifyMgr.Instance.ShowTip("ActiveOutTime");
                    return;
@@ -618,7 +630,8 @@
                SetJumpLogic<BlastFurnaceWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.OpenServerMountRank:
                ModelCenter.Instance.GetModel<ImpactRankModel>().gotoImpactRankType =int.Parse(_tagWinSearchModel.SelectActive);
                var type = int.Parse(_tagWinSearchModel.SelectActive);
                ModelCenter.Instance.GetModel<ImpactRankModel>().gotoImpactRankType = type;
                SetJumpLogic<OpenServerActivityWin>(_tagWinSearchModel.TABID);
                break;
            case JumpUIType.OpenServerRank: