Example #1
0
    private void OnClickUniversalItemHandler(int id)
    {
//         //先判断是否是碎片;
//         if (GameUtils.GetItemTypeById(id) == EM_ITEM_TYPE.EM_ITEM_TYPE_FRAGMENT)
//         {
//             UICommonManager.Inst.ShowHeroFragment(id);
//         }
//         else
//         {

        EM_OBJECT_CLASS type = GameUtils.GetObjectClassById(id);

        switch (type)
        {
        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_HERO:
        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_MONSTER:
            UICommonManager.Inst.ShowCommon(id);
            break;

        default:
            UICommonManager.Inst.ShowHeroObtain(id);
            break;
        }
//         }
    }
Example #2
0
    /// <summary>
    /// 根据id展示不同的物品展示界面;
    /// </summary>
    /// <param name="tableID"></param>
    public static bool ShowItemPreviewUIHandler(int tableID)
    {
        EM_OBJECT_CLASS eoc = GameUtils.GetObjectClassById(tableID);

        switch (eoc)
        {
        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RUNE:
            ItemTemplate runeItemT = DataTemplate.GetInstance().GetItemTemplateById(tableID);
            if (runeItemT == null)
            {
                LogManager.LogError("item表格中缺少物品id=" + tableID);
                return(false);
            }
            UI_RuneInfo.SetShowRuneDate(runeItemT);
            UI_HomeControler.Inst.AddUI(UI_RuneInfo.UI_ResPath);
            return(true);

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_COMMON:
            ItemTemplate itemT = DataTemplate.GetInstance().GetItemTemplateById(tableID);
            if (itemT == null)
            {
                LogManager.LogError("item表格中缺少物品id=" + tableID);
                return(false);
            }
            UI_Item.SetItemTemplate(itemT);
            UI_HomeControler.Inst.AddUI(UI_Item.UI_ResPath);
            return(true);

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_SKIN:
            ArtresourceTemplate artT = DataTemplate.GetInstance().GetArtResourceTemplate(tableID);
            if (artT == null)
            {
                LogManager.LogError("ArtResource时装表格中缺少物品id=" + tableID);
                return(false);
            }
            UI_SkinPreviewMgr.SetShowArtTemplate(artT);
            UI_HomeControler.Inst.AddUI(UI_SkinPreviewMgr.UI_ResPath);
            return(true);

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_HERO:
            HeroTemplate heroT = DataTemplate.GetInstance().GetHeroTemplateById(tableID);
            if (heroT == null)
            {
                LogManager.LogError("hero表格中缺少物品id=" + tableID);
                return(false);
            }
            UI_HomeControler.Inst.AddUI(HeroInfoPop.UI_ResPath);
            HeroInfoPop.inst.SetShowData(heroT);
            return(true);

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RES:
            //资源类型点击无响应;
            return(true);

        default:
            LogManager.LogError("未处理的商城物品预览类型");
            return(false);
        }
    }
Example #3
0
    public static string GetAwardSpriteName(int AwardId)
    {
        string _result = null;

        EM_OBJECT_CLASS _awardClass = GameUtils.GetObjectClassById(AwardId);

        switch (_awardClass)
        {
        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RES:
            ResourceindexTemplate _resTable = DataTemplate.GetInstance().m_ResourceindexTemplate.getTableData(AwardId) as ResourceindexTemplate;
            if (_resTable != null)
            {
                _result = _resTable.getIcon3();
            }
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RUNE:
            ItemTemplate _itemTable = DataTemplate.GetInstance().m_ItemTable.getTableData(AwardId) as ItemTemplate;
            if (_itemTable != null)
            {
                _result = _itemTable.getIcon_s();
            }
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_COMMON:
            ItemTemplate _runeTable = DataTemplate.GetInstance().m_ItemTable.getTableData(AwardId) as ItemTemplate;
            if (_runeTable != null)
            {
                _result = _runeTable.getIcon_s();
            }
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_HERO:
            HeroTemplate _heroTable = DataTemplate.GetInstance().m_HeroTable.getTableData(AwardId) as HeroTemplate;

            if (_heroTable != null)
            {
                ArtresourceTemplate _atrResTable = DataTemplate.GetInstance().m_ArtresourceTable.getTableData(_heroTable.getArtresources()) as ArtresourceTemplate;
                _result = _atrResTable.getHeadiconresource();
            }
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_SKIN:
            ArtresourceTemplate _atrResTable1 = DataTemplate.GetInstance().m_ArtresourceTable.getTableData(AwardId) as ArtresourceTemplate;
            if (_atrResTable1 != null)
            {
                _result = _atrResTable1.getHeadiconresource();
            }
            break;

        default:
            break;
        }

        return(_result);
    }
    /// <summary>
    /// 使用物品ID初始化,参数2为物品数量。当ID为英雄、符文,或者数量不大于0时会隐藏数量面板
    /// </summary>
    /// <param name="itemID"></param>
    /// <param name="count"></param>
    public void InitByID(int itemID, int count = 0)
    {
        m_ItemID = itemID;
        m_Type   = GameUtils.GetObjectClassById(itemID);
        switch (m_Type)
        {
        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RUNE:
            ItemTemplate _itemTable = DataTemplate.GetInstance().m_ItemTable.getTableData(itemID) as ItemTemplate;
            if (_itemTable != null)
            {
                ItemTypeProcess(_itemTable);
                m_ItemImage.gameObject.SetActive(false);
                m_HeroImage.gameObject.SetActive(false);
                LoadStar(_itemTable.getRune_quality(), _itemTable.getRune_quality(), false);
            }
            m_ItemCountImage.gameObject.SetActive(false);
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_HERO:
            HeroTemplate _heroTable = DataTemplate.GetInstance().m_HeroTable.getTableData(itemID) as HeroTemplate;
            if (_heroTable != null)
            {
                m_HeroImage.sprite = DynamicItem.GetSprite(itemID);
                m_HeroImage.gameObject.SetActive(true);
                //m_HeroImage.SetNativeSize();
                m_ItemImage.gameObject.SetActive(false);
                LoadStar(_heroTable.getQuality(), _heroTable.getMaxQuality());
            }
            m_ItemCountImage.gameObject.SetActive(false);
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_MONSTER:
            MonsterTemplate _monsterTable = DataTemplate.GetInstance().m_MonsterTable.getTableData(itemID) as MonsterTemplate;
            if (_monsterTable != null)
            {
                m_HeroImage.sprite = DynamicItem.GetSprite(itemID);
                m_HeroImage.gameObject.SetActive(true);
                //m_HeroImage.SetNativeSize();
                m_ItemImage.gameObject.SetActive(false);
                m_StarPanel.SetActive(false);
            }
            break;

        default:
            m_ItemImage.sprite = DynamicItem.GetSprite(itemID);
            m_ItemImage.gameObject.SetActive(true);
            m_HeroImage.gameObject.SetActive(false);
            m_ItemCountImage.gameObject.SetActive(count > 0);
            m_ItemCountText.text = string.Format("X{0}", count);
            break;
        }
    }
 private void InitComponentState()
 {
     m_Type               = EM_OBJECT_CLASS.EM_OBJECT_CLASS_INVALID;
     m_ItemID             = -1;
     m_ButtonAction       = null;
     m_SelfButton.enabled = false;
     m_HightLightBG.gameObject.SetActive(false);
     m_ItemBG.gameObject.SetActive(true);
     m_ItemImage.gameObject.SetActive(false);
     m_ItemImage.preserveAspect = true;
     m_HeroImage.gameObject.SetActive(false);
     m_HeroImage.preserveAspect = true;
     m_ItemCountImage.gameObject.SetActive(false);
     m_TittleText.gameObject.SetActive(false);
     m_HeadText.gameObject.SetActive(false);
     m_CenterText.gameObject.SetActive(false);
     m_StarPanel.SetActive(false);
     m_CheckClaim.SetActive(false);
     m_CheckClaimText.text = GameUtils.getString("sign_content4");
 }
Example #6
0
    // 更新界面中间 Item 显示
    void UpdateCenterItem()
    {
        for (int i = 1; i <= ObjectSelf.GetInstance().lotteryitemmap.Count; i++)
        {
            if (ObjectSelf.GetInstance().lotteryitemmap.ContainsKey(i))
            {
                LotteryItemlayer lotery = ObjectSelf.GetInstance().lotteryitemmap[i] as LotteryItemlayer;
                if (lotery != null)
                {
                    GameObject item = m_ItemLayout.transform.GetChild(i - 1).gameObject;
                    item.SetActive(true);
                    string str = "treasure_content" + i.ToString();
                    item.transform.FindChild("LayerText").GetComponent <Text>().text = GameUtils.getString(str);
                    GameObject Goods = item.transform.FindChild("Goods").gameObject;                      // goods

                    if (ObjectSelf.GetInstance().mapkey == i)
                    {
                        item.transform.FindChild("BgIndex").gameObject.SetActive(true);
                    }
                    else
                    {
                        item.transform.FindChild("BgIndex").gameObject.SetActive(false);
                    }

                    int j = 0;
                    foreach (var lotteryItem in lotery.lotteryitemlist)
                    {
                        LotteryItem lotItem = lotteryItem;

                        RuintreasureTemplate temp = (RuintreasureTemplate)DataTemplate.GetInstance().m_RuintreasureTable.getTableData(lotteryItem.id);

                        GameObject goods = Goods.transform.GetChild(lotItem.viewnum - 1).gameObject;
                        goods.gameObject.SetActive(true);

                        // 取消显示所有星级
                        GameObject starLevel = goods.transform.Find("UI_Star_Level").gameObject;
                        starLevel.SetActive(false);
                        for (int k = 0; k < 5; ++k)
                        {
                            starLevel.transform.GetChild(k).gameObject.SetActive(false);
                        }


                        if (lotItem.isget == 1)                           // 已领取
                        {
                            GameObject reached = goods.transform.FindChild("Reached").gameObject;
                            reached.SetActive(true);

                            // 特殊事件,显示特殊字
                            if (lotItem.superid == 100001 || lotItem.superid == 100008 || lotItem.superid == 100009)
                            {
                                reached.transform.FindChild("TipsText").GetComponent <Text>().text = "X3";
                            }
                            else if (lotItem.superid == 100002)
                            {
                                reached.transform.FindChild("TipsText").GetComponent <Text>().text = "X2";
                            }
                            else
                            {
                                reached.transform.FindChild("TipsText").GetComponent <Text>().text = GameUtils.getString("shop_content29");
                            }
                        }
                        else
                        {
                            GameObject reached = goods.transform.FindChild("Reached").gameObject;
                            reached.SetActive(false);
                        }

                        // 事件
                        if (temp.getType() == 2)
                        {
                            Image icon = goods.transform.FindChild("Icon").GetComponent <Image>();
                            icon.gameObject.SetActive(false);
                            goods.transform.FindChild("qiyu").gameObject.SetActive(true);
                            //icon.sprite = UIResourceMgr.LoadSprite(common.defaultPath + "UI_baozang_6");
                            //icon.sprite = Resources.Load<Sprite>(temp.getIcon());
                            goods.transform.FindChild("NumberText").gameObject.SetActive(false);
                        }
                        else                          // 物品
                        {
                            goods.transform.FindChild("qiyu").gameObject.SetActive(false);
                            Image icon = goods.transform.FindChild("Icon").GetComponent <Image>();
                            icon.gameObject.SetActive(true);
                            //icon.sprite = Resources.Load<Sprite>("UI/Sprites/UI_baozang_6.png");

                            int             ID   = temp.getParameter1();
                            EM_OBJECT_CLASS type = GameUtils.GetObjectClassById(ID);

                            if (type == EM_OBJECT_CLASS.EM_OBJECT_CLASS_COMMON || type == EM_OBJECT_CLASS.EM_OBJECT_CLASS_RUNE)                              // 道具 对应数据表26
                            {
                                ItemTemplate itemTemp = (ItemTemplate)DataTemplate.GetInstance().m_ItemTable.getTableData(ID);
                                icon.sprite = UIResourceMgr.LoadSprite(common.defaultPath + itemTemp.getIcon_s());

                                // 显示符文星级

                                if (type == EM_OBJECT_CLASS.EM_OBJECT_CLASS_RUNE)
                                {
                                    int        quality = itemTemp.getRune_quality();
                                    GameObject star    = goods.transform.Find("UI_Star_Level").gameObject;
                                    star.SetActive(true);
                                    for (int k = 0; k < quality; ++k)
                                    {
                                        star.transform.GetChild(k).gameObject.SetActive(true);
                                    }
                                }



                                //Debug.Log(i + "   " + j + "   EM_OBJECT_CLASS_COMMON " + temp.getId() + "   " + itemTemp.getIcon_s() + "   " + lotteryItem.id);
                            }
                            else if (type == EM_OBJECT_CLASS.EM_OBJECT_CLASS_RES)                               // 资源 对应数据表53
                            {
                                ResourceindexTemplate resTemp = (ResourceindexTemplate)DataTemplate.GetInstance().m_ResourceindexTemplate.getTableData(ID);

                                icon.sprite = UIResourceMgr.LoadSprite(common.defaultPath + resTemp.getIcon3());

                                //Debug.Log(i + "   " + j + "   EM_OBJECT_CLASS_RES " + temp.getId() + "   " + resTemp.getIcon3() + "   " + lotteryItem.id);
                            }
                            else
                            {
                                Debug.Log(i + "   " + j + "   other " + temp.getId() + " " + lotteryItem.id);
                            }

                            goods.transform.FindChild("NumberText").gameObject.SetActive(true);
                            goods.transform.FindChild("NumberText").GetComponent <Text>().text = temp.getParameter2();
                        }


                        j++;
                    }
                }
            }
        }
    }
Example #7
0
    public void SetData(int tableID)
    {
        int    quality = -1;
        string iconStr = string.Empty;
        string name    = string.Empty;
        string hintTxt = string.Empty;
        string detail  = string.Empty;

        EM_OBJECT_CLASS eoc = GameUtils.GetObjectClassById(tableID);

        switch (eoc)
        {
        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RUNE:
            ItemTemplate runeItemT = DataTemplate.GetInstance().GetItemTemplateById(tableID);
            if (runeItemT == null)
            {
                LogManager.LogError("item表格中缺少物品id=" + tableID);
                return;
            }
            iconStr = runeItemT.getIcon_s();
            name    = GameUtils.getString(runeItemT.getName());
            int count = 0;
            if (ObjectSelf.GetInstance().TryGetItemCountById(EM_BAG_HASHTABLE_TYPE.EM_BAG_HASHTABLE_TYPE_COMMON, tableID, ref count))
            {
            }
            else
            {
                count = 0;
            }
            hintTxt = string.Format(GameUtils.getString("tongyong_daoju1"), count);
            detail  = GameUtils.getString(runeItemT.getDes());
            quality = runeItemT.getRune_quality();
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_COMMON:
            ItemTemplate itemT = DataTemplate.GetInstance().GetItemTemplateById(tableID);
            if (itemT == null)
            {
                LogManager.LogError("item表格中缺少物品id=" + tableID);
                return;
            }

            iconStr = itemT.getIcon_s();
            name    = GameUtils.getString(itemT.getName());

            int num = 0;
            if (ObjectSelf.GetInstance().TryGetItemCountById(EM_BAG_HASHTABLE_TYPE.EM_BAG_HASHTABLE_TYPE_COMMON, tableID, ref num))
            {
            }
            else
            {
                num = 0;
            }
            hintTxt = string.Format(GameUtils.getString("tongyong_daoju1"), num);
            detail  = GameUtils.getString(itemT.getDes());
            quality = itemT.getQuality();
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_MONSTER:
            MonsterTemplate monsterT = DataTemplate.GetInstance().m_MonsterTable.getTableData(tableID) as MonsterTemplate;
            if (monsterT == null)
            {
                LogManager.LogError("item表格中缺少物品id=" + tableID);
                return;
            }

            ArtresourceTemplate artMonster = DataTemplate.GetInstance().GetArtResourceTemplate(monsterT.getArtresources());
            if (artMonster == null)
            {
                LogManager.LogError("ArtResource时装表格中缺少物品id=" + monsterT.getArtresources());
                return;
            }

            iconStr = artMonster.getHeadiconresource();
            name    = GameUtils.getString(monsterT.getMonstername());
            hintTxt = string.Format("Lv{0}", monsterT.getMonsterlevel());
            detail  = GameUtils.getString(monsterT.getDescriptionID());
            quality = monsterT.getMonsterstar();
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_HERO:
            HeroTemplate heroT = DataTemplate.GetInstance().GetHeroTemplateById(tableID);
            if (heroT == null)
            {
                LogManager.LogError("hero表格中缺少物品id=" + tableID);
                return;
            }
            ArtresourceTemplate artHero = DataTemplate.GetInstance().GetArtResourceTemplate(heroT.getArtresources());
            if (artHero == null)
            {
                LogManager.LogError("ArtResource时装表格中缺少物品id=" + heroT.getArtresources());
                return;
            }

            iconStr = artHero.getHeadiconresource();
            //英雄的初始品质为HeroTemplate中的Quality;
            name = string.Format(GameUtils.GetHeroNameFontColor(heroT.getQuality()), GameUtils.getString(heroT.getNameID()));
            ObjectCard oc = ObjectSelf.GetInstance().HeroContainerBag.FindHero(tableID);
            hintTxt = string.Format("Lv{0}", oc == null ? 1 : oc.GetHeroData().Level);
            detail  = GameUtils.getString(heroT.getDescriptionID());
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_SKIN:
            ArtresourceTemplate artT = DataTemplate.GetInstance().GetArtResourceTemplate(tableID);
            if (artT == null)
            {
                LogManager.LogError("ArtResource时装表格中缺少物品id=" + tableID);
                return;
            }

            iconStr = string.Empty;
            name    = string.Empty;
            hintTxt = string.Empty;
            detail  = string.Empty;
            break;

        case EM_OBJECT_CLASS.EM_OBJECT_CLASS_RES:
            //资源类型点击无响应;
            iconStr = string.Empty;
            name    = string.Empty;
            hintTxt = string.Empty;
            detail  = string.Empty;
            break;

        default:
            LogManager.LogError("未处理的商城物品预览类型");
            break;
        }
        name = string.Format(GameUtils.GetHeroNameFontColor(quality), name);
        SetData(iconStr, name, hintTxt, detail);
    }