public bool IsKnightCanUP() { bool bCanUP = false; uint lv = DataManager.Manager <RideManager>().KnightLevel; HoursemanShipUPLevel updb = GameTableManager.Instance.GetTableItem <HoursemanShipUPLevel>(lv + 1); if (updb == null) {//最高等级 return(false); } if (m_knightLevelUPIdList == null) { m_knightLevelUPIdList = GameTableManager.Instance.GetGlobalConfigKeyList("Knight_ExpItem"); } if (m_knightLevelUPIdList != null) { foreach (var item in m_knightLevelUPIdList) { uint itemID = 0; if (uint.TryParse(item, out itemID)) { int num = DataManager.Manager <ItemManager>().GetItemNumByBaseId(itemID); if (num > 0) { bCanUP = true; break; } } } } return(bCanUP); }
/// <summary> /// 通过[等级]二分快速查表 /// </summary> /// <param name="levelID">等级</param> /// <returns></returns> public static HoursemanShipUPLevel Query(this List <HoursemanShipUPLevel> sorted, uint levelID) { var key = new HoursemanShipUPLevel() { levelID = levelID }; var comparer = new Comparer1(); var index = sorted.BinarySearch(key, comparer); return(index >= 0 ? sorted[index] : default(HoursemanShipUPLevel)); }
void SetNextAttr(HoursemanShipUPLevel db, Color c) { if (db == null) { return; } m_label_jingliNum.text = db.jingshen.ToString(); m_label_zhiliNum.text = db.zhili.ToString(); m_label_minjieNum.text = db.minjie.ToString(); m_label_tiliNum.text = db.tizhi.ToString(); m_label_liliangNum.text = db.liliang.ToString(); m_label_jingliNum.color = c; m_label_zhiliNum.color = c; m_label_minjieNum.color = c; m_label_tiliNum.color = c; m_label_liliangNum.color = c; }
public bool IsKnightCanBreak() { bool bCanBreak = false; uint rank = DataManager.Manager <RideManager>().KnightBreakLevel; uint curExp = DataManager.Manager <RideManager>().KnightExp; uint lv = DataManager.Manager <RideManager>().KnightLevel; HoursemanShipUPLevel updb = GameTableManager.Instance.GetTableItem <HoursemanShipUPLevel>(lv); HoursemanShipUPDegree nextdb = GameTableManager.Instance.GetTableItem <HoursemanShipUPDegree>(rank + 1); if (nextdb != null && updb.breakLevel != 0 && curExp >= updb.uplevelexp) { int num = DataManager.Manager <ItemManager>().GetItemNumByBaseId(nextdb.breakItemID); if (num >= nextdb.itemNum) { bCanBreak = true; } } return(bCanBreak); }
public bool IsShowRideRedPoint() { uint rank = DataManager.Manager <RideManager>().KnightBreakLevel; uint curExp = DataManager.Manager <RideManager>().KnightExp; uint lv = DataManager.Manager <RideManager>().KnightLevel; HoursemanShipUPLevel updb = GameTableManager.Instance.GetTableItem <HoursemanShipUPLevel>(lv + 1); if (updb == null) { return(false); } HoursemanShipUPDegree nextdb = GameTableManager.Instance.GetTableItem <HoursemanShipUPDegree>(rank + 1); if (nextdb != null && updb.breakLevel != 0 && curExp >= updb.uplevelexp) { return(IsKnightCanBreak()); } else { return(IsKnightCanUP()); } }
void InitAttrUI() { uint lv = DataManager.Manager <RideManager>().KnightLevel; uint curExp = DataManager.Manager <RideManager>().KnightExp; uint totalExp = curExp; HoursemanShipUPLevel db = GameTableManager.Instance.GetTableItem <HoursemanShipUPLevel>(lv); if (db != null) { SetCurAttr(db, m_beforeColor); totalExp = db.uplevelexp; } //if(db.breakLevel != 0) //{ // SetNextAttr(db, m_beforeColor); //} //else { HoursemanShipUPLevel nextDb = GameTableManager.Instance.GetTableItem <HoursemanShipUPLevel>(lv + 1); if (nextDb != null) { SetNextAttr(nextDb, m_afterColor); } else { SetNextAttr(db, m_afterColor); SetCurAttr(db, m_afterColor); } } m_label_levelNum.text = lv.ToString(); m_label_exp2Label.text = string.Format("{0}/{1}", curExp, totalExp); if (totalExp != 0) { float fv = curExp * 1.0f / totalExp; m_slider_Exp2Slider.value = fv; } }
void InitRankUI() { uint rank = DataManager.Manager <RideManager>().KnightBreakLevel; uint curExp = DataManager.Manager <RideManager>().KnightExp; uint lv = DataManager.Manager <RideManager>().KnightLevel; HoursemanShipUPDegree db = GameTableManager.Instance.GetTableItem <HoursemanShipUPDegree>(rank); if (db != null) { SetCurRank(db, m_beforeColor); } HoursemanShipUPLevel updb = GameTableManager.Instance.GetTableItem <HoursemanShipUPLevel>(lv); HoursemanShipUPDegree nextdb = GameTableManager.Instance.GetTableItem <HoursemanShipUPDegree>(rank + 1); if (nextdb != null && updb.breakLevel != 0 && curExp >= updb.uplevelexp) { SetNextRank(nextdb, m_afterColor); } else { SetCurRank(db, m_beforeColor); SetNextRank(db, m_beforeColor); } }
void ShowMaxAndBreak() { uint lv = DataManager.Manager <RideManager>().KnightLevel; uint curExp = DataManager.Manager <RideManager>().KnightExp; HoursemanShipUPLevel nextDb = GameTableManager.Instance.GetTableItem <HoursemanShipUPLevel>(lv + 1); if (nextDb != null) { m_trans_Max.gameObject.SetActive(false); HoursemanShipUPLevel db = GameTableManager.Instance.GetTableItem <HoursemanShipUPLevel>(lv); if (db != null) { if (db.breakLevel != 0 && curExp >= db.uplevelexp) { m_trans_LevelUp.gameObject.SetActive(false); m_trans_LevelBreak.gameObject.SetActive(true); } else { //没有突破成功的消息发下来 只能通过按钮隐现来判断是突破还是升级 if (!m_trans_LevelUp.gameObject.activeSelf) { AddParticle(); } m_trans_LevelUp.gameObject.SetActive(true); m_trans_LevelBreak.gameObject.SetActive(false); } } } else { m_trans_Max.gameObject.SetActive(true); m_trans_LevelUp.gameObject.SetActive(false); m_trans_LevelBreak.gameObject.SetActive(false); } }