Ejemplo n.º 1
0
 private void OnUpgradeClick(GameObject obj)
 {
     if (PetLogic.CanUpgrade(currentPPet))
     {
         Singleton <PetControl> .Instance.SendPetUpgrade(currentPPet.id);
     }
     else
     {
         if (currentPPet.grade == 14)
         {
             MessageManager.Show("幻兽已升到最高阶");
         }
         else
         {
             MessageManager.Show("幻兽需穿齐装备才可以进阶");
         }
     }
 }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
0
        //设置宠物信息
        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);
        }
Ejemplo n.º 4
0
        //设置宠物的装备信息
        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;
            }
        }