private void OnEvolveClick(GameObject obj) { //检查可以进化 if (PetLogic.CanEvolve(currentPPet)) { Singleton <PetControl> .Instance.SendPetEvolve(currentPPet.id); } else { if (currentPPet.star == 5) { MessageManager.Show("已进化到满星!"); } else { MessageManager.Show("灵魂石不足"); } } }
private bool CheckTips() { foreach (SysPet spet in PetLogic.SysPets) { if (PetLogic.CanOwn(spet)) { return(true); } } if (AllPets != null) { foreach (PPet pet in AllPets) { for (int i = 1; i < 7; i++) //检查装备 { int result = PetLogic.CheckEquip(pet.petId, i); if (result == 1 || result == 3) { return(true); } } if (PetLogic.CanEvolve(pet)) { return(true); } if (PetLogic.CanUpgrade(pet)) { return(true); } } } return(false); }
//设置宠物信息 private void SetPetInfo(SysPet pet, int num, bool own) { GameObject petobj; if (num > petsObj.Count) { petobj = GameObject.Instantiate(petsObj[0]) as GameObject; petsObj.Add(petobj); petobj.transform.parent = petsObj[0].transform.parent; petobj.transform.localScale = new Vector3(1, 1, 1); petobj.SetActive(false); petobj.GetComponent <UIWidgetContainer>().onClick = OnPetClick; petobj.name = pet.id.ToString(); } else { petobj = petsObj[num - 1]; petobj.name = pet.id.ToString(); } SetPetObjPos(petobj, num, own); NGUITools.FindInChild <UISprite>(petobj, "image").spriteName = pet.icon.ToString(); petobj.SetActive(true); NGUITools.FindChild(petobj, "tips").SetActive(false); //提示默认关闭 if (!own || PetLogic.CanOwn(pet)) { NGUITools.FindInChild <UILabel>(petobj, "name").text = pet.name; UIUtils.ChangeGrayShader(NGUITools.FindInChild <UISprite>(petobj, "image"), imageDepth - 1); NGUITools.FindChild(petobj, "equips").SetActive(false); NGUITools.FindChild(petobj, "level").SetActive(false); NGUITools.FindChild(petobj, "stars").SetActive(false); NGUITools.FindChild(petobj, "stone").SetActive(true); int stone = Singleton <GoodsMode> .Instance.GetCountByGoodsId((uint)pet.stone_id); int need = PetLogic.GetNeedStone((uint)pet.star, false); NGUITools.FindInChild <UISprite>(petobj, "gradeicn").spriteName = ""; NGUITools.FindInChild <UISlider>(petobj, "stone").value = stone / (float)need; NGUITools.FindInChild <UILabel>(petobj, "stone/num").text = stone + "/" + need; if (PetLogic.CanOwn(pet)) { NGUITools.FindChild(petobj, "active").SetActive(true); NGUITools.FindChild(petobj, "tips").SetActive(true); NGUITools.FindChild(petobj, "gradeicn").SetActive(false); } else { NGUITools.FindChild(petobj, "gradeicn").SetActive(false); NGUITools.FindChild(petobj, "active").SetActive(false); } } else { PPet ppet = Singleton <PetMode> .Instance.GetPetByPetId((uint)pet.id); NGUITools.FindChild(petobj, "gradeicn").SetActive(true); NGUITools.FindInChild <UISprite>(petobj, "gradeicn").spriteName = PetLogic.GetGradeIcn(ppet.grade); NGUITools.FindInChild <UILabel>(petobj, "name").text = PetLogic.GetGradeDes(ppet.grade, pet.name); UIUtils.ChangeNormalShader(NGUITools.FindInChild <UISprite>(petobj, "image"), imageDepth); NGUITools.FindChild(petobj, "equips").SetActive(true); NGUITools.FindChild(petobj, "level").SetActive(true); NGUITools.FindInChild <UILabel>(petobj, "level/label").text = ppet.lvl.ToString(); NGUITools.FindChild(petobj, "stars").SetActive(true); SetStar(petobj, ppet.star); SetEquipInfo(petobj, ppet.petId); NGUITools.FindChild(petobj, "stone").SetActive(false); NGUITools.FindChild(petobj, "active").SetActive(false); //检查是否可以升阶-升星 if (PetLogic.CanUpgrade(ppet) || PetLogic.CanEvolve(ppet)) { NGUITools.FindChild(petobj, "tips").SetActive(true); } } NGUITools.FindInChild <UISprite>(petobj, "typeicn").spriteName = PetLogic.GetTypeIcnName(pet.type); }
//设置宠物的装备信息 private void SetPetEquips(PPet pet) { for (int i = 0; i < equipObjs.Count; i++) { int equip = PetLogic.CheckEquip(pet.petId, i + 1); int need = PetLogic.GetNeedEquip(pet.petId, i + 1); SysEquipVo equipVo = BaseDataMgr.instance.GetDataById <SysEquipVo>((uint)need); UISprite sprite = NGUITools.FindInChild <UISprite>(equipObjs[i], "bicn"); sprite.spriteName = equipVo.icon.ToString(); if (equip <= 3) { //置灰 UIUtils.ChangeGrayShader(sprite, 15); NGUITools.FindChild(equipObjs[i], "label").SetActive(true); NGUITools.FindInChild <UISprite>(equipObjs[i], "gradeicn").spriteName = "tbk"; if (equip == 0) //不存在 { NGUITools.FindInChild <UILabel>(equipObjs[i], "label").text = "无装备"; NGUITools.FindInChild <UILabel>(equipObjs[i], "label").color = ColorConst.FONT_MILKWHITE; NGUITools.FindChild(equipObjs[i], "tipicn").SetActive(false); } else if (equip == 1) //存在可装备 { NGUITools.FindInChild <UILabel>(equipObjs[i], "label").text = "可装备"; NGUITools.FindInChild <UILabel>(equipObjs[i], "label").color = ColorConst.FONT_GREEN; NGUITools.FindChild(equipObjs[i], "tipicn").SetActive(true); NGUITools.FindInChild <UISprite>(equipObjs[i], "tipicn").spriteName = "add2"; } else if (equip == 2) //存在不可装备 { NGUITools.FindInChild <UILabel>(equipObjs[i], "label").text = "未装备"; NGUITools.FindInChild <UILabel>(equipObjs[i], "label").color = ColorConst.FONT_MILKWHITE; NGUITools.FindChild(equipObjs[i], "tipicn").SetActive(true); NGUITools.FindInChild <UISprite>(equipObjs[i], "tipicn").spriteName = "add"; } else if (equip == 3) //可合成可装备 { NGUITools.FindInChild <UILabel>(equipObjs[i], "label").text = "可合成"; NGUITools.FindInChild <UILabel>(equipObjs[i], "label").color = ColorConst.FONT_GREEN; NGUITools.FindChild(equipObjs[i], "tipicn").SetActive(true); NGUITools.FindInChild <UISprite>(equipObjs[i], "tipicn").spriteName = "add2"; } else if (equip == 4) //可合成不可装备 { NGUITools.FindInChild <UILabel>(equipObjs[i], "label").text = "可合成"; NGUITools.FindInChild <UILabel>(equipObjs[i], "label").color = ColorConst.FONT_MILKWHITE; NGUITools.FindChild(equipObjs[i], "tipicn").SetActive(true); NGUITools.FindInChild <UISprite>(equipObjs[i], "tipicn").spriteName = "add"; } } else { UIUtils.ChangeNormalShader(sprite, 14); NGUITools.FindChild(equipObjs[i], "label").SetActive(false); NGUITools.FindChild(equipObjs[i], "tipicn").SetActive(false); NGUITools.FindInChild <UISprite>(equipObjs[i], "gradeicn").spriteName = "epz_" + equipVo.grade; } } if (PetLogic.CanUpgrade(currentPPet)) { //装备已经满了 NGUITools.FindChild(gameObject, "info/function/upgrade/highlight").SetActive(true); NGUITools.FindInChild <TweenAlpha>(gameObject, "info/function/upgrade/highlight").enabled = true; } else { NGUITools.FindChild(gameObject, "info/function/upgrade/highlight").SetActive(false); NGUITools.FindInChild <TweenAlpha>(gameObject, "info/function/upgrade/highlight").enabled = false; } if (PetLogic.CanEvolve(currentPPet)) { NGUITools.FindChild(gameObject, "info/function/evolve/highlight").SetActive(true); NGUITools.FindInChild <TweenAlpha>(gameObject, "info/function/evolve/highlight").enabled = true; } else { NGUITools.FindChild(gameObject, "info/function/evolve/highlight").SetActive(false); NGUITools.FindInChild <TweenAlpha>(gameObject, "info/function/evolve/highlight").enabled = false; } }