/// <summary> /// 通过[复活ID]二分快速查表 /// </summary> /// <param name="dwID">复活ID</param> /// <returns></returns> public static ReliveDataBase Query(this List <ReliveDataBase> sorted, uint dwID) { var key = new ReliveDataBase() { dwID = dwID }; var comparer = new Comparer1(); var index = sorted.BinarySearch(key, comparer); return(index >= 0 ? sorted[index] : default(ReliveDataBase)); }
public override void SetGridData(object data) { OnAwake(); base.SetGridData(data); m_info = data as ReLiveDataManager.ReLiveData; ReliveDataBase db = GameTableManager.Instance.GetTableItem <ReliveDataBase>(m_info.reliveId); if (m_info == null || db == null) { Engine.Utility.Log.Error("--->>>数据出错!!!"); return; } //按钮倒计时 if (db.btnEnable == 0) { m_Btn.isEnabled = false; } else if (db.btnEnable == 1) { m_Btn.isEnabled = true; } SetBtnDes(db.strName, m_info.reliveCd); ReLiveDataManager RDMgr = DataManager.Manager <ReLiveDataManager>(); //消耗货币 uint costNum = 0; costNum = db.costStart + db.costAdd * RDMgr.ReliveTimes; if (costNum > db.costMax) { costNum = db.costMax; } SetCost(costNum); string moneyIcon = MainPlayerHelper.GetMoneyIconByType((ClientMoneyType)db.moneyType); SetMoneyIcon(moneyIcon); }