示例#1
0
        /// <summary>
        /// 通过[次数]二分快速查表
        /// </summary>
        /// <param name="times">次数</param>
        /// <returns></returns>
        public static ArenaClearCDCostDataBase Query(this List <ArenaClearCDCostDataBase> sorted, uint times)
        {
            var key = new ArenaClearCDCostDataBase()
            {
                times = times
            };
            var comparer = new Comparer1();
            var index    = sorted.BinarySearch(key, comparer);

            return(index >= 0 ? sorted[index] : default(ArenaClearCDCostDataBase));
        }
示例#2
0
    /// <summary>
    /// 清CD消耗
    /// </summary>
    /// <returns></returns>
    public uint GetClearCDCost()
    {
        uint times = m_clearCDTimes + 1;

        List <ArenaClearCDCostDataBase> list = GameTableManager.Instance.GetTableList <ArenaClearCDCostDataBase>();

        ArenaClearCDCostDataBase ClearCD = list.Find((ArenaClearCDCostDataBase data) => times == data.times);

        if (times > list.Count)
        {
            return(list[list.Count - 1].cost);
        }

        return(ClearCD.cost);
    }