Beispiel #1
0
    public void OnRefreshHero()
    {
        if (m_CurCard == null)
        {
            return;
        }

        int count = ObjectSelf.GetInstance().HeroContainerBag.GetHeroList().Count;

        for (int i = 0; i < count; ++i)
        {
            ObjectCard card = ObjectSelf.GetInstance().HeroContainerBag.GetHeroList() [i];
            if (card.GetGuid() == m_CurCard.GetGuid())
            {
                m_CurCard = card;
                break;
            }
        }

        // 更新英雄信息
        UpdateHeroInfo();

        // 更新资质信息
        UpdateQualification();

        // 更新下面属性面板
        UpdateHeroAttr();

        // 更新右边属性面板
        if (m_CurAttrPanel != null)
        {
            m_CurAttrPanel.ShowHeroInfo(m_CurCard);
        }
    }
Beispiel #2
0
    /// <summary>
    /// 更新显示
    /// </summary>
    void UpdateSkin()
    {
        List <int> SkinList = SkinItemRaek();

        for (int i = 0; i < SkinList.Count; i++)
        {
            UI_HeroSkinItem SkinItem = goList[i].GetComponent <UI_HeroSkinItem>();
            //if (i == 0)
            //{
            //    //经典时装
            //    SkinItem.HeroSkinState = HE_SKIN_STATE.SKIN_HAVE;
            //}
            if (m_CurCard.GetHeroData().GetHeroViewID() == SkinList[i])
            {
                //默认选择的时装
                SkinItem.HeroSkinState = HE_SKIN_STATE.SKIN_DEF;
            }
            else
            {
                //判断当前角色有没有获得的英雄时装
                SkinItem.HeroSkinState = playerHeroSkinList.Contains(SkinList[i]) ? HE_SKIN_STATE.SKIN_HAVE : HE_SKIN_STATE.SKIN_NOT_HAVE;
            }

            //处理时装Item逻辑
            SkinItem.ShowHeroSkinItem(SkinList[i], (int)m_CurCard.GetGuid().GUID_value);
        }
    }
Beispiel #3
0
 //刷新英雄卡牌
 public void UpdateHeroCardData(ObjectCard heroObject)
 {
     HeroObject       = heroObject;
     _Herodata        = heroObject.GetHeroRow();
     HeroType         = _Herodata.getClientSignType()[0];
     _Artresourcedata = (ArtresourceTemplate)DataTemplate.GetInstance().m_ArtresourceTable.getTableData(heroObject.GetHeroData().GetHeroViewID());
     SetBaseInfo(heroObject.GetHeroData().Level);
     InterfaceControler.GetInst().ShowHeroImg(_Herodata, AttackType_Img, JobType_Img, RaceType_Img);
     SetFormationNum();
     YetUpFrontImg.SetActive(false);
     DownFeontImg.SetActive(false);
     for (int i = 0; i < GlobalMembers.MAX_TEAM_CELL_COUNT; ++i)
     {
         int nGroup = ObjectSelf.GetInstance().Teams.GetDefaultGroup();
         if (nGroup < 0 && nGroup >= GlobalMembers.MAX_MATRIX_COUNT)
         {
             continue;
         }
         X_GUID pMemberGuiD = ObjectSelf.GetInstance().Teams.m_Matrix[nGroup, i];
         if (pMemberGuiD.GUID_value == HeroObject.GetGuid().GUID_value)
         {
             YetUpFrontImg.SetActive(true);
         }
     }
 }
Beispiel #4
0
    public void AddProperty(byte num)
    {
        CPeiyangHero chero = new CPeiyangHero();

        chero.herokey = (int)obj.GetGuid().GUID_value;
        chero.slotnum = num;
        IOControler.GetInstance().SendProtocol(chero);
    }
    private void LevelUP(byte distance)
    {
        CHeroLevelUpSpeed clus = new CHeroLevelUpSpeed();

        clus.levelnum = distance;
        clus.herokey  = (int)objc.GetGuid().GUID_value;
        IOControler.GetInstance().SendProtocol(clus);
        isBanInput = true;//禁止输入
    }
Beispiel #6
0
    private void onSendMessge()
    {
        //向服务器发送消息  升级
        CHeroSkillup chsu = new CHeroSkillup();
        byte         num  = (byte)m_Index;

        chsu.skillnum = num;
        chsu.herokey  = (int)m_Card.GetGuid().GUID_value;
        IOControler.GetInstance().SendProtocol(chsu);
    }
Beispiel #7
0
 //显示是否上阵
 void InitIsUpFront()
 {
     if (selfTransform.FindChild("Parent/Box_Eff/HeroFrameLight01").gameObject != null)
     {
         SelectBox = selfTransform.FindChild("Parent/Box_Eff/HeroFrameLight01").gameObject;
     }
     if (selfTransform.FindChild("Parent/DownFrontImg").gameObject != null)
     {
         DownFeontImg = selfTransform.FindChild("Parent/DownFrontImg").gameObject;
     }
     if (selfTransform.FindChild("Parent/YetUpFrontImg").gameObject != null)
     {
         YetUpFrontImg = selfTransform.FindChild("Parent/YetUpFrontImg").gameObject;
     }
     Formationstate = FormationState.Null;
     YetUpFrontImg.SetActive(false);
     DownFeontImg.SetActive(false);
     SelectBox.SetActive(false);
     for (int i = 0; i < GlobalMembers.MAX_TEAM_CELL_COUNT; ++i)
     {
         int nGroup = ObjectSelf.GetInstance().Teams.GetDefaultGroup();
         if (nGroup < 0 && nGroup >= GlobalMembers.MAX_MATRIX_COUNT)
         {
             continue;
         }
         X_GUID pMemberGuiD = ObjectSelf.GetInstance().Teams.m_Matrix[nGroup, i];
         if (pMemberGuiD.GUID_value == HeroObject.GetGuid().GUID_value)
         {
             Formationstate = FormationState.Upstate;
             YetUpFrontImg.SetActive(true);
             if (UI_Form.GetInst().GetGuid() != null && UI_Form.GetInst().GetGuid().GUID_value == HeroObject.GetGuid().GUID_value)
             {
                 Formationstate = FormationState.DownState;
                 YetUpFrontImg.SetActive(false);
                 DownFeontImg.SetActive(true);
                 SelectBox.SetActive(true);
             }
         }
     }
 }
Beispiel #8
0
    public void OnRefreshHero()
    {
        //SortHero ();

        if (m_CurCard == null)
        {
            m_CurCard = m_HeroList [0];
        }

        int count = ObjectSelf.GetInstance().HeroContainerBag.GetHeroList().Count;

        for (int i = 0; i < count; ++i)
        {
            ObjectCard card = m_HeroList [i];
            if (card.GetGuid() == m_CurCard.GetGuid())
            {
                m_CurCard = card;
                break;
            }
        }

        // 刷新英雄列表
        //m_HeroLayout.UpdateCell ();

        // 更新英雄信息
        UpdateHeroInfo();

        // 更新资质信息
        UpdateQualification();

        // 更新下面属性面板
        UpdateHeroAttr();

        // 更新右边属性面板
        if (m_CurAttrPanel != null)
        {
            m_CurAttrPanel.ShowHeroInfo(m_CurCard);
        }

        if (isEquipType)
        {
            m_EquipmentPanel.UpdateInfo(m_CurCard);
        }

        Show3DModel(m_CurCard);
    }
    //升品按钮回调
    private void onQualityProBtnClick()
    {
        m_PrevCard = new ObjectCard();
        m_PrevCard.GetHeroData().Copy(this.m_Card.GetHeroData());

        if (ObjectSelf.GetInstance().Money >= m_HeroT.getGold() &&
            m_HeroT.getStageUpTargetID() != -1 &&
            m_HeroT.getStuff() > 0 &&
            InterfaceControler.GetInst().ReturnItemCount(m_HeroT.getStuff()) >= m_HeroT.getNumbers())
        {
            CStarUpHero csh = new CStarUpHero();
            csh.herokey = (int)m_Card.GetGuid().GUID_value;
            IOControler.GetInstance().SendProtocol(csh);
        }
        else
        {
            InterfaceControler.GetInst().AddMsgBox(GameUtils.getString("ui_yingxiongqianghua_shengji6"), transform);
        }
    }
Beispiel #10
0
    /// <summary>
    /// 返回已上阵的英雄列表 and 未上阵的英雄列表
    /// </summary>
    /// <param name="_list">未上阵的英雄列表</param>
    /// <returns></returns>
    public List <ObjectCard> GetYetFormList(ref List <ObjectCard> _list)
    {
        _list.Clear();
        int idx = 0;
        List <ObjectCard> tempList = new List <ObjectCard>();

        for (int i = 0; i < m_HeroList.Count; i++)
        {
            ObjectCard card = m_HeroList[i];
            if (ObjectSelf.GetInstance().Teams.IsHeroInTeam(card.GetGuid(), ref idx))
            {
                tempList.Add(card);
            }
            else
            {
                _list.Add(card);
            }
        }

        return(tempList);
    }
Beispiel #11
0
    /// <summary>
    /// 当卡牌英雄数据发生改变的时候;
    /// </summary>
    /// <param name="ev"></param>
    void OnCardHeroDataChanged(GameEvent ev)
    {
        if (mObjectCard == null)
        {
            return;
        }

        if (ev == null || ev.data == null)
        {
            LogManager.LogError("卡牌数据变动信息为null");
            return;
        }

        int heroKey = (int)ev.data;

        if ((int)(mObjectCard.GetGuid().GUID_value) == heroKey)
        {
            //刷新当前界面;
            UpdateUIForm();
        }
    }
        private int GetHeroCardSortKey(ObjectCard hero, bool accordingToLv = false)
        {
            int _weightFactorTeam = 1000000;
            //            int _weightFactorExploration = 100000;
            int _weightFactoQuality;
            int _weightFactorLevel;

            if (accordingToLv)
            {
                _weightFactoQuality = 1;
                _weightFactorLevel  = 100;
            }
            else
            {
                _weightFactoQuality = 1000;
                _weightFactorLevel  = 1;
            }

            var _objSelf = ObjectSelf.GetInstance();

            int _sortKey = 0;

            bool[] _teamArray = _objSelf.Teams.GetHeroInTeamList(hero.GetGuid());

            for (int i = 0; i < _teamArray.Length; i++)
            {
                if (_teamArray[i])
                {
                    _sortKey += (_teamArray.Length - i) * 2 - 1;
                }
            }
            _sortKey *= _weightFactorTeam;
            _sortKey += _weightFactoQuality * (hero.GetHeroRow().getQuality());
            _sortKey += _weightFactorLevel * (hero.GetHeroData().Level);

            return(_sortKey);
        }
Beispiel #13
0
    /// <summary>
    /// 显示StateBtn 文字状态
    /// </summary>
    private void ShowBtnState()
    {
        m_State = FormationState.Upstate;

        int nGroup = ObjectSelf.GetInstance().Teams.GetDefaultGroup();

        if (nGroup < 0 && nGroup >= GlobalMembers.MAX_MATRIX_COUNT)
        {
            return;
        }

        if (UI_SelectHeroMgr.Inst.GetCard() == null)
        {
            for (int i = 0; i < GlobalMembers.MAX_TEAM_CELL_COUNT; ++i)
            {
                X_GUID pMemberGuiD = ObjectSelf.GetInstance().Teams.m_Matrix[nGroup, i];
                //移动状态
                if (pMemberGuiD.GUID_value == m_Card.GetGuid().GUID_value)
                {
                    m_State = FormationState.MoveState;
                    break;
                }
            }
        }
        else
        {
            //下阵状态
            if (UI_SelectHeroMgr.Inst.GetCard().GetGuid().GUID_value == m_Card.GetGuid().GUID_value)
            {
                m_State = FormationState.DownState;
            }
            else
            {
                for (int i = 0; i < GlobalMembers.MAX_TEAM_CELL_COUNT; ++i)
                {
                    X_GUID pMemberGuiD = ObjectSelf.GetInstance().Teams.m_Matrix[nGroup, i];
                    //移动状态
                    if (pMemberGuiD.GUID_value == m_Card.GetGuid().GUID_value)
                    {
                        m_State = FormationState.MoveState;
                        break;
                    }
                    else//更换状态
                    {
                        m_State = FormationState.ChangeState;
                    }
                }
            }
        }

        m_StateBtnTxt.text = StateBtnStr(m_State);

        m_StateBtn.interactable = true;
        m_StateBtn.GetComponent <Image>().color = Color.white;
/*        m_StateBtn.gameObject.SetActive(true);*/
        if (m_State == FormationState.MoveState || m_State == FormationState.DownState)
        {
            m_YetUpStateOBJ.SetActive(true);
        }
        else
        {
            m_YetUpStateOBJ.SetActive(false);
        }

        if (UI_SelectHeroMgr.Inst.SelectPos == 0)//选择位置是前排
        {
            if (UI_SelectHeroMgr.Inst.GetCard() != null &&
                UI_SelectHeroMgr.Inst.GetCard().GetHeroRow().getQosition() == 1)//该位置英雄为防御型
            {
                if (m_State == FormationState.MoveState)
                {
                    int count = UI_FormMgr.Inst.GetBackHeroGuids().Count;
                    for (int i = 0; i < count; i++)
                    {
                        if (UI_FormMgr.Inst.GetBackHeroGuids().Contains(m_Card.GetGuid().GUID_value))//当前英雄站在后排
                        {
                            /*m_StateBtn.gameObject.SetActive(false);*/
                            m_StateBtn.interactable = false;
                            m_StateBtn.GetComponent <Image>().color = Color.gray;
                        }
                    }
                }
            }
        }
        else
        {
            if (m_HeroT.getQosition() == 1)
            {
                /* m_StateBtn.gameObject.SetActive(false);*/
                m_StateBtn.interactable = false;
                m_StateBtn.GetComponent <Image>().color = Color.gray;
            }
        }
    }