//升级宠物技能 private void OnSkillUpgradeClick(GameObject obj) { if (currentPPet != null) { int num = int.Parse(obj.transform.parent.gameObject.name); int[] skill = PetLogic.GetPetSkillInfo((int)currentPPet.petId, num); uint[] pskill = Singleton <PetMode> .Instance.GetPetSkill(currentPPet.id, (uint)num); int cost = PetLogic.GetSkillSpend((int)pskill[1], num); if (cost > MeVo.instance.diam) { MessageManager.Show("当前金币不足!"); } else if (Singleton <PetMode> .Instance.SkillPoint.point <= 0) { MessageManager.Show("技能点不足!"); } else { Singleton <PetControl> .Instance.UpgradePetSkill(currentPPet.id, (uint)num); } } }
private void OnSkillPress(GameObject obj, bool press) { int num = int.Parse(obj.name); int[] skill = PetLogic.GetPetSkillInfo((int)currentPPet.petId, num); uint[] pskill = Singleton <PetMode> .Instance.GetPetSkill(currentPPet.id, (uint)num); int lvl = 0; if (pskill != null) { lvl = (int)pskill[1]; } if (press) { skillTips.transform.localPosition = new Vector3(-5, 190 - (num - 1) * 91); skillTips.SetActive(true); NGUITools.FindInChild <UILabel>(skillTips, "label").text = PetLogic.GetSkillDes((int)currentPPet.petId, num, lvl); } else { skillTips.SetActive(false); } }
//设置此宠物的技能面板信息 private void SetPetSkill(PPet pet) { int pos = 0; int[] skill1 = PetLogic.GetPetSkillInfo((int)pet.petId, 1); uint[] skill = Singleton <PetMode> .Instance.GetPetSkill(pet.id, 1); NGUITools.FindInChild <UILabel>(skillObjs[0], "name").text = PetLogic.GetSkillName(skill1[0], pos); NGUITools.FindInChild <UISprite>(skillObjs[0], "skillicn").spriteName = PetLogic.GetSkillIcn(skill1[0]); SetSkillInfo(skill, pet, 1); int[] skill2 = PetLogic.GetPetSkillInfo((int)pet.petId, 2); if (skill2[0] == skill1[0]) { pos = 1; } skill = Singleton <PetMode> .Instance.GetPetSkill(pet.id, 2); NGUITools.FindInChild <UILabel>(skillObjs[1], "name").text = PetLogic.GetSkillName(skill2[0], pos); NGUITools.FindInChild <UISprite>(skillObjs[1], "skillicn").spriteName = PetLogic.GetSkillIcn(skill2[0]); SetSkillInfo(skill, pet, 2); int[] skill3 = PetLogic.GetPetSkillInfo((int)pet.petId, 3); pos = 0; if (skill3[0] == skill1[0]) { pos++; } if (skill3[0] == skill2[0]) { pos++; } skill = Singleton <PetMode> .Instance.GetPetSkill(pet.id, 3); NGUITools.FindInChild <UILabel>(skillObjs[2], "name").text = PetLogic.GetSkillName(skill3[0], pos); NGUITools.FindInChild <UISprite>(skillObjs[2], "skillicn").spriteName = PetLogic.GetSkillIcn(skill3[0]); SetSkillInfo(skill, pet, 3); int[] skill4 = PetLogic.GetPetSkillInfo((int)pet.petId, 4); pos = 0; if (skill4[0] == skill1[0]) { pos++; } if (skill4[0] == skill2[0]) { pos++; } if (skill4[0] == skill3[0]) { pos++; } skill = Singleton <PetMode> .Instance.GetPetSkill(pet.id, 4); NGUITools.FindInChild <UILabel>(skillObjs[3], "name").text = PetLogic.GetSkillName(skill4[0], pos); NGUITools.FindInChild <UISprite>(skillObjs[3], "skillicn").spriteName = PetLogic.GetSkillIcn(skill4[0]); SetSkillInfo(skill, pet, 4); //宠物天赋技能 SysPet spet = BaseDataMgr.instance.GetDataById <SysPet>(pet.petId); SysSkillBaseVo skillVo = BaseDataMgr.instance.GetDataById <SysSkillBaseVo>((uint)spet.unique_skill + pet.star - 1); NGUITools.FindInChild <UILabel>(skillObjs[4], "name").text = skillVo.name; NGUITools.FindInChild <UILabel>(skillObjs[4], "level").text = "Lv." + skillVo.skill_lvl; NGUITools.FindInChild <UILabel>(skillObjs[4], "des").text = "说明;" + skillVo.desc; NGUITools.FindInChild <UISprite>(skillObjs[4], "skillicn").spriteName = skillVo.icon.ToString(); SetPetSkillPointInfo(); }