コード例 #1
0
ファイル: InventoryManager.cs プロジェクト: lbddk/ahzs-client
    //private void ShowEquipInfo(ItemParent item)
    //{
    //    ItemEquipment ie = (ItemEquipment)item;

    //    //view.SetEquipDetailInfoNeedLevel(data.levelNeed);
    //    //view.SetEquipDetailInfoGrowLevel(data.growLevel);
    //    //for (int i = 0; i < 9; i++)
    //    //{
    //    //    view.SetDiamondHoleInfo(data.holeInfos[i], i);
    //    //}
    //    //for (int i = 0; i < 4; i++)
    //    //{
    //    //    view.SetDiamondHoleInfo(data.jewelHoles[i], i + 9);
    //    //    view.ShowNewDiamondHoleIcon(i + 9, (data.jewelHoles[i] != EquipTipViewData.NONE_JEWEL));
    //    //}
    //    //view.SetEquipDetailInfoNeedJob(data.job);
    //    ie.level = ie.levelNeed;
    //    EquipTipViewData data = GetEquipInfoByItem(ie);
    //    MenuUIViewManager view = MenuUIViewManager.Instance;

    //    view.SetEquipDetailInfoImage(data.iconName);
    //    view.ShowEquipDetailInfoImageUsed(data.isEquipOn);
    //    view.SetEquipDetailInfoName(data.name);
    //    view.SetEquipDetailInfoImageBg(IconData.GetIconByQuality(ie.quality));


    //    List<string> attrList = ie.GetAttrDescriptionList(MogoWorld.thePlayer);
    //    List<string> jewelList = new List<string>();
    //    foreach (string s in data.jewelHoles)
    //    {
    //        if (s == "") continue;
    //        jewelList.Add(s);
    //    }
    //    MenuUIViewManager.Instance.ShowEquipInfoDetail(attrList, jewelList, ie.levelNeed + "", LanguageData.dataMap[ie.vocation].content);

    //}



    //public EquipTipViewData GetEquipInfoByItem(int _templateId, List<int> _jewelSlots)
    //{
    //    ItemEquipmentInstance instance = new ItemEquipmentInstance() { templeId = _templateId, jewelSlots = _jewelSlots };
    //    return GetEquipInfoByItem(new ItemEquipment(instance),);
    //}

    static public EquipTipViewData GetEquipInfoByItem(ItemEquipment ie, int level)
    {
        //LoggerHelper.Debug("GetEquipInfoByItem:" + ie.templateId+"!!!!!!!!!!!!!!");
        EquipTipViewData data = new EquipTipViewData();
        data.levelNeed = ie.levelNeed;
        //ie.level跟玩家level相关,不实时更新,需要使用时设置,其具体属性根据此值变化
        ie.level = MogoWorld.thePlayer.level;
        if (ie.level <= 0) ie.level = 99;
        data.growLevel = ie.level + "/" + ie.levelLimit;
        ie.level = ie.levelNeed;
        List<string> attrList = ie.GetAttrDescriptionList(level);
        int m = 0;
        for (m = 0; m < attrList.Count && m < 9; m++)
        {
            data.holeInfos[m] = attrList[m];
        }
        for (; m < 9; m++)
        {
            data.holeInfos[m] = "";
        }

        data.job = LanguageData.dataMap[ie.vocation].content;

        data.iconName = ie.icon;
        data.isEquipOn = (ie.bagType == ITEM_TYPE_ONEQUIP);
        for (int i = 0; i < 4; i++)
        {
            data.jewelHoles[i] = "";
        }
        if (ie.jewelSlotsType != null)
        {
            data.jewelSlotIcons = new List<string>();
            for (int i = 0; i < ie.jewelSlotsType.Count; i++)
            {
                data.jewelHoles[i] = LanguageData.GetContent(910);//+ ie.jewelSlotsType[i];
                data.jewelSlotIcons.Add(IconData.dataMap.Get(30018 + ie.jewelSlotsType[i]).path);
            }

            for (int i = 0; i < ie.jewelSlots.Count; i++)
            {
                int id = ie.jewelSlots[i];
                if (id == -1) continue;
                data.jewelSlotIcons[i] = IconData.dataMap.Get(30027 + ie.jewelSlotsType[i]).path;
                ItemJewelData jewel = ItemJewelData.dataMap[id];
                string jewelInfo = jewel.effectDescriptionStr + "";
                data.jewelHoles[i] = jewelInfo;
            }
        }

        data.name = ie.name;
        return data;
    }
コード例 #2
0
ファイル: InventoryManager.cs プロジェクト: lbddk/ahzs-client
    /// <summary>
    /// 
    /// </summary>
    /// <param name="equip"></param>
    /// <param name="buttonList">若无按钮即传null</param>
    public void ShowEquipTip(ItemEquipment equip, List<ButtonInfo> buttonList, int _level, bool needFumoInfo = false, int slot = -1)
    {
        EquipTipViewData data = GetEquipInfoByItem(equip, _level);
        //MenuUIViewManager view = MenuUIViewManager.Instance;
        EquipTipManager view = EquipTipManager.Instance;

        //界面静态部分
        //view.SetEquipDetailInfoImage(data.iconName);
        view.ShowEquipDetailInfoImageUsed(data.isEquipOn);
        view.SetEquipDetailInfoName(data.name);//
        view.SetEquipImage(equip.templateId);
        view.SetEquipDetailInfoScoreNum(equip.score);
        //view.SetEquipDetailInfoImageBg(IconData.GetIconByQuality(equip.quality));

        //界面动态排版部分
        List<string> attrList = equip.GetAttrDescriptionList(_level);
        List<string> jewelList = new List<string>();
        foreach (string s in data.jewelHoles)
        {
            if (s == "") continue;
            jewelList.Add(s);
        }

        string suitName = "";
        List<string> suitAttr = new List<string>();
        if (equip.suitId > 0)
        {
            suitName = ItemSuitEquipmentsData.GetSuitName(equip.suitId);
            if (!equip.isActive) suitName += LanguageData.GetContent(1137);
            int suitPutOnNum = GetSuitPutonNum(equip.suitId);
            int suitMaxNum = ItemSuitEquipmentsData.GetSuitMaxNum(equip.suitId);
            suitName = String.Concat(suitName, "(", suitPutOnNum, "/", suitMaxNum, ")");
            suitAttr = ItemSuitEquipmentsData.GetSuitAttrList(equip.suitId, suitPutOnNum);
        }

        string levelDesp = equip.levelDesp;
        view.SetEquipDetailInfoLevelText(levelDesp);

        string vocation = LanguageData.dataMap[equip.vocation].content;
        vocation = LanguageData.GetContent(912, vocation);
        if (equip.vocation != (int)MogoWorld.thePlayer.vocation)
        {
            vocation = MogoUtils.GetRedString(vocation);

        }
        view.SetVocationNeedText(vocation);
        FumoTipUIInfo fumoInfo = null;
        if (needFumoInfo)
        {
            fumoInfo = FumoManager.Instance.GetFumoTipUIInfo(slot);
        }
        view.ShowEquipTip(suitName, suitAttr, attrList, jewelList, data.jewelSlotIcons, buttonList, fumoInfo);
    }