/// <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); }
public void SetUI() { //skillType = 1003;//临时 缺少技能图标资源 //m_soldierSkill.m_type = 1003; if (!m_soldierSkill.m_enable) { NGUIUtil.Set2DSpriteGraySV(MyHead.Spr2dSkill, "Textures/skill/", m_soldierSkill.m_type.ToString()); } else { NGUIUtil.Set2DSprite(MyHead.Spr2dSkill, "Textures/skill/", m_soldierSkill.m_type.ToString()); } MyHead.LblSkillName.text = m_soldierSkill.m_name; if (m_soldierSkill.m_level >= 0) { string str = string.Format("{0}{1}[-]{2}", "[FFF000]", NGUIUtil.GetStringByKey(60000005), m_soldierSkill.m_level); MyHead.LblLevel.text = str; } NGUIUtil.SetActive(MyHead.LblLevel.gameObject, m_soldierSkill.m_enable); NGUIUtil.SetActive(MyHead.BtnAddSkill.gameObject, m_soldierSkill.m_enable); NGUIUtil.SetActive(MyHead.LblCoin.gameObject.transform.parent.gameObject, m_soldierSkill.m_enable); if (!m_soldierSkill.m_enable) { NGUIUtil.SetActive(MyHead.LblDisableSkillDesc.gameObject, true); string text = string.Format(NGUIUtil.GetStringByKey(30000034), NGUIUtil.GetStringByKey(99600000 + m_soldierSkill.m_enableQuality)); NGUIUtil.SetLableText(MyHead.LblDisableSkillDesc, text); } if (CheckSkillCanUp() == 2) { string text = NGUIUtil.GetStringByKey(30000059); NGUIUtil.SetLableText(MyHead.LblCoin, string.Format("{0}{1}", "[c5ff71]", text)); UISprite sprGold = MyHead.LblCoin.GetComponentInParent <UISprite>(); NGUIUtil.SetSprite(sprGold, "0"); int coin = SoldierM.GetUpSkillLevelNeed(m_soldierSkill.m_level, m_iSkillNo); if (coin > 0) { string coinText = ""; if (coin < UserDC.GetCoin()) { coinText = string.Format("{0}{1}", "[ECB408]", coin); } else { coinText = string.Format("{0}{1}", "[FF0000]", coin); } MyHead.LblCoin.text = coinText; } return; } int coin2 = SoldierM.GetUpSkillLevelNeed(m_soldierSkill.m_level + 1, m_iSkillNo); if (coin2 > 0) { string coinText = ""; if (coin2 < UserDC.GetCoin()) { coinText = string.Format("{0}{1}", "[ECB408]", coin2); } else { coinText = string.Format("{0}{1}", "[FF0000]", coin2); } MyHead.LblCoin.text = coinText; } }