/// <summary> /// 检测技能是否可升级(策划案提供) /// 1 金币不足,2等级达到上限,0是能够升级,3技能为空不能升级,4技能点不足 5技能升级空间不足 /// </summary> public int CheckSkillCanUp() { if (m_soldierSkill == null) { NGUIUtil.DebugLog("m_soldierSkill == null "); return(3); } int teamMaxLevel = SoldierM.GetSoldierMaxLevel(); int skillMaxLevel = ConfigM.GetSkillMaxLevel(m_iSkillNo); if (m_soldierSkill.m_level == skillMaxLevel) //技能等级达到上限 { return(2); } int skillUpCoin = SoldierM.GetUpSkillLevelNeed(m_soldierSkill.m_level + 1, m_iSkillNo); int userCoin = UserDC.GetCoin(); if (skillUpCoin > userCoin) { return(1); } if (UserDC.GetLeftSkillPoints() < 1) { return(4); } int m = 0; int n = m_iSoldierLevel; //当前炮弹兵等级 int p = m_soldierSkill.m_level; //技能等级 int q = teamMaxLevel - skillMaxLevel; //战队等级上限 - 技能等级上限 m = n - p - q; if (m >= 1) { return(0); } else { return(5); } }
/// <summary> /// 检测是否 /// </summary> /// <param name="info"></param> /// <returns></returns> public bool CheckHaveSkillUp() { List <SoldierSkill> lSkill = m_Skill.GetUpdateSkills(); int i = 0; foreach (SoldierSkill skill in lSkill) { int m_iSkillNo = i++; if (skill == null) { continue; } int skillUpCoin = SoldierM.GetUpSkillLevelNeed(skill.m_level + 1, m_iSkillNo); int userCoin = UserDC.GetCoin(); if (skillUpCoin > userCoin) { continue; } int teamMaxLevel = SoldierM.GetSoldierMaxLevel(); int skillMaxLevel = ConfigM.GetSkillMaxLevel(m_iSkillNo); int q = teamMaxLevel - skillMaxLevel; //战队等级上限 - 技能等级上限 int m = skill.m_level - Level - q; if (Level == skillMaxLevel) //技能等级未达到上限 { continue; } if (m >= 1 && UserDC.GetLeftSkillPoints() >= 1) { return(true); } } return(false); }