Esempio n. 1
0
    /// <summary>
    /// 吃经验.
    /// </summary>
    /// <param name="Num">Number.</param>
    private void AddItemUseNum(int Num)
    {
        m_parent.SetItemNum();
        m_iHaveAddNum = m_iHaveAddNum + Num;

        if (!MyHead.LblNumUsed.gameObject.activeInHierarchy)
        {
            MyHead.LblNumUsed.gameObject.SetActive(true);
        }
        MyHead.LblNumUsed.text = "X" + m_iHaveAddNum.ToString();

        int MaxLvl = UserM.GetUserMaxHeroLevel(UserDC.GetLevel());

        Info.EXP += int.Parse(m_ItemInfo.m_args);

        int MaxExp = SoldierM.GetSoldierTotalExpAtLevel(MaxLvl);


        int LevExp = SoldierM.GetSoldierExp(Info.Level);

        if (Info.EXP >= LevExp && Info.Level < MaxLvl)
        {
            int exp = SoldierM.GetSoldierExp(Info.Level);
            CalUplevelNum(exp, MaxLvl);
        }

        int   Exp = SoldierM.GetSoldierExp(Info.Level);
        float pre = (Info.EXP * 1.0f) / (Exp * 1.0f);

        AddLeveAndExp(Info.Level, pre, true);
    }
Esempio n. 2
0
    /// <summary>
    /// 设置 灵魂石数量/升级数量  和 进度条.
    /// </summary>
    /// <param name="current">拥有的量</param>
    /// <param name="upValue">升级数量</param>
    public void SetPercentageNum()
    {
        int Exp = SoldierM.GetSoldierExp(Info.Level);


        if (MyHead.SprNumPercentage)
        {
            MyHead.SprNumPercentage.fillAmount = (Info.EXP * 1.0f) / (Exp * 1.0f);
        }
    }
Esempio n. 3
0
    private void CalUplevelNum(int LevExp, int MaxLvl)
    {
        if (Info.EXP >= LevExp && LevExp > 0)
        {
            if (Info.Level < MaxLvl)
            {
                Info.EXP -= LevExp;
            }

            AddLeveAndExp(Info.Level, 1f, true);
            ShowLabel();

            Info.Level += 1;

            int NextLevExp = SoldierM.GetSoldierExp(Info.Level);
            SoldierM.GetSoldierInfo(ref Info);
            SetPower(Info.m_combat_power);
            if (NextLevExp > 0 && Info.Level < MaxLvl)
            {
                CalUplevelNum(NextLevExp, MaxLvl);
            }
        }
    }
Esempio n. 4
0
    /// <summary>
    /// 炮弹兵是否能增加经验 0:可以增加,1:已经满级不能增加,2:吃完了.
    /// </summary>
    /// <returns><c>true</c>, if can add exp was checked, <c>false</c> otherwise.</returns>
    /// <param name="SoldireTypeID">炮弹兵ID.</param>
    /// <param name="AddExpNum">炮弹兵增加的经验值</param>
    ///
    private int CheckCanAdd()
    {
        if (m_parent.GetItemNum() <= 0)
        {
            return(2);
        }

        sdata.s_soldier_experienceInfo expInfo = SoldierM.GetSoldierExpData(Info.Level);
        if (expInfo.exp == 0)
        {
            return(1);
        }

        int MaxLvl = UserM.GetUserMaxHeroLevel(UserDC.GetLevel());
        int MaxExp = SoldierM.GetSoldierExp(MaxLvl);


        if (Info.EXP >= MaxExp && Info.Level >= MaxLvl)
        {
            return(1);
        }

        return(0);
    }