public void Create(StaticUnitLevelVo staticUnitVo, bool ifBoss = false) { unitName = staticUnitVo.name; state = UnitState.Enemy; this.ifBoss = ifBoss; base.Create(staticUnitVo); }
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; }
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); }
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]); } }
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); } }
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; }
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; }
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("灵魂不足"); } } }); }
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); }
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); }
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 + "%"; }
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(); }