Exemplo n.º 1
0
    /// <summary>
    /// 得到目前可以使用的栏位
    /// </summary>
    /// <returns></returns>
    public int getCanUseLocation()
    {
        CardTrainingSample sample = CardTrainingSampleManager.Instance.getDataBySid(0);

        int[] enabledCondition = new int[] { StringKit.toInt(sample.EnabledCondition[0]), StringKit.toInt(sample.EnabledCondition[1]), StringKit.toInt(sample.EnabledCondition[2]) };
        int   num = 0;

        if (UserManager.Instance.self.getUserLevel() < enabledCondition[1])
        {
            return(num);
        }
        if (UserManager.Instance.self.getUserLevel() >= enabledCondition[0] && GetRemainingTime(0) <= 0)
        {
            num++;
        }
        if (UserManager.Instance.self.getUserLevel() >= enabledCondition[1] && GetRemainingTime(1) <= 0)
        {
            num++;
        }
        if (UserManager.Instance.self.getVipLevel() >= enabledCondition[2] && GetRemainingTime(2) <= 0)
        {
            num++;
        }
        return(num);
    }
    //解析模板数据
    public override void parseSample(int sid)
    {
        CardTrainingSample sample  = new CardTrainingSample();
        string             dataStr = getSampleDataBySid(sid);

        sample.parse(sid, dataStr);
        samples.Add(sid, sample);
    }
Exemplo n.º 3
0
    public override void OnAwake()
    {
        base.OnAwake();

        CardTrainingSample sample = CardTrainingSampleManager.Instance.getDataBySid(0);

        mEnabledCondition = new int[] { StringKit.toInt(sample.EnabledCondition[0]), StringKit.toInt(sample.EnabledCondition[1]), StringKit.toInt(sample.EnabledCondition[2]) };

        UI_Btn.onClickEvent = onClickTrainingBtn;

        mLocationIndex = StringKit.toInt(name) - 1;
        mIsEnabled     = (mLocationIndex == 0 && UserManager.Instance.self.getUserLevel() >= mEnabledCondition[0]) ||
                         (mLocationIndex == 1 && UserManager.Instance.self.getUserLevel() >= mEnabledCondition[1]) ||
                         (mLocationIndex == 2 && UserManager.Instance.self.getVipLevel() >= mEnabledCondition[2]);
        updateEnabled();
    }
Exemplo n.º 4
0
    /// <summary>
    /// 更新奖励的经验和等级,双倍消耗
    /// </summary>
    private void updateExpLv()
    {
        if (mCard == null)
        {
            return;
        }

        CardTrainingSample sample = CardTrainingSampleManager.Instance.getDataBySid(0);

        int vipLv = UserManager.Instance.self.vipLevel;
        int lv    = mCard.getLevel();

        mAwardExp = StringKit.toInt(sample.AwardExp [UserManager.Instance.self.getUserLevel() - 1]);
        int trainingTime = StringKit.toInt(sample.TrainingTime [mSelecteTime]);

        mAwardExp *= trainingTime;
        if (UI_RmbSelectedMark.activeSelf)
        {
            mAwardExp *= 2;
        }
        long  exp         = mCard.getEXP();
        float vipAwardExp = vipLv > 0 ? VipManagerment.Instance.getVipbyLevel(vipLv).privilege.expAdd * 0.0001f + 1 : 1;

        mAwardExp = (long)(vipAwardExp * mAwardExp);

        //最大能获取的经验值
        long AwardMaxExp = mAwardExp;

        mExpOverflow = false;

        long tmpExp = mCard.checkExp(mAwardExp);

        if (tmpExp != -1)
        {
            AwardMaxExp  = tmpExp;
            mExpOverflow = true;
        }

//        mExpOverflow = AwardMaxExp < awardExp + exp;
        mMaxAwardExp = AwardMaxExp;
        mIsUpgrade   = mMaxAwardExp >= mCard.getNeedExp();

        UI_TipsExpLabel.text = "[97ed8e]+" + mAwardExp;
        //if (vipLv > 0) {
        //    if (!mExpOverflow)
        //        UI_TipsExpLabel.text = "[97ed8e]+" + ((long)(mAwardExp / vipAwardExp));
        //    UI_TipsExpLabel.text += " X" + (vipAwardExp) + "(VIP" + vipLv.ToString() + ")";
        //}

        int nextLv = 0;

        if (tmpExp != -1)
        {
            nextLv = EXPSampleManager.Instance.getLevel(mCard.getEXPSid(), tmpExp);
        }
        else
        {
            nextLv = EXPSampleManager.Instance.getLevel(mCard.getEXPSid(), mMaxAwardExp + exp);
        }
        UI_TipsLvLabel.text = string.Format("LV{0}             LV{1}", lv, nextLv);

        if (mExpOverflow)
        {
            UI_TipsExpLabel.text = UI_TipsExpLabel.text + " [FF0000]" + Language("cardtraining_expOverflow", mAwardExp - AwardMaxExp + exp);
            UI_TipsLvLabel.text  = UI_TipsLvLabel.text;
        }

        UI_RmbLabel.text = string.Format(LanguageConfigManager.Instance.getLanguage("CardTraining_07"), sample.TimeRmb [mSelecteTime]);
    }