示例#1
0
    void RefreshWorldLevel(uint worldLevel)
    {
        m_label_WorldLevel.text = worldLevel.ToString();
        int lv     = MainPlayerHelper.GetPlayerLevel();
        int gap    = (int)worldLevel - lv;
        int openLv = GameTableManager.Instance.GetGlobalConfig <int>("WorldDiffOpenLev");

        if (lv < openLv)
        {
            m_label_extraExp.text = "0 %";
            return;
        }
        if (gap >= 0)
        {
            UpgradeAddDataBase data = GameTableManager.Instance.GetTableItem <UpgradeAddDataBase>((uint)gap);
            if (data != null)
            {
                m_label_extraExp.text = (data.expupxs / 100).ToString() + "%";
            }
        }
        else
        {
            m_label_extraExp.text = "0 %";
        }
    }
示例#2
0
        /// <summary>
        /// 通过[世界等级差]二分快速查表
        /// </summary>
        /// <param name="worldlevdiff">世界等级差</param>
        /// <returns></returns>
        public static UpgradeAddDataBase Query(this List <UpgradeAddDataBase> sorted, uint worldlevdiff)
        {
            var key = new UpgradeAddDataBase()
            {
                worldlevdiff = worldlevdiff
            };
            var comparer = new Comparer1();
            var index    = sorted.BinarySearch(key, comparer);

            return(index >= 0 ? sorted[index] : default(UpgradeAddDataBase));
        }