void OnAkeyLevelupOk()
    {
        SwordsManContainer Container = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(m_PackType);

        if (Container == null)
        {
            LogModule.ErrorLog("OnAkeyLevelupOk::Container is null");
            return;
        }
        SwordsMan oSwordsMan = Container.GetSwordsManByGuid(m_SwordsManGuid);

        if (oSwordsMan == null)
        {
            LogModule.ErrorLog("OnAkeyLevelupOk::oSwordsMan is null");
            return;
        }
        CG_SWORDSMAN_LEVELUP packet = (CG_SWORDSMAN_LEVELUP)PacketDistributed.CreatePacket(MessageID.PACKET_CG_SWORDSMAN_LEVELUP);

        packet.Swordsmanid     = oSwordsMan.Guid;
        packet.Eatallswordsman = 1;
        packet.Packtype        = (int)m_PackType;
        packet.FilterQuality   = (int)m_curChooseQuality;
        for (int i = 0; i < m_EatGuidlist.Count; ++i)
        {
            packet.AddEatguid(m_EatGuidlist[i]);
        }
        packet.SendPacket();
    }
    /// <summary>
    ///
    /// </summary>
    void ShowSwordsManExp()
    {
        if (null == m_LabelExp)
        {
            return;
        }
        if (null == m_SliderExp)
        {
            return;
        }
        if (null == m_ExpTitle)
        {
            return;
        }
        SwordsManContainer Container = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(m_PackType);

        if (Container == null)
        {
            return;
        }
        SwordsMan oSwordsMan = Container.GetSwordsManByGuid(m_SwordsManGuid);

        if (oSwordsMan == null)
        {
            return;
        }
        if (oSwordsMan.IsFullLevel())
        {
            m_LabelExp.gameObject.SetActive(false);
            m_SliderExp.gameObject.SetActive(false);
            m_ExpTitle.SetActive(false);
            return;
        }
        m_LabelExp.gameObject.SetActive(true);
        m_SliderExp.gameObject.SetActive(true);
        m_ExpTitle.SetActive(true);

        if (m_nEatExp > 0)
        {
            //m_LabelExp.text = string.Format("{0}+[33c8ff]{1}[-]/{2}", oSwordsMan.Exp, m_nEatExp, oSwordsMan.MaxExp);
            m_LabelExp.text = StrDictionary.GetClientDictionaryString("#{3338}", oSwordsMan.Exp, m_nEatExp, oSwordsMan.MaxExp);
        }
        else
        {
            //m_LabelExp.text = string.Format("{0}/{1}", oSwordsMan.Exp, oSwordsMan.MaxExp);
            m_LabelExp.text = StrDictionary.GetClientDictionaryString("#{3337}", oSwordsMan.Exp, oSwordsMan.MaxExp);
        }

        int nMaxExp = oSwordsMan.MaxExp;

        if (nMaxExp > 0)
        {
            float fSlider = (float)oSwordsMan.Exp / (float)nMaxExp;
            m_SliderExp.value = fSlider;
        }
    }
    /// <summary>
    ///
    /// </summary>
    /// <param name="item"></param>
    public void OnSelectSwordsManItem(SwordsManItem item)
    {
        SwordsManContainer Container = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(m_PackType);

        if (Container == null)
        {
            return;
        }
        SwordsMan oSwordsMan = Container.GetSwordsManByGuid(m_SwordsManGuid);

        if (oSwordsMan == null)
        {
            return;
        }

        if (item == null)
        {
            return;
        }
        if (item.m_oSwordsMan == null)
        {
            return;
        }
        if (item.m_oSwordsMan.Quality > oSwordsMan.Quality)
        {
            GUIData.AddNotifyData("#{2497}");
            return;
        }
        if (item.m_oSwordsMan.Locked)
        {
            return;
        }
        if (item.m_oSwordsMan.Guid != oSwordsMan.Guid)
        {
            item.OnSelectSwordsMan();
            if (item.IsSelect())
            {
                m_nEatExp += item.m_oSwordsMan.GetEatExp();
            }
            else
            {
                m_nEatExp -= item.m_oSwordsMan.GetEatExp();
            }
            ShowSwordsManExp();
        }
        else
        {
            GUIData.AddNotifyData("#{2557}");
        }
    }
예제 #4
0
    /// <summary>
    ///
    /// </summary>
    void OnLoadSwordsManItem(GameObject resObj, object param)
    {
        if (null == m_SwordsManGrid)
        {
            LogModule.ErrorLog("OnLoadSwordsManItem m_SwordsManGrid is null");
            return;
        }
        Utils.CleanGrid(m_SwordsManGrid.gameObject);
        SwordsManContainer oSwordsManContainer = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(SwordsManContainer.PACK_TYPE.TYPE_BACKPACK);

        if (null == oSwordsManContainer)
        {
            LogModule.ErrorLog("OnLoadSwordsManItem::oSwordsManContainer is null");
            return;
        }
        List <SwordsMan> itemlist = SwordsManTool.ItemFilter(oSwordsManContainer);

        for (int i = 0; i < itemlist.Count; i++)
        {
            SwordsMan oSwordsMan = itemlist[i];
            if (null == oSwordsMan)
            {
                LogModule.ErrorLog("OnLoadSwordsManItem::oSwordsMan is null");
                break;
            }
            if (false == oSwordsMan.IsValid())
            {
                continue;
            }
            SwordsManItem oSwordsManItem = SwordsManItem.CreateItem(m_SwordsManGrid, resObj, i.ToString(), this);
            if (null == oSwordsManItem)
            {
                LogModule.ErrorLog("OnLoadSwordsManItem::oSwordsManItem is null");
                break;
            }
            oSwordsManItem.SetData(oSwordsMan);
        }
        m_SwordsManGrid.GetComponent <UIGrid>().repositionNow = true;

        if (m_LabelPacSize != null)
        {
            m_LabelPacSize.text = StrDictionary.GetClientDictionaryString("#{3337}", oSwordsManContainer.GetSwordsManCount(), oSwordsManContainer.ContainerSize);
        }
    }
    public void UpdateSwordsManInfo()
    {
        if (null == m_LableName)
        {
            return;
        }
        if (null == m_LabelLevelValue)
        {
            return;
        }
        if (null == m_LabelDesc)
        {
            return;
        }
        SwordsManContainer Container = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(m_PackType);

        if (Container == null)
        {
            return;
        }
        SwordsMan oSwordsMan = Container.GetSwordsManByGuid(m_SwordsManGuid);

        if (oSwordsMan == null)
        {
            return;
        }

        m_LableName.text       = oSwordsMan.Name;
        m_LabelLevelValue.text = oSwordsMan.Level.ToString();
        m_LabelDesc.text       = oSwordsMan.GetTips();
        if (m_SpriteIcon != null)
        {
            m_SpriteIcon.spriteName = oSwordsMan.GetIcon();
        }
        if (m_SpriteQuality != null)
        {
            m_SpriteQuality.spriteName = SwordsMan.GetQualitySpriteName((SwordsMan.SWORDSMANQUALITY)oSwordsMan.Quality);;
        }
        ShowSwordsManExp();
        ShowSwordsManEffect();
    }
    void ShowSwordsManEffect()
    {
        SwordsManContainer Container = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(m_PackType);

        if (Container == null)
        {
            return;
        }
        SwordsMan oSwordsMan = Container.GetSwordsManByGuid(m_SwordsManGuid);

        if (oSwordsMan == null)
        {
            LogModule.ErrorLog("ShowSwordsManEffect::oSwordsMan is null");
            return;
        }
        Tab_SwordsManAttr pAttrTable = TableManager.GetSwordsManAttrByID(oSwordsMan.DataId, 0);

        if (null == pAttrTable)
        {
            LogModule.ErrorLog("ShowSwordsManEffect::pAttrTable is null");
            return;
        }

        for (int i = 0; i < m_LabelCurEffect.Length; i++)
        {
            m_LabelCurEffect[i].gameObject.SetActive(false);
        }
        for (int i = 0; i < m_LabelNextEffect.Length; i++)
        {
            m_LabelNextEffect[i].gameObject.SetActive(false);
        }
        int nCurEffectIndex  = 0;
        int nNextEffectIndex = 0;

        for (int i = 0; i < pAttrTable.getAddAttrTypeCount(); i++)
        {
            COMBATATTE nAttrType           = (COMBATATTE)pAttrTable.GetAddAttrTypebyIndex(i);
            int        nAttrValue          = oSwordsMan.GetComBatAttrById(nAttrType);
            int        nNextLevelAttrValue = oSwordsMan.GetNextLevelComBatAttrById(nAttrType);
            if (nAttrValue > 0 && nCurEffectIndex < m_LabelCurEffect.Length && nCurEffectIndex >= 0)
            {
                //m_LabelCurEffect[nCurEffectIndex].text = string.Format("{0}+{1}", ItemTool.ConvertAttrToString(nAttrType), nAttrValue.ToString());
                m_LabelCurEffect[nCurEffectIndex].text = StrDictionary.GetClientDictionaryString("#{3339}", ItemTool.ConvertAttrToString(nAttrType), nAttrValue.ToString());
                m_LabelCurEffect[nCurEffectIndex].gameObject.SetActive(true);
                ++nCurEffectIndex;
            }
            if (nNextLevelAttrValue > 0 && nNextEffectIndex < m_LabelNextEffect.Length && nNextEffectIndex >= 0)
            {
                //m_LabelNextEffect[nNextEffectIndex].text = string.Format("{0}+{1}", ItemTool.ConvertAttrToString(nAttrType), nNextLevelAttrValue.ToString());
                m_LabelNextEffect[nNextEffectIndex].text = StrDictionary.GetClientDictionaryString("#{3339}", ItemTool.ConvertAttrToString(nAttrType), nNextLevelAttrValue.ToString());
                m_LabelNextEffect[nNextEffectIndex].gameObject.SetActive(true);
                ++nNextEffectIndex;
            }
        }

        if (m_CurEffectGrid != null)
        {
            m_CurEffectGrid.SetActive(true);
        }
        if (m_CurEffectTitle != null)
        {
            m_CurEffectTitle.SetActive(true);
        }
        if (oSwordsMan.IsFullLevel())
        {
            if (m_NextEffectGrid != null)
            {
                m_NextEffectGrid.SetActive(false);
            }
            if (m_NextEffectTitle != null)
            {
                m_NextEffectTitle.SetActive(false);
            }
        }
        else
        {
            if (m_NextEffectGrid != null)
            {
                m_NextEffectGrid.SetActive(true);
            }
            if (m_NextEffectTitle != null)
            {
                m_NextEffectTitle.SetActive(true);
            }
        }
    }
    /// <summary>
    /// 一键吞噬
    /// </summary>
    void OnAkeyLevelup()
    {
        SwordsManContainer Container = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(m_PackType);

        if (Container == null)
        {
            LogModule.ErrorLog("OnAkeyLevelup::Container is null");
            return;
        }
        SwordsMan oSwordsMan = Container.GetSwordsManByGuid(m_SwordsManGuid);

        if (oSwordsMan == null)
        {
            LogModule.ErrorLog("OnAkeyLevelup::oSwordsMan is null");
            return;
        }

        if (null == m_GridTranForm)
        {
            LogModule.ErrorLog("OnAkeyLevelup::m_GridTranForm is null");
            return;
        }
        if (null == m_EatGuidlist)
        {
            LogModule.ErrorLog("OnAkeyLevelup::m_EatGuidlist is null");
            return;
        }
        m_EatGuidlist.Clear();
        List <string> OrangeSwordsmanlist = new List <string>();
        List <string> PurpleSwordsmanlist = new List <string>();

        for (int i = 0; i < m_GridTranForm.childCount; i++)
        {
            SwordsManItem item = m_GridTranForm.GetChild(i).GetComponent <SwordsManItem>();
            if (item == null)
            {
                continue;
            }
            if (item.m_Status == SwordsManItem.Status.STATUS_CHOOSED && item.m_oSwordsMan != null)
            {
                m_EatGuidlist.Add(item.m_oSwordsMan.Guid);
                if ((int)SwordsMan.SWORDSMANQUALITY.ORANGE == item.m_oSwordsMan.Quality)
                {
                    OrangeSwordsmanlist.Add(item.m_oSwordsMan.Name);
                }
                else if ((int)SwordsMan.SWORDSMANQUALITY.PURPLE == item.m_oSwordsMan.Quality)
                {
                    PurpleSwordsmanlist.Add(item.m_oSwordsMan.Name);
                }
            }
        }
        if (m_EatGuidlist.Count <= 0)
        {
            MessageBoxLogic.OpenOKBox(2675, 1000);
            return;
        }
        if (OrangeSwordsmanlist.Count <= 0 && PurpleSwordsmanlist.Count <= 0)
        {
            CG_SWORDSMAN_LEVELUP packet = (CG_SWORDSMAN_LEVELUP)PacketDistributed.CreatePacket(MessageID.PACKET_CG_SWORDSMAN_LEVELUP);
            packet.Swordsmanid     = oSwordsMan.Guid;
            packet.Eatallswordsman = 1;
            packet.Packtype        = (int)m_PackType;
            packet.FilterQuality   = (int)m_curChooseQuality;
            for (int i = 0; i < m_EatGuidlist.Count; ++i)
            {
                packet.AddEatguid(m_EatGuidlist[i]);
            }
            packet.SendPacket();
            return;
        }
        if (OrangeSwordsmanlist.Count > 0)
        {
            string strTip;
            if (OrangeSwordsmanlist.Count > 1)
            {
                strTip = StrDictionary.GetClientDictionaryString("#{4652}", OrangeSwordsmanlist[0], OrangeSwordsmanlist.Count);
                MessageBoxLogic.OpenOKCancelBox(strTip, "", OnAkeyLevelupOk);
            }
            else
            {
                strTip = StrDictionary.GetClientDictionaryString("#{4651}", OrangeSwordsmanlist[0]);
                MessageBoxLogic.OpenOKCancelBox(strTip, "", OnAkeyLevelupOk);
            }
            return;
        }

        if (PurpleSwordsmanlist.Count > 0)
        {
            string strTip;
            if (PurpleSwordsmanlist.Count > 1)
            {
                strTip = StrDictionary.GetClientDictionaryString("#{4654}", PurpleSwordsmanlist[0], PurpleSwordsmanlist.Count);
                MessageBoxLogic.OpenOKCancelBox(strTip, "", OnAkeyLevelupOk);
            }
            else
            {
                strTip = StrDictionary.GetClientDictionaryString("#{4653}", PurpleSwordsmanlist[0]);
                MessageBoxLogic.OpenOKCancelBox(strTip, "", OnAkeyLevelupOk);
            }
            return;
        }
    }
    /// <summary>
    /// 更新侠客信息
    /// </summary>
    void OnLoadSwordsManItem(GameObject resObj, object param)
    {
        if (null == m_SwordsManGrid)
        {
            LogModule.ErrorLog("OnLoadSwordsManItem m_SwordsManGrid is null");
            return;
        }
        Utils.CleanGrid(m_SwordsManGrid.gameObject);

        SwordsManContainer oSwordsManBackContainer = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(SwordsManContainer.PACK_TYPE.TYPE_BACKPACK);

        if (null == oSwordsManBackContainer)
        {
            LogModule.ErrorLog("OnLoadSwordsManItem::oSwordsManBackContainer is null");
            return;
        }
        SwordsManContainer Container = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(m_PackType);

        if (null == Container)
        {
            LogModule.ErrorLog("OnLoadSwordsManItem::Container is null");
            return;
        }
        SwordsMan CurSwordsMan = Container.GetSwordsManByGuid(m_SwordsManGuid);

        if (CurSwordsMan == null)
        {
            return;
        }
        List <SwordsMan> itemlist = SwordsManTool.ItemFilter(oSwordsManBackContainer);

        itemlist  = SwordsManTool.ItemFilter(itemlist, (int)m_curChooseQuality);
        m_nEatExp = 0;
        for (int i = 0; i < itemlist.Count; i++)
        {
            SwordsMan oSwordsMan = itemlist[i];
            if (null == oSwordsMan)
            {
                LogModule.ErrorLog("OnLoadSwordsManItem::oSwordsMan is null");
                break;
            }
            if (false == oSwordsMan.IsValid())
            {
                continue;
            }
            SwordsManItem oSwordsManItem = SwordsManItem.CreateItem(m_SwordsManGrid, resObj, i.ToString(), this);
            if (null == oSwordsManItem)
            {
                LogModule.ErrorLog("OnLoadSwordsManItem::oSwordsManItem is null");
                break;
            }
            oSwordsManItem.SetData(oSwordsMan);
            if (oSwordsMan.Guid == CurSwordsMan.Guid)
            {
                continue;
            }
            if (oSwordsMan.Quality > CurSwordsMan.Quality)
            {
                continue;
            }
            if (oSwordsMan.Locked)
            {
                continue;
            }
            oSwordsManItem.OnSelectSwordsMan();
            m_nEatExp += oSwordsManItem.m_oSwordsMan.GetEatExp();
        }
        m_SwordsManGrid.GetComponent <UIGrid>().repositionNow = true;
        if (m_TopGrid != null)
        {
            m_TopGrid.Recenter(true);
        }
        ShowSwordsManExp();
    }
예제 #9
0
    /// <summary>
    ///
    /// </summary>
    public void UpdateSwordsManEquipPack()
    {
        SwordsManContainer oSwordsManContainer = GameManager.gameManager.PlayerDataPool.GetSwordsManContainer(SwordsManContainer.PACK_TYPE.TYPE_EQUIPPACK);

        if (null == oSwordsManContainer)
        {
            LogModule.ErrorLog("UpdateSwordsManEquipPack::oSwordsManContainer is null");
            return;
        }
        int nCombatValue = 0;

        for (int i = 0; i < m_SwordsManIcons.Length && i < m_SwordsManQualitys.Length && i < m_SwordsManLock.Length && i < m_SlotLock.Length && i < m_SwordsManLevel.Length && i < m_LabelSlots.Length; i++)
        {
            if (i < oSwordsManContainer.ContainerSize)
            {
                SwordsMan oSwordsMan = oSwordsManContainer.GetSwordsMan(i);
                if (null == oSwordsMan)
                {
                    LogModule.ErrorLog("OnLoadSwordsManItem::oSwordsMan is null");
                    break;
                }
                m_SlotLock[i].SetActive(false);
                if (oSwordsMan.IsValid())
                {
                    m_SwordsManIcons[i].SetActive(true);
                    m_SwordsManIcons[i].GetComponent <UISprite>().spriteName    = oSwordsMan.GetIcon();
                    m_SwordsManQualitys[i].GetComponent <UISprite>().spriteName = SwordsMan.GetQualitySpriteName((SwordsMan.SWORDSMANQUALITY)oSwordsMan.Quality);
                    m_SwordsManQualitys[i].SetActive(true);

                    m_SwordsManLevel[i].gameObject.SetActive(true);
                    m_SwordsManLevel[i].text = StrDictionary.GetClientDictionaryString("#{2673}", oSwordsMan.Level);

                    if (oSwordsMan.Locked)
                    {
                        m_SwordsManLock[i].SetActive(true);
                    }
                    else
                    {
                        m_SwordsManLock[i].SetActive(false);
                    }
                    nCombatValue = nCombatValue + oSwordsMan.GetCombatValue();
                }
                else
                {
                    m_SwordsManQualitys[i].SetActive(false);
                    m_SwordsManIcons[i].SetActive(false);
                    m_SwordsManLock[i].SetActive(false);
                    m_SwordsManLevel[i].gameObject.SetActive(false);
                }
                m_LabelSlots[i].gameObject.SetActive(false);
            }
            else
            {
                //需要解锁

                m_SlotLock[i].SetActive(true);
                m_SwordsManQualitys[i].SetActive(false);
                m_SwordsManIcons[i].SetActive(false);
                m_LabelSlots[i].gameObject.SetActive(true);
                m_SwordsManLevel[i].gameObject.SetActive(false);
                Tab_SwordsEquipPackUnlock SwordsManUnLockTable = TableManager.GetSwordsEquipPackUnlockByID(i + 1, 0);
                if (SwordsManUnLockTable != null)
                {
                    //string strUnLock = SwordsManUnLockTable.NeedLevel.ToString() + "级开放";
                    string strUnLock = StrDictionary.GetClientDictionaryString("#{2674}", SwordsManUnLockTable.NeedLevel);
                    m_LabelSlots[i].text = strUnLock;
                }
            }
        }
        if (m_LabelCombatValue != null)
        {
            m_LabelCombatValue.text = nCombatValue.ToString();
        }
    }