public bool CheckRuneLevelupAvailable() { bool flag = this.runedic == null; if (flag) { this.ReadRuneRequire(null); } List <int> list = new List <int>(this.runeReqDic.Keys); bool result; for (int i = 0; i < list.Count; i++) { int now_lv = this.runedic[list[i]].now_lv; bool flag2 = now_lv == this.runeReqDic[list[i]].Count; if (!flag2) { RuneRequire runeRequire = this.runeReqDic[list[i]][now_lv + 1]; bool flag3 = (ulong)ModelBase <PlayerModel> .getInstance().lvl >= (ulong)((long)runeRequire.req_role_lvl) && (ulong)ModelBase <PlayerModel> .getInstance().up_lvl >= (ulong)((long)runeRequire.req_role_zhuan); if (flag3) { result = true; return(result); } } } result = false; return(result); }
public bool CheckRuneLevelupAvailable() { if (runedic == null) { ReadRuneRequire(); } List <int> rReqKeys = new List <int>(runeReqDic.Keys); for (int i = 0; i < rReqKeys.Count; i++) { int runeLv = runedic[rReqKeys[i]].now_lv; //符文等级是否已经是最高? if (runeLv == runeReqDic[rReqKeys[i]].Count) { continue; } //其它符文是否满足条件(包括总符文等级和其它符文等级)? RuneRequire rReqInfo = runeReqDic[rReqKeys[i]][runeLv + 1]; //if (runedic[rReqInfo.req_pre_rid].now_lv < rReqInfo.req_pre_rlv) // continue; //int req_total_lvl = 0; //for (int j = 0; j < rReqKeys.Count; j++) // if (runedic[rReqKeys[j]].type == rReqInfo.req_pre_tarType) // req_total_lvl = req_total_lvl + runedic[rReqKeys[j]].now_lv; //if (req_total_lvl < rReqInfo.req_pre_totalLv) // continue; //玩家转生和等级是否满足研究条件? if (PlayerModel.getInstance().lvl >= rReqInfo.req_role_lvl && PlayerModel.getInstance().up_lvl >= rReqInfo.req_role_zhuan) { return(true); } } return(false); }
private void ReadRuneRequire(List <SXML> listSxml = null) { bool flag = listSxml == null; if (flag) { listSxml = XMLMgr.instance.GetSXMLList("rune.rune", ""); } for (int i = 0; i < listSxml.Count; i++) { List <SXML> nodeList = listSxml[i].GetNodeList("level", ""); int @int = listSxml[i].getInt("id"); bool flag2 = ModelBase <PlayerModel> .getInstance().profession != listSxml[i].getInt("carr") && listSxml[i].getInt("carr") != 1; if (!flag2) { bool flag3 = !this.runeReqDic.ContainsKey(@int); if (flag3) { this.runeReqDic.Add(@int, new List <RuneRequire>()); for (int j = 0; j < nodeList.Count; j++) { List <RuneRequire> arg_155_0 = this.runeReqDic[@int]; RuneRequire item = default(RuneRequire); SXML expr_FE = nodeList[j]; item.req_role_zhuan = ((expr_FE != null) ? expr_FE.getInt("role_zhuan") : 0); SXML expr_11E = nodeList[j]; item.req_role_lvl = ((expr_11E != null) ? expr_11E.getInt("role_lvl") : 0); SXML expr_13D = nodeList[i]; item.req_cost = ((expr_13D != null) ? expr_13D.getInt("money_cost") : 0); arg_155_0.Add(item); } } else { Debug.LogError(string.Format("符文Id配置重复,重复id为:{0}", @int)); } } } }