示例#1
0
    void RsetPoint(bool bReset)
    {
        if (CurPet != null)
        {
            stAttrPointPetUserCmd_C cmd = new stAttrPointPetUserCmd_C();
            cmd.id       = CurPet.GetID();
            cmd.auto_buy = bReset;
            PetTalent attr = CurPet.GetAttrTalent();
            PetTalent tal  = new PetTalent();
            tal.tizhi    = (uint)addPointDic[FightCreatureProp.Corporeity.ToString()] + attr.tizhi;
            tal.minjie   = (uint)addPointDic[FightCreatureProp.Agility.ToString()] + attr.minjie;
            tal.jingshen = (uint)addPointDic[FightCreatureProp.Spirit.ToString()] + attr.jingshen;
            tal.zhili    = (uint)addPointDic[FightCreatureProp.Intelligence.ToString()] + attr.zhili;
            tal.liliang  = (uint)addPointDic[FightCreatureProp.Strength.ToString()] + attr.liliang;


            if (attr.tizhi == 0 && attr.minjie == 0 && attr.jingshen == 0 && attr.zhili == 0 && attr.liliang == 0)
            {
                TipsManager.Instance.ShowTips(DataManager.Manager <TextManager>().GetLocalText(LocalTextType.Local_TXT_Notice_AlreadyResetPoint));
                return;
            }
            else
            {
                NetService.Instance.Send(cmd);
            }
        }
    }
示例#2
0
    public static List <int> GetTalentIds(int petId, int effect)
    {
        List <int> list   = new List <int>();
        PetInfo    onePet = PetEvoGlobal.GetOnePet(petId);

        if (onePet == null || onePet.petTalents == null)
        {
            return(list);
        }
        using (List <PetTalent> .Enumerator enumerator = onePet.petTalents.GetEnumerator())
        {
            while (enumerator.MoveNext())
            {
                PetTalent     current          = enumerator.get_Current();
                ChongWuTianFu chongWuTianFuRow = PetEvoGlobal.GetChongWuTianFuRow(current.talentId);
                if (chongWuTianFuRow != null)
                {
                    if (chongWuTianFuRow.effect == effect)
                    {
                        list.Add(current.talentId);
                    }
                }
            }
        }
        return(list);
    }
示例#3
0
 void onClick_Quedingjiadian_Btn(GameObject caster)
 {
     if (CurPet != null)
     {
         stAttrPointPetUserCmd_C cmd = new stAttrPointPetUserCmd_C();
         cmd.id = CurPet.GetID();
         PetTalent attr = CurPet.GetAttrTalent();
         PetTalent tal  = new PetTalent();
         tal.tizhi      = (uint)addPointDic[FightCreatureProp.Corporeity.ToString()] + attr.tizhi;
         tal.minjie     = (uint)addPointDic[FightCreatureProp.Agility.ToString()] + attr.minjie;
         tal.jingshen   = (uint)addPointDic[FightCreatureProp.Spirit.ToString()] + attr.jingshen;
         tal.zhili      = (uint)addPointDic[FightCreatureProp.Intelligence.ToString()] + attr.zhili;
         tal.liliang    = (uint)addPointDic[FightCreatureProp.Strength.ToString()] + attr.liliang;
         cmd.attr_point = tal;
         if (!bHasAddPoint())
         {
             TipsManager.Instance.ShowTips(DataManager.Manager <TextManager>().GetLocalText(LocalTextType.Local_TXT_Notice_NoAllotQianXiuPoint));
             return;
         }
         else
         {
             NetService.Instance.Send(cmd);
         }
     }
 }
示例#4
0
    int GetAttrPoint(string prop)
    {
        if (CurPet == null)
        {
            return(0);
        }
        PetTalent attr  = CurPet.GetAttrTalent();
        uint      point = 0;

        if (prop == FightCreatureProp.Strength.ToString())
        {
            point = attr.liliang;
        }
        else if (prop == FightCreatureProp.Agility.ToString())
        {
            point = attr.minjie;
        }
        else if (prop == FightCreatureProp.Spirit.ToString())
        {
            point = attr.jingshen;
        }
        else if (prop == FightCreatureProp.Corporeity.ToString())
        {
            point = attr.tizhi;
        }
        else if (prop == FightCreatureProp.Intelligence.ToString())
        {
            point = attr.zhili;
        }
        return((int)point);
    }
示例#5
0
文件: Pet.cs 项目: zuojiashun/src
 public void SetExtraData(GameCmd.PetData pet)
 {
     SetName(pet.name);
     petBaseID        = pet.base_id;
     replacetalent    = pet.replace_talent;
     attrpoint        = pet.attr_point;
     petSkillList     = pet.skill_list;
     exPlan           = pet.ex_plan;
     petInheritNum    = pet.inherit_time;
     freeResetAttrNum = pet.free_reset_attr_time;
     attrplan         = pet.attr_plan;
 }
示例#6
0
    void ShowRed()
    {
        if (m_petData == null)
        {
            Engine.Utility.Log.Error("m_petData is null");
            return;
        }
        bool bShow = false;

        if (m_petData.CurFightingPet != 0)
        {
            //已经出战
            bool hasLeftPoint = false;
            if (m_petData.CurPet == null)
            {
                return;
            }

            int       maxPoint  = m_petData.CurPet.GetProp((int)PetProp.MaxPoint);
            PetTalent attrPoint = m_petData.CurPet.GetAttrTalent();
            if (attrPoint == null)
            {
                return;
            }
            uint usePint   = attrPoint.jingshen + attrPoint.liliang + attrPoint.minjie + attrPoint.zhili + attrPoint.tizhi;
            int  leftPoint = maxPoint - (int)usePint;
            if (leftPoint == 0)
            {
                hasLeftPoint = false;
            }
            else
            {
                hasLeftPoint = true;
            }
            bShow = DataManager.Manager <PetDataManager>().IsHasPetFight&& hasLeftPoint;
        }
        else
        {
            if (m_petData.GetPetDic() != null && m_petData.GetPetDic().Count > 0)
            {
                bShow = true;
            }
        }
        if (m_petData.GetCanComposePetList().Count > 0)
        {//有可合成的宠物 显示红点
            bShow = true;
        }
        if (m_tranRedPoint != null)
        {
            m_tranRedPoint.gameObject.SetActive(bShow);
        }
    }
示例#7
0
    void onClick_Chongzhishuxing_Btn(GameObject caster)
    {
        if (CurPet != null)
        {
            stAttrPointPetUserCmd_C cmd = new stAttrPointPetUserCmd_C();
            cmd.id = CurPet.GetID();
            PetTalent attr = CurPet.GetAttrTalent();
            PetTalent tal  = new PetTalent();
            tal.tizhi    = (uint)addPointDic[FightCreatureProp.Corporeity.ToString()] + attr.tizhi;
            tal.minjie   = (uint)addPointDic[FightCreatureProp.Agility.ToString()] + attr.minjie;
            tal.jingshen = (uint)addPointDic[FightCreatureProp.Spirit.ToString()] + attr.jingshen;
            tal.zhili    = (uint)addPointDic[FightCreatureProp.Intelligence.ToString()] + attr.zhili;
            tal.liliang  = (uint)addPointDic[FightCreatureProp.Strength.ToString()] + attr.liliang;


            if (attr.tizhi == 0 && attr.minjie == 0 && attr.jingshen == 0 && attr.zhili == 0 && attr.liliang == 0)
            {
                TipsManager.Instance.ShowTips(DataManager.Manager <TextManager>().GetLocalText(LocalTextType.Local_TXT_Notice_AlreadyResetPoint));
                return;
            }
            else
            {
                int  resetLevel = GameTableManager.Instance.GetGlobalConfig <int>("PetFreeResetPointCount");
                uint petLevel   = CurPet.GetFreeResetAttrNum();
                if (petLevel < resetLevel)
                {
                    string con = DataManager.Manager <TextManager>().GetLocalFormatText(LocalTextType.Pet_Commond_chongzhixiaohaotips, resetLevel - petLevel);
                    //string con = string.Format("{0}{1}", resetLevel, CommonData.GetLocalString("级之前可免费重置潜修点,重置后所有潜修点都会返还。"));
                    TipsManager.Instance.ShowTipWindow(TipWindowType.Custom, con, () =>
                    {
                        NetService.Instance.Send(cmd);
                    }, null, null, CommonData.GetLocalString("重置潜修点"), CommonData.GetLocalString("重置"));
                }
                else
                {
                    uint resetItemID     = GameTableManager.Instance.GetGlobalConfig <uint>("PetAddPointResetItemID");
                    CommonSingleParam cp = new CommonSingleParam();
                    cp.consumNum    = 1;
                    cp.autobuydes   = CommonData.GetLocalString("道具不足自动元宝购买");
                    cp.titletips    = CommonData.GetLocalString("提示");
                    cp.contentdes   = CommonData.GetLocalString("重置潜修点需要消耗如下道具");
                    cp.bShowAutoBuy = true;
                    cp.canceltext   = CommonData.GetLocalString("取消");
                    cp.oktext       = CommonData.GetLocalString("重置");
                    cp.itemID       = resetItemID;
                    cp.cancleAction = null;
                    cp.okAction     = RsetPoint;
                    TipsManager.Instance.ShowSingelConsumPanel(cp);
                }
            }
        }
    }
示例#8
0
    void SetPetTalent(PetTalent pt, uint petid)
    {
        IPet pet = GetPetByThisID(petid);

        if (pet != null)
        {
            pet.SetProp((int)FightCreatureProp.Strength, (int)pt.liliang);
            pet.SetProp((int)FightCreatureProp.Corporeity, (int)pt.tizhi);
            pet.SetProp((int)FightCreatureProp.Intelligence, (int)pt.zhili);
            pet.SetProp((int)FightCreatureProp.Spirit, (int)pt.jingshen);
            pet.SetProp((int)FightCreatureProp.Agility, (int)pt.minjie);
        }
    }
示例#9
0
 public void InitPlanPoint()
 {
     if (CurPet != null)
     {
         PetTalent plan = CurPet.GetAttrPlan();
         PlanAllocJingshen = (int)plan.jingshen;
         PlanAllocLiliang  = (int)plan.liliang;
         PlanAllocMinjie   = (int)plan.minjie;
         PlanAllocZhili    = (int)plan.zhili;
         PlanAlloTizhi     = (int)plan.tizhi;
         PointType         = CurPet.GetExPlan();
     }
 }
示例#10
0
    public uint GetBaseProp(string prop, int petBaseID, uint level, bool isAddPointUI = false)
    {
        PetUpGradeDataBase db = GetPetUpGradeDataBase(level, petBaseID);

        if (db != null)
        {
            PetTalent tal = CurPet.GetAttrTalent();
            if (prop == FightCreatureProp.Strength.ToString())
            {
                if (isAddPointUI)
                {
                    return(db.power);
                }
                return(db.power + tal.liliang);
            }
            else if (prop == FightCreatureProp.Corporeity.ToString())
            {
                if (isAddPointUI)
                {
                    return(db.tizhi);
                }
                return(db.tizhi + tal.tizhi);
            }
            else if (prop == FightCreatureProp.Intelligence.ToString())
            {
                if (isAddPointUI)
                {
                    return(db.zhili);
                }
                return(db.zhili + tal.zhili);
            }
            else if (prop == FightCreatureProp.Spirit.ToString())
            {
                if (isAddPointUI)
                {
                    return(db.jingshen);
                }
                return(db.jingshen + tal.jingshen);
            }
            else if (prop == FightCreatureProp.Agility.ToString())
            {
                if (isAddPointUI)
                {
                    return(db.minjie);
                }
                return(db.minjie + tal.minjie);
            }
        }
        return(0);
    }
示例#11
0
    void InitData()
    {
        if (CurPet != null)
        {
            m_label_jiadian_petshowname.text = petDataManager.GetCurPetName();
            m_label_jiadian_level.text       = petDataManager.GetCurPetLevelStr();
            addPointDic[FightCreatureProp.Strength.ToString()]     = 0;
            addPointDic[FightCreatureProp.Corporeity.ToString()]   = 0;
            addPointDic[FightCreatureProp.Intelligence.ToString()] = 0;
            addPointDic[FightCreatureProp.Spirit.ToString()]       = 0;
            addPointDic[FightCreatureProp.Agility.ToString()]      = 0;
            foreach (var labelPair in labelDic)
            {
                UILabel label = labelPair.Value;
                label.text = petDataManager.GetPropByString(labelPair.Key).ToString();
                if (labelPair.Key == PetProp.MaxPoint.ToString())
                {
                    int       maxPoint  = CurPet.GetProp((int)PetProp.MaxPoint);
                    PetTalent attrPoint = CurPet.GetAttrTalent();
                    uint      usePint   = attrPoint.jingshen + attrPoint.liliang + attrPoint.minjie + attrPoint.zhili + attrPoint.tizhi;
                    int       leftPoint = maxPoint - (int)usePint;
                    LeftPoint = leftPoint;
                }
            }


            PetDataBase pdb = petDataManager.GetPetDataBase(CurPet.PetBaseID);
            if (pdb != null)
            {
                UIManager.GetTextureAsyn(pdb.icon, ref m_curIconAsynSeed, () =>
                {
                    if (null != m__jiadian_icon)
                    {
                        m__jiadian_icon.mainTexture = null;
                    }
                }, m__jiadian_icon, false);
            }

            // LeftPoint = CurPet.GetProp( (int)PetProp.MaxPoint );
            InitAddLabelData();
            InitAddPointLabelData();
            InitSliderData();
        }
    }
示例#12
0
    public static int GetSkillLv(int petId, int talentId)
    {
        PetInfo onePet = PetEvoGlobal.GetOnePet(petId);

        if (onePet == null || onePet.petTalents == null)
        {
            return(1);
        }
        using (List <PetTalent> .Enumerator enumerator = onePet.petTalents.GetEnumerator())
        {
            while (enumerator.MoveNext())
            {
                PetTalent current = enumerator.get_Current();
                if (current.talentId == talentId)
                {
                    return(current.talentLv);
                }
            }
        }
        return(1);
    }
示例#13
0
    /// <summary>
    /// 显示加点红点
    /// </summary>
    void ShowRedPoint()
    {
        if (CurPet == null)
        {
            return;
        }
        if (m_trans_shuxingPointWarring == null)
        {
            return;
        }
        Transform pointWarringTrans = m_trans_shuxingPointWarring.transform.Find("Label");

        if (pointWarringTrans != null)
        {
            UILabel pointLable = pointWarringTrans.GetComponent <UILabel>();
            if (pointLable != null)
            {
                int       maxPoint  = CurPet.GetProp((int)PetProp.MaxPoint);
                PetTalent attrPoint = CurPet.GetAttrTalent();
                uint      usePint   = attrPoint.jingshen + attrPoint.liliang + attrPoint.minjie + attrPoint.zhili + attrPoint.tizhi;
                int       leftPoint = maxPoint - (int)usePint;
                if (leftPoint == 0)
                {
                    m_trans_shuxingPointWarring.gameObject.SetActive(false);
                }
                else
                {
                    m_trans_shuxingPointWarring.gameObject.SetActive(true);
                }
                if (leftPoint > 99)
                {
                    leftPoint = 99;
                }
                pointLable.text = leftPoint.ToString();
            }
        }
    }
示例#14
0
    public static List <PetAttribute> GetSkills(int petId, int effect)
    {
        List <PetAttribute> list   = new List <PetAttribute>();
        PetInfo             onePet = PetEvoGlobal.GetOnePet(petId);

        if (onePet == null || onePet.petTalents == null)
        {
            return(list);
        }
        using (List <PetTalent> .Enumerator enumerator = onePet.petTalents.GetEnumerator())
        {
            while (enumerator.MoveNext())
            {
                PetTalent     current          = enumerator.get_Current();
                ChongWuTianFu chongWuTianFuRow = PetEvoGlobal.GetChongWuTianFuRow(current.talentId);
                int           skillLv          = PetEvoGlobal.GetSkillLv(petId, current.talentId);
                if (chongWuTianFuRow != null)
                {
                    if (skillLv != 0)
                    {
                        if (chongWuTianFuRow.effect == effect)
                        {
                            if (chongWuTianFuRow.effect == 10)
                            {
                                List <int> talentIds  = PetEvoGlobal.GetTalentIds(petId, 15);
                                List <int> talentIds2 = PetEvoGlobal.GetTalentIds(petId, 21);
                                int        num        = -1;
                                if (talentIds2.get_Count() > 0)
                                {
                                    num = talentIds2.get_Item(0);
                                }
                                else if (talentIds.get_Count() > 0)
                                {
                                    num = talentIds.get_Item(0);
                                }
                                if (num != -1)
                                {
                                    ChongWuTianFu chongWuTianFuRow2 = PetEvoGlobal.GetChongWuTianFuRow(num);
                                    int           num2 = chongWuTianFuRow2.parameter.get_Item(0);
                                    if (num2 == current.talentId)
                                    {
                                        for (int i = 0; i < chongWuTianFuRow2.parameter2.get_Count(); i++)
                                        {
                                            list.Add(new PetAttribute
                                            {
                                                petSkillId   = chongWuTianFuRow2.parameter2.get_Item(i),
                                                petSkillLv   = skillLv,
                                                petSkillSlot = chongWuTianFuRow.parameter2.get_Item(i)
                                            });
                                        }
                                        continue;
                                    }
                                }
                                for (int j = 0; j < chongWuTianFuRow.parameter.get_Count(); j++)
                                {
                                    list.Add(new PetAttribute
                                    {
                                        petSkillId   = chongWuTianFuRow.parameter.get_Item(j),
                                        petSkillLv   = skillLv,
                                        petSkillSlot = chongWuTianFuRow.parameter2.get_Item(j)
                                    });
                                }
                            }
                            else if (chongWuTianFuRow.effect == 12)
                            {
                                PetAttribute petAttribute = new PetAttribute
                                {
                                    templateIds = PetEvoGlobal.GetAttributeTemplateIDs(chongWuTianFuRow.parameter, skillLv)
                                };
                                list.Add(petAttribute);
                            }
                            else if (chongWuTianFuRow.effect == 13)
                            {
                                PetAttribute petAttribute2 = new PetAttribute
                                {
                                    templateIds  = chongWuTianFuRow.parameter,
                                    templateIds2 = PetEvoGlobal.GetAttributeTemplateIDs(chongWuTianFuRow.parameter2, skillLv)
                                };
                                list.Add(petAttribute2);
                            }
                            else if (chongWuTianFuRow.effect == 14)
                            {
                                PetAttribute petAttribute3 = new PetAttribute
                                {
                                    templateIds  = chongWuTianFuRow.parameter,
                                    templateIds2 = PetEvoGlobal.GetAttributeTemplateIDs(chongWuTianFuRow.parameter2, skillLv)
                                };
                                list.Add(petAttribute3);
                            }
                            else
                            {
                                Debug.LogError("!!! row.effect=" + chongWuTianFuRow.effect);
                            }
                        }
                    }
                }
            }
        }
        return(list);
    }