コード例 #1
0
    //基础属性
    public static void BuildBaseProperty(PlayerData mainData, PropertyOperation operation)
    {
        operation.Clear();

        PlayerTableItem player_res = DataManager.PlayerTable[mainData.resId] as PlayerTableItem;

        if (player_res == null)
        {
            return;
        }
        LevelTableItem levelRes = DataManager.LevelTable[mainData.level] as LevelTableItem;

        if (levelRes == null)
        {
            return;
        }
        operation.AddPro((int)PropertyTypeEnum.PropertyTypeHP, levelRes.maxhp);
        operation.AddPro((int)PropertyTypeEnum.PropertyTypeMaxHP, levelRes.maxhp);
        operation.AddPro((int)PropertyTypeEnum.PropertyTypeMana, levelRes.energy);
        operation.AddPro((int)PropertyTypeEnum.PropertyTypeMaxMana, levelRes.energy);
        operation.AddPro((int)PropertyTypeEnum.PropertyTypeDamage, levelRes.damage);
        operation.AddPro((int)PropertyTypeEnum.PropertyTypeCrticalLV, levelRes.crticalLV);
        operation.AddPro((int)PropertyTypeEnum.PropertyTypeDefance, levelRes.damageReduce);
        operation.AddPro((int)PropertyTypeEnum.PropertyTypeSpeed, player_res.speed);
    }
コード例 #2
0
    public void ApplyProperty(PropertyOperation data)
    {
        LevelTableItem levelRes = DataManager.LevelTable[mLevel] as LevelTableItem;

        if (levelRes == null)
        {
            GameDebug.LogError("level.txt 配置错误");
            return;
        }

        mHpRegRate   = levelRes.hpRegRate;
        mManaRegRate = levelRes.manaRegRate;

        foreach (KeyValuePair <int, float> v in data.values)
        {
            SetBaseProperty(v.Key, v.Value);
        }
        SetBaseProperty((int)PropertyTypeEnum.PropertyTypeHP, this.GetMaxHP());
//         SetBaseProperty((int)PropertyTypeEnum.PropertyTypeMaxHP, levelRes.maxhp);
//         SetBaseProperty((int)PropertyTypeEnum.PropertyTypeMana, levelRes.energy);
//         SetBaseProperty((int)PropertyTypeEnum.PropertyTypeMaxMana, levelRes.energy);
//         SetBaseProperty((int)PropertyTypeEnum.PropertyTypeDamage, levelRes.damage);
//         SetBaseProperty((int)PropertyTypeEnum.PropertyTypeCrticalLV, levelRes.crticalLV);
//         SetBaseProperty((int)PropertyTypeEnum.PropertyTypeDefance, levelRes.damageReduce);
//         SetBaseProperty((int)PropertyTypeEnum.PropertyTypeSpeed, mRes.speed);
    }
コード例 #3
0
    private void UpdatePlayerData()
    {
        if (!DataManager.LevelTable.ContainsKey(mOtherData.level))
        {
            return;
        }

        LevelTableItem levelRes = DataManager.LevelTable[mOtherData.level] as LevelTableItem;

        if (levelRes == null)
        {
            return;
        }

        PropertyOperation op  = new PropertyOperation();
        PropertyOperation pro = new PropertyOperation();

        PropertyBuild.BuildBaseProperty(mOtherData, pro);
        op.Add(pro);
        PropertyBuild.BuildEquipProperty(mOtherData, pro);
        op.Add(pro);
        PropertyBuild.BuildWeaponProperty(mOtherData, pro);
        op.Add(pro);
        PropertyBuild.BuildWingProperty(mOtherData, pro);
        op.Add(pro);

        int hp = (int)op.GetPro((int)PropertyTypeEnum.PropertyTypeMaxHP);

        mHp.text = hp.ToString();
        int mp = (int)op.GetPro((int)PropertyTypeEnum.PropertyTypeMaxMana);

        mMp.text = mp.ToString();
        int damage = (int)op.GetPro((int)PropertyTypeEnum.PropertyTypeDamage);

        mDamage.text = damage.ToString();
        int defence = (int)op.GetPro((int)PropertyTypeEnum.PropertyTypeDefance);

        mDefence.text = defence.ToString();
        int crit = (int)op.GetPro((int)PropertyTypeEnum.PropertyTypeCrticalLV);

        mCritLv.text = crit.ToString();


        uint grade = 0;

        for (int i = 0; i < mOtherData.mGrades.Grades.Length; ++i)
        {
            grade += mOtherData.mGrades[i];
        }

        mZhanli1.text = grade.ToString();
        mZhanli2.text = "战斗力:" + grade.ToString();

        mExp.text = mOtherData.exp.ToString() + "/" + levelRes.exp.ToString();

        mName.text = mOtherData.name;

        mRoleName.text = "Lv " + mOtherData.level.ToString() + "." + mOtherData.name;
    }
コード例 #4
0
    private void OnLevelUp(int toLevel)
    {
        LevelTableItem levelRes = DataManager.LevelTable[toLevel] as LevelTableItem;

        if (levelRes == null)
        {
            ErrorHandler.Parse(ErrorCode.ConfigError, "level.txt不存在等级" + toLevel);
            return;
        }

        mHpRegRate   = levelRes.hpRegRate;
        mManaRegRate = levelRes.manaRegRate;
    }
コード例 #5
0
ファイル: EnergyBarUI.cs プロジェクト: fengmin0722/qiangzhan
    void UpdateEnergy()
    {
        starNumLb.text = StageDataManager.Instance.GetZoneCurrentStarNum(mStageListModule.StageType, mStageListModule.ZoneId).ToString() + "/" +
                         StageDataManager.Instance.GetZoneMaxStarNum(mStageListModule.StageType, mStageListModule.ZoneId).ToString();;

        int level = mPlayerDataModule.GetLevel();

        if (!DataManager.LevelTable.ContainsKey(level))
        {
            return;
        }

        LevelTableItem res = DataManager.LevelTable[level] as LevelTableItem;

        spValueLb.text = mPlayerDataModule.GetSP().ToString() + "/" + res.sp.ToString();
    }
コード例 #6
0
ファイル: UIStageEnd.cs プロジェクト: fengmin0722/qiangzhan
    private int GetMaxExp()
    {
        int level = mPlayerModule.GetLevel();

        if (!DataManager.LevelTable.ContainsKey(level))
        {
            return(0);
        }

        LevelTableItem res = DataManager.LevelTable[level] as LevelTableItem;

        if (res == null)
        {
            return(0);
        }

        return(res.exp);
    }
コード例 #7
0
    private void InitProperty(GhostData data)
    {
        LevelTableItem levelRes = DataManager.LevelTable[data.level] as LevelTableItem;

        if (levelRes == null)
        {
            GameDebug.LogError("level.txt 配置错误");
            return;
        }

        SetBaseProperty((int)PropertyTypeEnum.PropertyTypeHP, levelRes.maxhp);
        SetBaseProperty((int)PropertyTypeEnum.PropertyTypeMaxHP, levelRes.maxhp);
        SetBaseProperty((int)PropertyTypeEnum.PropertyTypeMana, levelRes.energy);
        SetBaseProperty((int)PropertyTypeEnum.PropertyTypeMaxMana, levelRes.energy);
        SetBaseProperty((int)PropertyTypeEnum.PropertyTypeDamage, levelRes.damage);
        SetBaseProperty((int)PropertyTypeEnum.PropertyTypeCrticalLV, levelRes.crticalLV);
        SetBaseProperty((int)PropertyTypeEnum.PropertyTypeDefance, levelRes.damageReduce);
        SetBaseProperty((int)PropertyTypeEnum.PropertyTypeSpeed, mRes.speed);

//      mHpRegRate = levelRes.hpRegRate;
//      mManaRegRate = levelRes.manaRegRate;
    }
コード例 #8
0
ファイル: MoneyBarUI.cs プロジェクト: fengmin0722/qiangzhan
    void UpdateSpAndStar()
    {
        StageListModule mStageListModule = ModuleManager.Instance.FindModule <StageListModule>();

        if (mStageListModule == null)
        {
            return;
        }
        starLb.text = StageDataManager.Instance.GetZoneCurrentStarNum(mStageListModule.StageType, mStageListModule.ZoneId).ToString() + "/" +
                      StageDataManager.Instance.GetZoneMaxStarNum(mStageListModule.StageType, mStageListModule.ZoneId).ToString();;


        int level = mPlayerDataModule.GetLevel();

        if (!DataManager.LevelTable.ContainsKey(level))
        {
            return;
        }

        LevelTableItem res = DataManager.LevelTable[level] as LevelTableItem;

        tiliLb.text = mPlayerDataModule.GetSP().ToString() + "/" + res.sp.ToString();
    }
コード例 #9
0
ファイル: UIStageEnd.cs プロジェクト: fengmin0722/qiangzhan
    public override void Update(uint elapsed)
    {
        if (mModule == null)
        {
            return;
        }

        //float delta = Time.unscaledDeltaTime;
        mTimer += (float)(elapsed * 0.001);        // delta;

        switch (mModule.State)
        {
        case StageEndModule.UIState.STATE_ORIGINAL:
        {
            mTimer = 0.0f;
            mBorderAni.gameObject.SetActive(true);
            mBorderAni.onFinished += OnAniFinished;
            mModule.State          = StageEndModule.UIState.STATE_0;
        }
        break;

        // 界面从上到下大特效
        case StageEndModule.UIState.STATE_0:
        {
            if (mWidget != null)
            {
                if (mTimer > StageEndModule.STATETIME_0)
                {
                    //mUIPanel.alpha = 1.0f;
                    mWidget.topAnchor.relative    = 1.0f;
                    mWidget.bottomAnchor.relative = 0.0f;

                    mTimer       -= StageEndModule.STATETIME_0;
                    mModule.State = StageEndModule.UIState.STATE_1;
                }
                else
                {
                    mWidget.topAnchor.relative    = 2.0f - (mTimer / StageEndModule.STATETIME_0);
                    mWidget.bottomAnchor.relative = 1.0f - (mTimer / StageEndModule.STATETIME_0);

                    //mUIPanel.alpha = mTimer / StageEndModule.STATETIME_0;
                }
            }
        }
        break;

        case StageEndModule.UIState.STATE_1:
        {
            if (mTimer > StageEndModule.STATETIME_1)
            {
                mTitle0.alpha   = 1.0f;
                mTopPanel.alpha = 1.0f;
                mInfoAni0.gameObject.SetActive(true);
                SoundManager.Instance.Play(105);
                mInfoAni0.onFinished += OnAniFinished;
                mTimer       -= StageEndModule.STATETIME_1;
                mModule.State = StageEndModule.UIState.STATE_2;
            }
            else
            {
                float alpha = mTimer / StageEndModule.STATETIME_1;
                mTopPanel.alpha = alpha;
                mTitle0.alpha   = alpha;
            }
        }
        break;

        case StageEndModule.UIState.STATE_2:
        {
            if (mTimer > StageEndModule.STATETIME_2)
            {
                mInfoPanel0.alpha = 1.0f;
                mInfoAni1.gameObject.SetActive(true);
                SoundManager.Instance.Play(105);
                mInfoAni1.onFinished += OnAniFinished;
                mTimer       -= StageEndModule.STATETIME_2;
                mModule.State = StageEndModule.UIState.STATE_3;
            }
            else
            {
                mInfoPanel0.alpha = mTimer / StageEndModule.STATETIME_2;
            }
        }
        break;

        case StageEndModule.UIState.STATE_3:
        {
            if (mTimer > StageEndModule.STATETIME_3)
            {
                mInfoPanel1.alpha = 1.0f;
                mInfoAni2.gameObject.SetActive(true);
                SoundManager.Instance.Play(105);
                mInfoAni2.onFinished += OnAniFinished;
                mTimer       -= StageEndModule.STATETIME_3;
                mModule.State = StageEndModule.UIState.STATE_4;
            }
            else
            {
                mInfoPanel1.alpha = mTimer / StageEndModule.STATETIME_3;
            }
        }
        break;

        case StageEndModule.UIState.STATE_4:
        {
            if (mTimer > StageEndModule.STATETIME_4)
            {
                mInfoPanel2.alpha = 1.0f;
                mTimer           -= StageEndModule.STATETIME_4;
                mModule.State     = StageEndModule.UIState.STATE_5;
            }
            else
            {
                mInfoPanel2.alpha = mTimer / StageEndModule.STATETIME_4;
            }
        }
        break;

        case StageEndModule.UIState.STATE_5:
        {
            if (mTimer > StageEndModule.STATETIME_5)
            {
                mBallBk.alpha = 1.0f;

                UITweener gradeObj = mGradeMap[mModule.GetGrade()];
                gradeObj.gameObject.SetActive(true);
                gradeObj.Play();

                mGradeAni.gameObject.SetActive(true);
                mGradeAni.onFinished += OnAniFinished;

                mTimer        = 0.0f;
                mModule.State = StageEndModule.UIState.STATE_6;
            }
            else
            {
                mBallBk.alpha = mTimer / StageEndModule.STATETIME_5;
            }
        }
        break;

        case StageEndModule.UIState.STATE_6:
        {
            if (mTimer > StageEndModule.STATETIME_6)
            {
                mTimer        = 0.0f;
                mModule.State = StageEndModule.UIState.STATE_7;
            }
        }
        break;

        case StageEndModule.UIState.STATE_7:
        {
            if (mTimer > StageEndModule.STATETIME_7)
            {
                mInfoPanel0.alpha = 0.0f;
                mInfoPanel1.alpha = 0.0f;
                mInfoPanel2.alpha = 0.0f;
                mTitle0.alpha     = 0.0f;

                mTimer       -= StageEndModule.STATETIME_7;
                mModule.State = StageEndModule.UIState.STATE_8;
            }
            else
            {
                float alpha = 1.0f - (mTimer / StageEndModule.STATETIME_7);
                mInfoPanel0.alpha = alpha;
                mInfoPanel1.alpha = alpha;
                mInfoPanel2.alpha = alpha;
                mTitle0.alpha     = alpha;
                mInfoPanel.gameObject.transform.localPosition = new Vector3(mInfoPanel.gameObject.transform.localPosition.x,
                                                                            mInfoPosY + (164.0f * mTimer / StageEndModule.STATETIME_7), mInfoPanel.gameObject.transform.localPosition.z);
                mBallBk.gameObject.transform.localPosition = new Vector3(mBallBk.gameObject.transform.localPosition.x,
                                                                         mBallPosY + (327.0f * mTimer / StageEndModule.STATETIME_7), mBallBk.gameObject.transform.localPosition.z);
                mBallBk.gameObject.transform.localScale = new Vector3(1.0f - 0.2f * (mTimer / StageEndModule.STATETIME_7), 1.0f - 0.2f * (mTimer / StageEndModule.STATETIME_7), 1.0f);
            }
        }
        break;

        case StageEndModule.UIState.STATE_8:
        {
            if (mTimer > StageEndModule.STATETIME_8)
            {
                mTitle1.alpha      = 1.0f;
                mBottomPanel.alpha = 1.0f;
                mTimer            -= StageEndModule.STATETIME_8;
                mModule.State      = StageEndModule.UIState.STATE_9;
            }
            else
            {
                float alpha = mTimer / StageEndModule.STATETIME_8;
                mBottomPanel.alpha = alpha;
                mTitle1.alpha      = alpha;
            }
        }
        break;

        case StageEndModule.UIState.STATE_9:
        {
//                     if(ModuleManager.Instance.FindModule<PlayerDataModule>().IsLevelUp())
//                     {
//                         mLevelUp.SetActive(true);
//                         mLevelUpAnimation.Play(true);
//                     }

            if (mAddExp > 0)
            {
                int addExp = (int)(mTimer * mExpSpeed);

                if (addExp < 1)
                {
                    addExp = 1;
                }

                if (addExp > mAddExp)
                {
                    addExp = mAddExp;
                }

                mAddExp -= addExp;

                if (mCurExp + addExp > mMaxExp)
                {
                    bool playLvUp = false;
                    int  level    = mPlayerModule.GetLevel();
                    do
                    {
                        if (!DataManager.LevelTable.ContainsKey(level + 1))
                        {
                            mCurExp = mMaxExp;
                            UpdateExp();
                            mTimer        = 0.0f;
                            mModule.State = StageEndModule.UIState.STATE_10;
                            break;
                        }

                        playLvUp = true;
                        mCurExp += addExp - mMaxExp;
                        addExp   = mMaxExp - mCurExp;

                        LevelTableItem nextLvRes = DataManager.LevelTable[level + 1] as LevelTableItem;
                        mMaxExp = nextLvRes.exp;
                        level++;
                    }while (mCurExp + addExp > mMaxExp);

                    if (playLvUp)
                    {
                        mLevelUp.SetActive(true);
                        mLevelUpAnimation.Play(true);
                        SoundManager.Instance.Play(7);
                    }
                }
                else
                {
                    mCurExp += addExp;
                }

                UpdateExp();

                if (mAddExp < 1)
                {
                    mTimer        = 0.0f;
                    mModule.State = StageEndModule.UIState.STATE_10;
                }
            }
            else
            {
                mTimer        = 0.0f;
                mModule.State = StageEndModule.UIState.STATE_10;
            }
        }
        break;

        case StageEndModule.UIState.STATE_10:
        {
            if (mTimer > StageEndModule.STATETIME_10)
            {
                mTimer        = 0.0f;
                mModule.State = StageEndModule.UIState.STATE_11;

                EventSystem.Instance.PushEvent(new StageEndUIEvent(StageEndUIEvent.STAGE_END_FINISH));
            }
        }
        break;

        case StageEndModule.UIState.STATE_11:
        {
        }
        break;

        default:
            break;
        }
    }
コード例 #10
0
    private void RefreshPanel()
    {
        PlayerDataModule pdm = ModuleManager.Instance.FindModule <PlayerDataModule>();

        qqName.text      = "QQ名字XXX";
        charName.text    = "LV." + pdm.GetLevel() + " " + pdm.GetName();
        battlegrade.text = pdm.GetGrade().ToString();
        LevelTableItem level_res = DataManager.LevelTable[pdm.GetLevel()] as LevelTableItem;

        if (level_res != null)
        {
            recom_grade.text  = string.Format(StringHelper.GetString("recom_grade"), pdm.GetLevel());
            recom_grade2.text = level_res.recom_grade.ToString();
        }
        float  percent          = (float)pdm.GetGrade() / (float)level_res.recom_grade;
        string battleGradeLevel = Convert.ToString(ConfigManager.GetVal <string>(ConfigItemKey.BATTLE_GRADE_LEVEL));

        string[] gradeRange = battleGradeLevel.Split(new[] { '|' });
        if (gradeRange.Length == 3)
        {
            if (percent >= Convert.ToSingle(gradeRange[2]))
            {
                gradeDesc.text = StringHelper.GetString("s_desc");
                UIAtlasHelper.SetSpriteImage(gradeLevel, "youxizhushou:youxizhushou_02", true);
            }
            else if (percent >= Convert.ToSingle(gradeRange[1]))
            {
                gradeDesc.text = StringHelper.GetString("a_desc");
                UIAtlasHelper.SetSpriteImage(gradeLevel, "youxizhushou:youxizhushou_01", true);
            }
            else if (percent >= Convert.ToSingle(gradeRange[0]))
            {
                gradeDesc.text = StringHelper.GetString("b_desc");
                UIAtlasHelper.SetSpriteImage(gradeLevel, "youxizhushou:youxizhushou_03", true);
            }
            else
            {
                gradeDesc.text = StringHelper.GetString("c_desc");
                UIAtlasHelper.SetSpriteImage(gradeLevel, "youxizhushou:youxizhushou_04", true);
            }
        }


        for (int i = 0; i < funcBtnList.Count; ++i)
        {
            funcBtnList[i].seletedSprite.gameObject.SetActive(Convert.ToInt32(funcBtnList[i].mBtn.CustomData) == mSelecteId);
        }

        AssisterTableItem res = DataManager.AssisterTable[mSelecteId] as AssisterTableItem;

        if (res == null)
        {
            return;
        }
        int[] funList = res.GetFunction();
        if (funList.Length >= assisterItemList.Count)
        {
            for (int i = 0; i < funList.Length; ++i)
            {
                if (i < assisterItemList.Count)
                {
                    assisterItemList[i].SetShowInfo(funList[i]);
                }
                else
                {
                    GreateNewAssiterItem(funList[i]);
                }
            }
        }
        else
        {
            for (int j = 0; j < assisterItemList.Count; ++j)
            {
                if (j < funList.Length)
                {
                    assisterItemList[j].SetShowInfo(funList[j]);
                }
                else
                {
                    assisterItemList[j].gameObject.SetActive(false);
                }
            }
        }

        funcGrid.repositionNow = true;
        assisterItemScroll.ResetPosition();
    }