少年修仙传客户端代码仓库
client_linchunjie
2018-11-23 031c268574db4165957916a9043603baa2c74a46
4736  【1.3】神兵系统界面逻辑修改
1个文件已修改
38 ■■■■ 已修改文件
System/Role/AutoHammerWin.cs 38 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Role/AutoHammerWin.cs
@@ -25,6 +25,7 @@
        [SerializeField] Button m_Close;
        [SerializeField] Button m_OpenNumkeyboard;
        [SerializeField] NumKeyBoard m_NumKeyBoard;
        [SerializeField] ClickScreenOtherSpace m_ClickSpace;
        MagicianModel model
        {
@@ -36,6 +37,7 @@
        public static int selectGodWeaponType = 1;
        private int targetLevel = 0;
        private int cost = 0;
        private int minLevel = 1;
        #region Built-in
        protected override void BindController()
@@ -53,18 +55,20 @@
            m_OpenNumkeyboard.AddListener(OpenNumkeyboard);
            m_NumKeyBoard.onValueChange.AddListener(OnValueChange);
            m_NumKeyBoard.onConfirm.AddListener(OnNumConfirm);
            m_ClickSpace.AddListener(OnClickSpace);
        }
        protected override void OnPreOpen()
        {
            var godWeaponInfo = model.GetGodWeaponInfo(selectGodWeaponType);
            m_NumKeyBoard.min = 1;
            if (godWeaponInfo != null)
            {
                var configs = GodWeaponConfig.GetConfigs(selectGodWeaponType);
                var maxLevel = configs[configs.Count - 1].Lv;
                m_NumKeyBoard.min = (uint)godWeaponInfo.level + 1;
                m_NumKeyBoard.max = (uint)maxLevel;
                targetLevel = (int)m_NumKeyBoard.min;
                minLevel = godWeaponInfo.level + 1;
                targetLevel = minLevel;
            }
            m_NumKeyBoard.gameObject.SetActive(false);
            DisplayLevel();
@@ -114,7 +118,7 @@
        private void Reduce()
        {
            if (targetLevel - 1 >= m_NumKeyBoard.min)
            if (targetLevel - 1 >= minLevel)
            {
                targetLevel -= 1;
                DisplayTargetLevel();
@@ -173,7 +177,31 @@
        private void OnNumConfirm(bool isOk)
        {
            UpdateHammerLevel();
            m_NumKeyBoard.gameObject.SetActive(false);
        }
        private void OnClickSpace()
        {
            UpdateHammerLevel();
        }
        private void UpdateHammerLevel()
        {
            var godWeaponInfo = model.GetGodWeaponInfo(selectGodWeaponType);
            var minLevel = godWeaponInfo == null ? 1 : (godWeaponInfo.level + 1);
            var level = targetLevel;
            int.TryParse(m_NumKeyBoard.Value, out level);
            if (level >= m_NumKeyBoard.max)
            {
                level = (int)m_NumKeyBoard.max;
            }
            else if (level < minLevel)
            {
                level = minLevel;
            }
            targetLevel = level;
            DisplayTargetLevel();
        }
        private void OnValueChange()
@@ -183,10 +211,6 @@
            if (level >= m_NumKeyBoard.max)
            {
                level = (int)m_NumKeyBoard.max;
            }
            else if (level <= m_NumKeyBoard.min)
            {
                level = (int)m_NumKeyBoard.min;
            }
            targetLevel = level;
            DisplayTargetLevel();