Example #1
0
 public void Create(StaticUnitLevelVo staticUnitVo, bool ifBoss = false)
 {
     unitName    = staticUnitVo.name;
     state       = UnitState.Enemy;
     this.ifBoss = ifBoss;
     base.Create(staticUnitVo);
 }
Example #2
0
 public virtual void Create(StaticUnitLevelVo staticUnitVo)
 {
     this.staticUnitVo = staticUnitVo;
     nameStr           = staticUnitVo.name;
     nowHp             = staticUnitVo.hp;
     maxHp             = staticUnitVo.hp;
     nowMp             = staticUnitVo.mp;
     maxMp             = staticUnitVo.mp;
     level             = staticUnitVo.level;
     attackBig         = staticUnitVo.attackBig;
     attackSmall       = staticUnitVo.attackSmall;
     magicAttack       = staticUnitVo.magicAttack;
     defance           = staticUnitVo.defence;
     magicDefance      = staticUnitVo.magicDefance;
     critNum           = staticUnitVo.critNum;
     duckNum           = staticUnitVo.duckNum;
     critDamage        = staticUnitVo.critDamage;
     speed             = staticUnitVo.speed;
     defanceRate       = staticUnitVo.defanceRate;
     skillList.Clear();
     _buffs.Clear();
     for (int i = 0; i < staticUnitVo.skillList.Count; i++)
     {
         skillList.Add(StaticDataPool.Instance.staticSkillLevelPool.GetStaticDataVo(staticUnitVo.skillList[i]));
     }
     magicRate = staticUnitVo.magicRate;
     dead      = false;
 }
Example #3
0
    public bool Add(StaticUnitLevelVo vo)
    {
        if (_dataList.Count >= DataManager.Instance.roleVo.maxServantNum)
        {
            return(false);
        }
        ServantVo servantVo = new ServantVo();

        servantVo.unitId = vo.unitId;
        servantVo.level  = 1;
        if (_dataList.Count != 0)
        {
            servantVo.id = _dataList[_dataList.Count - 1].id + 1;
        }
        else
        {
            servantVo.id = 0;
        }
        servantVo.exp         = 0;
        servantVo.maxSkillNum = Random.Range(vo.skillList.Count, 6);
        for (int i = 0; i < vo.skillList.Count; i++)
        {
            AddSkill(servantVo, StaticDataPool.Instance.staticSkillLevelPool.GetStaticDataVo(vo.skillList[i]));
        }
        _dataList.Add(servantVo);
        return(true);
    }
Example #4
0
    private void UpdateInfo(ServantVo vo)
    {
        StaticUnitVo staticUnitVo = StaticDataPool.Instance.staticUnitPool.GetStaticDataVo(nowVo.unitId);

        image.sprite = ResourceManager.Instance.GetCharactor(staticUnitVo.sprite);
        StaticUnitLevelVo nowLevelVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(nowVo.unitId, nowVo.level);
        int nextLevel;

        if (nowLevelVo.level == 150)
        {
            nextLevel = 150;
            btnLevelUp.gameObject.SetActive(false);
        }
        else
        {
            nextLevel = nowLevelVo.level + 1;
        }
        {
            StaticUnitLevelVo nextVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(nowLevelVo.unitId, nextLevel);
            roleName.text  = nowLevelVo.name;
            data1[0].text  = nowLevelVo.level.ToString();
            data1[1].text  = nextVo.needExp.ToString();
            data1[2].text  = ((int)(nowLevelVo.hp)).ToString();
            data1[3].text  = ((int)(nowLevelVo.mp)).ToString();
            data1[4].text  = ((int)(nowLevelVo.attackSmall)) + "~" + ((int)(nowLevelVo.attackBig));
            data1[5].text  = ((int)(nowLevelVo.magicAttack)).ToString();
            data1[6].text  = ((int)(nowLevelVo.defence)).ToString();
            data1[12].text = ((int)(nowLevelVo.magicDefance)).ToString();
            data1[7].text  = ((int)(nowLevelVo.critNum)).ToString();
            data1[8].text  = ((int)(nowLevelVo.duckNum)).ToString();
            data1[9].text  = (nowLevelVo.critDamage) * 100 + "%";
            data1[10].text = ((int)(nowLevelVo.speed)).ToString();
            data1[11].text = (nowLevelVo.magicRate) * 100 + "%";
            data1[13].text = ((int)(nowLevelVo.defanceRate)).ToString();

            data2[0].text  = nextLevel.ToString();
            data2[1].text  = "";
            data2[2].text  = ((int)(nextVo.hp)).ToString();
            data2[3].text  = ((int)(nextVo.mp)).ToString();
            data2[4].text  = ((int)(nextVo.attackSmall)) + "~" + ((int)(nowLevelVo.attackBig));
            data2[5].text  = ((int)(nextVo.magicAttack)).ToString();
            data2[6].text  = ((int)(nextVo.defence)).ToString();
            data2[12].text = ((int)(nextVo.magicDefance)).ToString();
            data2[7].text  = ((int)(nextVo.critNum)).ToString();
            data2[8].text  = ((int)(nextVo.duckNum)).ToString();
            data2[9].text  = (nextVo.critDamage) * 100 + "%";
            data2[10].text = ((int)(nextVo.speed)).ToString();
            data2[11].text = (nextVo.magicRate) * 100 + "%";
            data2[13].text = ((int)(nextVo.defanceRate)).ToString();
        }
        Tools.ClearChildFromParent(tsSkill);
        for (int i = 0; i < vo.skills.Count; i++)
        {
            GameObject obj = Tools.CreateGameObject("UI/ServantPanel/ServantSkillCell", tsSkill, new Vector3(-840f + 130 * i, -490f, 0), Vector3.one);
            obj.GetComponent <ServantSkillCell>().Create(vo.skills[i]);
        }
    }
Example #5
0
 public void AddData(string[] lineArray)
 {
     for (int i = 1; i < lineArray.Length; i++)
     {
         lineArray[i] = lineArray[i].Replace("\r", "");
         string[]          strArray = lineArray[i].Split(","[0]);
         StaticUnitLevelVo vo       = new StaticUnitLevelVo(strArray);
         _datapool.Add(vo);
     }
 }
Example #6
0
    public void Create(ServantVo servantVo, CallBackFunctionWithObject callback)
    {
        this.servantVo = servantVo;
        this.callback  = callback;
        StaticUnitLevelVo staticUnitLevelVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(servantVo.unitId, servantVo.level);
        StaticUnitVo      staticUnitVo      = StaticDataPool.Instance.staticUnitPool.GetStaticDataVo(servantVo.unitId);

        textName.text = staticUnitVo.name;
        desc.text     = staticUnitVo.desc;
        level.text    = "Lv." + servantVo.level;
    }
Example #7
0
    public void Create()
    {
        servantVo = DataManager.Instance.servantModel.nowServant;
        StaticUnitLevelVo staticUnitVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(servantVo.unitId, servantVo.level);

        Create(staticUnitVo);
        skillList.Clear();
        for (int i = 0; i < servantVo.skills.Count; i++)
        {
            skillList.Add(StaticDataPool.Instance.staticSkillLevelPool.GetStaticDataVo(servantVo.skills[i].id, servantVo.skills[i].level));
        }
        unitName = staticUnitVo.name;
    }
Example #8
0
    private void BtnClick()
    {
        UIManager.Instance.CreateConfirmPanel("确定购买这个商品?", delegate(object obj)
        {
            bool enough = false;
            if (staticShopVo.priceType == 1)
            {
                enough = DataManager.Instance.roleVo.exp >= staticShopVo.price;
            }
            else if (staticShopVo.priceType == 2)
            {
                enough = DataManager.Instance.roleVo.exp >= staticShopVo.price;
            }
            if (enough)
            {
                switch (staticShopVo.type)
                {
                case 1:
                    StaticItemVo staticItemVo = StaticDataPool.Instance.staticItemPool.GetStaticDataVo(staticShopVo.itemId);
                    DataManager.Instance.itemModel.Add(staticItemVo);
                    UIManager.Instance.CreateTipPanel("购买了" + staticItemVo.name);
                    break;

                case 2:
                    StaticEquipVo staticEquipVo           = StaticDataPool.Instance.staticEquipPool.GetStaticDataVo(staticShopVo.itemId);
                    StaticEquipLevelVo staticEquipLevelVo = StaticDataPool.Instance.staticEquipLevelPool.GetStaticDataVo(staticEquipVo.equipId, 1);
                    DataManager.Instance.equipModel.Add(staticEquipLevelVo);
                    UIManager.Instance.CreateTipPanel("购买了" + staticEquipVo.equipName);
                    break;

                case 3:
                    StaticUnitVo staticUnitVo           = StaticDataPool.Instance.staticUnitPool.GetStaticDataVo(staticShopVo.itemId);
                    StaticUnitLevelVo staticUnitLevelVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(staticUnitVo.unitId, 1);
                    DataManager.Instance.servantModel.Add(staticUnitLevelVo);
                    UIManager.Instance.CreateTipPanel("购买了" + staticUnitVo.name);
                    break;
                }
            }
            else
            {
                if (staticShopVo.priceType == 1)
                {
                    UIManager.Instance.CreateTipPanel("灵魂不足");
                }
                else if (staticShopVo.priceType == 2)
                {
                    UIManager.Instance.CreateTipPanel("灵魂不足");
                }
            }
        });
    }
Example #9
0
    public bool LevelUp(ServantVo vo)
    {
        StaticUnitLevelVo staticUnitVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(vo.unitId, vo.level + 1);

        if (DataManager.Instance.roleVo.exp > staticUnitVo.needExp)
        {
            DataManager.Instance.roleVo.exp = DataManager.Instance.roleVo.exp - staticUnitVo.needExp;
            vo.level++;
            GameRoot.Instance.evt.CallEvent(GameEventDefine.ROLE_INFO, null);

            //todo
            return(true);
        }
        return(false);
    }
Example #10
0
    public bool LevelUp()
    {
        StaticUnitLevelVo staticUnitVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(charactor, level + 1);

        if (exp > staticUnitVo.needExp)
        {
            exp = exp - staticUnitVo.needExp;
            level++;
            GameRoot.Instance.evt.CallEvent(GameEventDefine.ROLE_INFO, null);

            //todo
            return(true);
        }
        return(false);
    }
Example #11
0
    private void ChangeSelect(int select)
    {
        switch (select)
        {
        case TAB1:
            charactorId = 3;
            break;

        case TAB2:
            charactorId = 2;
            break;

        case TAB3:
            charactorId = 6;
            break;

        case TAB4:
            charactorId = 4;
            break;

        case TAB5:
            charactorId = 5;
            break;
        }
        unitVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(charactorId, 1);
        textCharactorName.text = unitVo.name;
        textHp.text            = unitVo.hp.ToString();
        textMp.text            = unitVo.mp.ToString();
        textSpeed.text         = unitVo.speed.ToString();
        textAttack.text        = unitVo.attackSmall.ToString() + "~" + unitVo.attackBig.ToString();
        textMagicAttack.text   = unitVo.magicAttack.ToString();
        textDefance.text       = unitVo.defence.ToString();
        textMagicDefance.text  = unitVo.magicDefance.ToString();
        textMagicRate.text     = unitVo.magicRate.ToString();
        textCrit.text          = unitVo.critNum.ToString();
        textDuck.text          = unitVo.duckNum.ToString();
        textCritNum.text       = unitVo.critDamage * 100 + "%";
    }
Example #12
0
    private void OnUpdate(object obj)
    {
        float equipHp = 0, equipMp = 0, equipAttack = 0, equipMagicAttack = 0, equipDefance = 0, equipMagicDefance = 0, equipCritNum = 0, equipDuckNum = 0, equipCritDamage = 0, equipSpeed = 0, equipDefanceRate = 0;

        for (int i = 0; i < DataManager.Instance.equipModel.nowEquip.Count; i++)
        {
            StaticEquipLevelVo staticEquipLevelVo = StaticDataPool.Instance.staticEquipLevelPool.GetStaticDataVo(DataManager.Instance.equipModel.nowEquip[i].equipId, DataManager.Instance.equipModel.nowEquip[i].level);
            foreach (var d in staticEquipLevelVo.effect)
            {
                switch (d.Key)
                {
                case 1: equipHp += d.Value; break;

                case 2: equipAttack += d.Value; break;

                case 3: equipMagicAttack += d.Value; break;

                case 4: equipDefance += d.Value; break;

                case 5: equipCritNum += d.Value; break;

                case 6: equipDuckNum += d.Value; break;

                case 7: equipCritDamage += d.Value; break;

                case 8: equipMp += d.Value; break;

                case 9: equipSpeed += d.Value; break;

                case 10: equipMagicDefance += d.Value; break;

                case 11: equipDefanceRate += d.Value; break;
                }
            }
        }

        StaticUnitLevelVo nowVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(DataManager.Instance.roleVo.charactor, DataManager.Instance.roleVo.level);
        int nextLevel;

        if (nowVo.level == 150)
        {
            nextLevel = 150;
            btnLevelUp.gameObject.SetActive(false);
        }
        else
        {
            nextLevel = nowVo.level + 1;
        }
        StaticUnitLevelVo nextVo = StaticDataPool.Instance.staticUnitLevelPool.GetStaticDataVo(nowVo.unitId, nextLevel);

        charactor.text = nowVo.name;
        roleName.text  = DataManager.Instance.roleVo.name;
        data1[0].text  = nowVo.level.ToString();
        data1[1].text  = nowVo.needExp.ToString();
        data1[2].text  = ((int)(DataManager.Instance.roleVo.baseHp + nowVo.hp + equipHp)).ToString();
        data1[3].text  = ((int)(DataManager.Instance.roleVo.baseMp + nowVo.mp + equipMp)).ToString();
        data1[4].text  = ((int)(DataManager.Instance.roleVo.baseAttackSmall + nowVo.attackSmall + equipAttack)) + "~" + ((int)(DataManager.Instance.roleVo.baseAttackBig + nowVo.attackBig + equipAttack));
        data1[5].text  = ((int)(DataManager.Instance.roleVo.baseMagicAttack + nowVo.magicAttack + equipMagicAttack)).ToString();
        data1[6].text  = ((int)(DataManager.Instance.roleVo.baseDeface + nowVo.defence + equipDefance)).ToString();
        data1[12].text = ((int)(DataManager.Instance.roleVo.baseMagicDefance + nowVo.magicDefance + equipMagicDefance)).ToString();
        data1[7].text  = ((int)(DataManager.Instance.roleVo.baseCrit + nowVo.critNum + equipCritNum)).ToString();
        data1[8].text  = ((int)(DataManager.Instance.roleVo.baseDuck + nowVo.duckNum + equipDuckNum)).ToString();
        data1[9].text  = (DataManager.Instance.roleVo.baseCritDamage + nowVo.critDamage + equipCritDamage) * 100 + "%";
        data1[10].text = ((int)(DataManager.Instance.roleVo.baseSpeed + nowVo.speed + equipSpeed)).ToString();
        data1[11].text = (DataManager.Instance.roleVo.baseMagicRate + nowVo.magicRate) * 100 + "%";
        data1[13].text = ((int)(DataManager.Instance.roleVo.baseDefanceRate + nowVo.defanceRate + equipDefanceRate)).ToString();

        data2[0].text  = nextLevel.ToString();
        data2[1].text  = "";
        data2[2].text  = ((int)(DataManager.Instance.roleVo.baseHp + nextVo.hp + equipHp)).ToString();
        data2[3].text  = ((int)(DataManager.Instance.roleVo.baseMp + nextVo.mp + equipMp)).ToString();
        data2[4].text  = ((int)(DataManager.Instance.roleVo.baseAttackSmall + nextVo.attackSmall + equipAttack)) + "~" + ((int)(DataManager.Instance.roleVo.baseAttackBig + nowVo.attackBig + equipAttack));
        data2[5].text  = ((int)(DataManager.Instance.roleVo.baseMagicAttack + nextVo.magicAttack + equipMagicAttack)).ToString();
        data2[6].text  = ((int)(DataManager.Instance.roleVo.baseDeface + nextVo.defence + equipDefance)).ToString();
        data2[12].text = ((int)(DataManager.Instance.roleVo.baseMagicDefance + nextVo.magicDefance + equipMagicDefance)).ToString();
        data2[7].text  = ((int)(DataManager.Instance.roleVo.baseCrit + nextVo.critNum + equipCritNum)).ToString();
        data2[8].text  = ((int)(DataManager.Instance.roleVo.baseDuck + nextVo.duckNum + equipDuckNum)).ToString();
        data2[9].text  = (DataManager.Instance.roleVo.baseCritDamage + nextVo.critDamage + equipCritDamage) * 100 + "%";
        data2[10].text = ((int)(DataManager.Instance.roleVo.baseSpeed + nextVo.speed + equipSpeed)).ToString();
        data2[11].text = (DataManager.Instance.roleVo.baseMagicRate + nextVo.magicRate) * 100 + "%";
        data2[13].text = ((int)(DataManager.Instance.roleVo.baseDefanceRate + nextVo.defanceRate + equipDefanceRate)).ToString();
    }