예제 #1
0
        private string GetEquipIcn(GameObject obj, uint petId, int num)
        {
            int result = PetLogic.CheckEquip(petId, num);

            if (result == 0)
            {
                return("");
            }
            else if (result == 1 || result == 3) //满足等级-可装备或者可以合成
            {
                NGUITools.FindChild(obj, "tips").SetActive(true);
                return("add2");
            }
            else if (result == 2 || result == 4)
            {
                return("add");
            }
            else
            {
                SysEquipVo equipVo = BaseDataMgr.instance.GetDataById <SysEquipVo>((uint)result);
                return(equipVo.icon.ToString());
            }
        }
예제 #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);
        }
예제 #3
0
        private void OnLeftButtonClick(GameObject obj)
        {
            if (currentEquip != null)
            {
                int need = PetLogic.CheckEquip(petId, equipPos);
                if (need == 1) //可装备
                {
                    PPet pet = Singleton<PetMode>.Instance.GetPetByPetId(petId);

                    uint bagid = 0;
                    foreach (PGoods goods in Singleton<GoodsMode>.Instance.GetEquipListInBag())
                    {
                        if (goods.goodsId == currentEquip.id)
                        {
                            bagid = goods.id;
                            break;
                        }
                    }
                    Singleton<PetControl>.Instance.WearPetEquip(pet.id, equipPos, bagid);
                }
                else if (need == 2) //不可装备
                {
                    MessageManager.Show("需要幻兽等级:" + currentEquip.lvl.Replace("[","").Replace("]",""));
                }else if (need == 3 || need == 4 || need == 0) //合成或者获取途径
                {
                    if (!rightOpen)
                    {
                        OpenRigthPanel();
                    }

                }else if (need > 4)
                {
                    CloseView();
                }
            }
        }
예제 #4
0
        private void SetEquipInfo(uint equipId)
        {
            SysEquipVo equipVo = BaseDataMgr.instance.GetDataById<SysEquipVo>(equipId);
            currentEquip = equipVo;
            if (currentEquip != null)
            {
                equipIcn.spriteName = equipVo.icon.ToString();

                NGUITools.FindInChild<UISprite>(leftObj, "gradeicn").spriteName = "epz_" + equipVo.grade;
                NGUITools.FindInChild<UILabel>(leftObj, "labels/name").text = equipVo.name;
                NGUITools.FindInChild<UILabel>(leftObj, "labels/des").text = equipVo.desc;
                SetEquipProperty(equipVo);
                int num = Singleton<GoodsMode>.Instance.GetCountByGoodsId((uint)equipVo.id);

                NGUITools.FindInChild<UILabel>(leftObj, "labels/numvalue").text = num.ToString();
                if (num == 0)
                {
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/numvalue").color = ColorConst.FONT_RED;
                }
                else
                {
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/numvalue").color = ColorConst.FONT_YELLOW;
                }
                

                int need = PetLogic.CheckEquip(petId, equipPos);
                if (need > 4) //已装备
                {
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").text = "需要幻兽等级: " + equipVo.lvl.Replace("[","").Replace("]","");
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").color = ColorConst.FONT_YELLOW;
                    NGUITools.FindInChild<UILabel>(leftObj, "button/name").text = "确认";
                }
                else if (need == 1) //可装备
                {
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").text = "装备后将与幻兽绑定";
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").color = ColorConst.FONT_YELLOW;
                    NGUITools.FindInChild<UILabel>(leftObj, "button/name").text = "装备";
                }else if (need == 2) //存在不可装备
                {
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").text = "需要幻兽等级: " + equipVo.lvl.Replace("[", "").Replace("]", "");
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").color = ColorConst.FONT_RED;
                    NGUITools.FindInChild<UILabel>(leftObj, "button/name").text = "装备";
                }
                else if (need == 3) //可合成可装备
                {
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").text = "装备后将与幻兽绑定";
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").color = ColorConst.FONT_YELLOW;
                    NGUITools.FindInChild<UILabel>(leftObj, "button/name").text = "合成方式";
                }
                else if(need ==4) //可合成不可装备
                {
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").text = "需要幻兽等级: " + equipVo.lvl.Replace("[", "").Replace("]", "");
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").color = ColorConst.FONT_RED;
                    NGUITools.FindInChild<UILabel>(leftObj, "button/name").text = "合成方式";
                }else if (need == 0) //不存在也不可合成
                {
                    PPet pet = Singleton<PetMode>.Instance.GetPetByPetId(petId);
                    NGUITools.FindInChild<UILabel>(leftObj, "labels/level").text = "需要幻兽等级: " + equipVo.lvl.Replace("[", "").Replace("]", "");                    
                    int needlvl =int.Parse( equipVo.lvl.Replace("[", "").Replace("]", ""));

                    if (needlvl > pet.lvl)
                    {
                        NGUITools.FindInChild<UILabel>(leftObj, "labels/level").color = ColorConst.FONT_RED;
                    }
                    else
                    {
                        NGUITools.FindInChild<UILabel>(leftObj, "labels/level").color = ColorConst.FONT_YELLOW;
                    }

                    //有合成途径
                    if (equipVo.material.Length > 4)
                    {
                        NGUITools.FindInChild<UILabel>(leftObj, "button/name").text = "合成方式";
                    }
                    else //产出途径
                    {
                        NGUITools.FindInChild<UILabel>(leftObj, "button/name").text = "获取途径";
                    }
                }
            }
        }
예제 #5
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;
            }
        }