Exemplo n.º 1
0
    /// <summary>
    /// 设置推荐装备Grid数据
    /// </summary>
    /// <param name="m_equipRecommendGridDataList"></param>
    public void SetEquipRecommendDataList(List <EquipRecommendGridData> m_equipRecommendGridDataList)
    {
        for (int index = 0; index < m_equipRecommendGridDataList.Count; index++)
        {
            if (!m_maplistEquipRecommendUIGrid.ContainsKey(index))
            {
                continue;
            }

            int recommendScore = 0;
            int currentScore   = 0;

            EquipRecommendGridData gridData = m_equipRecommendGridDataList[index];
            EquipRecommendUIGrid   gridUI   = m_maplistEquipRecommendUIGrid[index];

            gridUI.LoadResourceInsteadOfAwake();
            gridUI.SetEquipRecommendAccess(gridData.access, gridData.accessType);

            if (gridData.currentItemEquipment != null)
            {
                gridUI.SetCurrentEquipID(gridData.currentItemEquipment.templateId);
                gridUI.SetCurrentEquip(gridData.currentItemEquipment.icon, gridData.currentItemEquipment.color, gridData.currentItemEquipment.quality);
                gridUI.SetCurrentEquipName(gridData.currentItemEquipment.name, true);

                currentScore = gridData.currentItemEquipment.GetScore(MogoWorld.thePlayer.level);
                gridUI.SetCurrentEquipScore((currentScore));
            }
            else
            {
                gridUI.SetCurrentEquipID(0);
                gridUI.SetCurrentEquip(EquipSlotIcon.icons[gridData.equipSlot], 0);
                gridUI.SetCurrentEquipName(EquipSlotName.GetEquipSlotNameBySlot(gridData.equipSlot), false);
                gridUI.SetCurrentEquipScore(0);
            }

            ItemEquipmentData recommendEquipData = ItemEquipmentData.GetItemEquipmentData(gridData.recommendEquipID);
            if (recommendEquipData != null)
            {
                gridUI.SetRecommendEquipID(recommendEquipData.id);
                gridUI.SetRecommendEquip(recommendEquipData.Icon, recommendEquipData.color, (int)recommendEquipData.quality);
                gridUI.SetRecommendEquipName(recommendEquipData.Name, true);

                recommendScore = recommendEquipData.GetScore(MogoWorld.thePlayer.level);
                gridUI.SetRecommendEquipScore(recommendScore);
            }
            else
            {
                gridUI.SetRecommendEquipID(0);
                gridUI.SetRecommendEquip(EquipSlotIcon.icons[gridData.equipSlot], 0);
                gridUI.SetRecommendEquipName(EquipSlotName.GetEquipSlotNameBySlot(gridData.equipSlot), false);
                gridUI.SetRecommendEquipScore(0);
            }

            gridUI.SetScoreUpgradeNum(recommendScore, currentScore);
        }
    }
Exemplo n.º 2
0
    /// <summary>
    /// 统计可以推荐的装备列表数据
    /// </summary>
    private void CalEquipRecommendGridDataList()
    {
        m_equipRecommendGridDataList.Clear();

        EquipRecommendData xmlData = EquipRecommendData.GetEquipRecommendData((int)MogoWorld.thePlayer.vocation, (int)MogoWorld.thePlayer.level);
        Dictionary <int, ItemEquipment> EquipOnDic = InventoryManager.Instance.EquipOnDic;

        if (xmlData != null)
        {
            for (int equipSlot = 1; equipSlot <= InventoryManager.SLOT_NUM; equipSlot++)
            {
                ItemEquipment itemEquipment  = null;
                int           recommendScore = GetEquipRecommendScoreBySlot(xmlData, equipSlot);
                int           currentScore   = 0;
                if (EquipOnDic.ContainsKey(equipSlot))
                {
                    itemEquipment = EquipOnDic[equipSlot];
                    currentScore  = itemEquipment.GetScore(MogoWorld.thePlayer.level);
                }

                // 如果当前装备评分小于推荐装备评分,加入列表(若角色所穿装备评分<推荐装备评分,显示在推荐列表里;否则不显示)
                if (currentScore < recommendScore)
                {
                    EquipRecommendGridData gridData = new EquipRecommendGridData();
                    gridData.equipSlot            = equipSlot;
                    gridData.access               = GetEquipRecommendAccessBySlot(xmlData, equipSlot);
                    gridData.accessType           = GetEquipRecommendAccessTypeBySlot(xmlData, equipSlot);
                    gridData.recommendEquipID     = GetEquipRecommendGoodIDBySlot(xmlData, equipSlot);
                    gridData.currentItemEquipment = itemEquipment;
                    m_equipRecommendGridDataList.Add(gridData);
                }
            }
        }

        if (EquipRecommendUIViewManager.Instance != null)
        {
            EquipRecommendUIViewManager.Instance.SetEquipRecommendList(m_equipRecommendGridDataList.Count, () =>
            {
                EquipRecommendUIViewManager.Instance.SetEquipRecommendDataList(m_equipRecommendGridDataList);
            });
        }
    }
    /// <summary>
    /// 统计可以推荐的装备列表数据
    /// </summary>
    private void CalEquipRecommendGridDataList()
    {
        m_equipRecommendGridDataList.Clear();

        EquipRecommendData xmlData = EquipRecommendData.GetEquipRecommendData((int)MogoWorld.thePlayer.vocation, (int)MogoWorld.thePlayer.level);
        Dictionary<int, ItemEquipment> EquipOnDic = InventoryManager.Instance.EquipOnDic;
        if (xmlData != null)
        {
            for (int equipSlot = 1; equipSlot <= InventoryManager.SLOT_NUM; equipSlot++)
            {
                ItemEquipment itemEquipment = null;
                int recommendScore = GetEquipRecommendScoreBySlot(xmlData, equipSlot);
                int currentScore = 0;
                if (EquipOnDic.ContainsKey(equipSlot))
                {
                    itemEquipment = EquipOnDic[equipSlot];
                    currentScore = itemEquipment.GetScore(MogoWorld.thePlayer.level);                    
                }

                // 如果当前装备评分小于推荐装备评分,加入列表(若角色所穿装备评分<推荐装备评分,显示在推荐列表里;否则不显示)
                if (currentScore < recommendScore)
                {
                    EquipRecommendGridData gridData = new EquipRecommendGridData();
                    gridData.equipSlot = equipSlot;
                    gridData.access = GetEquipRecommendAccessBySlot(xmlData, equipSlot);
                    gridData.accessType = GetEquipRecommendAccessTypeBySlot(xmlData, equipSlot);
                    gridData.recommendEquipID = GetEquipRecommendGoodIDBySlot(xmlData, equipSlot);
                    gridData.currentItemEquipment = itemEquipment;
                    m_equipRecommendGridDataList.Add(gridData);
                }
            }
        }

        if (EquipRecommendUIViewManager.Instance != null)
        {
            EquipRecommendUIViewManager.Instance.SetEquipRecommendList(m_equipRecommendGridDataList.Count, () =>
                {
                    EquipRecommendUIViewManager.Instance.SetEquipRecommendDataList(m_equipRecommendGridDataList);
                });
        }
    }