public void RefreshWingGridList(System.Collections.Generic.List <WingGridData> dataList)
    {
        for (int i = 0; i < gridList.Count; ++i)
        {
            AssetCacheMgr.ReleaseInstance(gridList[i].gameObject);
        }

        gridList.Clear();
        GetTransform("WingUIListDialogGridList").GetComponent <MogoSingleButtonList>().SingleButtonList.Clear();
        GetTransform("WingUIListDialogGridListCamera").localPosition = new Vector3(0, -166f, 0);

        for (int i = 0; i < dataList.Count; ++i)
        {
            int index = i;
            AssetCacheMgr.GetUIInstance("WingUIListDialogGrid.prefab", (name, id, go) =>
            {
                GameObject gameObj = (GameObject)go;
                MFUIUtils.AttachWidget(gameObj.transform, GetTransform("WingUIListDialogGridList"));
                gameObj.transform.localPosition = new Vector3(0, -112 * index, 0);
                gameObj.GetComponent <MyDragCamera>().RelatedCamera = GetTransform("WingUIListDialogGridListCamera").GetComponent <Camera>();
                GetTransform("WingUIListDialogGridList").GetComponent <MogoSingleButtonList>().SingleButtonList.Add(
                    gameObj.GetComponent <MogoSingleButton>());
                WingUIGrid uigrid = gameObj.AddComponent <WingUIGrid>();
                uigrid.ID         = index;

                WingGridData data = dataList[index];

                if (data.IsHave == false)
                {
                    uigrid.ShowBuyBtn(true);
                    uigrid.ShowUsedSign(false);
                    uigrid.SetWingCost(data.WingPrice);
                    uigrid.SetWingName(data.WingName);
                    uigrid.SetWingStatus(data.WingStatus);
                    uigrid.SetWingDescripte(data.WingDescripe);
                    uigrid.ShowWingLock(false);
                    uigrid.ShowWingProgress(false);
                    uigrid.ShowWingIconBlackWhite(true);
                    uigrid.ShowCost(true);
                }
                else
                {
                    if (data.IsActive == true)
                    {
                        if (data.IsUsing == false)
                        {
                            uigrid.ShowBuyBtn(false);
                            uigrid.ShowUsedSign(false);
                            uigrid.SetWingName(data.WingName);
                            uigrid.SetWingStatus(data.WingStatus);
                            uigrid.SetWingDescripte(data.WingDescripe);
                            uigrid.ShowWingLock(false);
                            //uigrid.ShowWingProgress(false);
                            uigrid.ShowWingProgress(true);
                            uigrid.SetWingProgressText(string.Concat(data.WingCurExp, "/", data.WingTotalExp));
                            uigrid.SetWingProgressSize((float)data.WingCurExp / (float)data.WingTotalExp);
                            uigrid.ShowWingIconBlackWhite(false);
                            uigrid.ShowCost(false);
                        }
                        else
                        {
                            uigrid.ShowBuyBtn(false);
                            uigrid.ShowUsedSign(true);
                            uigrid.SetWingName(data.WingName);
                            uigrid.SetWingStatus(data.WingStatus);
                            uigrid.SetWingDescripte(data.WingDescripe);
                            uigrid.ShowWingLock(false);
                            uigrid.ShowWingProgress(true);
                            uigrid.SetWingProgressText(string.Concat(data.WingCurExp, "/", data.WingTotalExp));
                            uigrid.SetWingProgressSize((float)data.WingCurExp / (float)data.WingTotalExp);
                            uigrid.ShowWingIconBlackWhite(false);
                            uigrid.ShowCost(false);
                        }
                    }
                    else
                    {
                        uigrid.ShowBuyBtn(false);
                        uigrid.ShowUsedSign(false);
                        uigrid.SetWingName(data.WingName);
                        uigrid.SetWingStatus(data.WingStatus);
                        uigrid.SetWingDescripte(data.WingDescripe);
                        uigrid.ShowWingLock(true);
                        uigrid.ShowWingProgress(false);
                        uigrid.ShowWingIconBlackWhite(false);
                        uigrid.ShowCost(false);
                    }
                }


                if (dataList.Count <= 4)
                {
                    GetTransform("WingUIListDialogGridListCamera").GetComponent <MyDragableCamera>().MINY =
                        -166f;
                }
                else
                {
                    GetTransform("WingUIListDialogGridListCamera").GetComponent <MyDragableCamera>().MINY =
                        -166f - (dataList.Count - 4) * 112f;
                }

                gridList.Add(gameObj);
            });
        }
    }
示例#2
0
    public void UpdateWing(LuaTable wings)
    {
        List <WingGridData> datas = new List <WingGridData>();

        m_wings.Clear();
        m_grids.Clear();
        m_magic.Clear();
        m_common.Clear();
        int dressed = int.Parse((string)wings["1"]);

        this.dressed = dressed;
        foreach (var item in (LuaTable)wings["2"])
        {
            Wing w = new Wing();
            w.id     = int.Parse(item.Key);
            w.level  = int.Parse((string)((LuaTable)item.Value)["1"]);
            w.exp    = int.Parse((string)((LuaTable)item.Value)["2"]);
            w.active = int.Parse((string)((LuaTable)item.Value)["3"]);
            m_wings.Add(w.id, w);
        }
        foreach (var item in WingData.dataMap)
        {
            WingGridData d = new WingGridData();
            d.wingId       = item.Key;
            d.WingName     = LanguageData.GetContent(item.Value.name);
            d.WingDescripe = LanguageData.GetContent(item.Value.descrip);
            d.WingIconName = IconData.GetIconPath(item.Value.icon);
            if (m_wings.ContainsKey(item.Key))
            {
                d.WingCurExp   = m_wings[item.Key].exp;
                d.WingStarNum  = 3;
                d.WingTotalExp = item.Value.GetLevelData(m_wings[item.Key].level).nextLevelExp;
                d.IsHave       = true;
                if (item.Value.type == 1)
                {
                    d.WingStatus = "";
                }
                else
                {
                    if (m_wings[item.Key].active == 1)
                    {
                        d.WingStatus = LanguageData.GetContent(26829);
                        d.IsActive   = true;
                    }
                    else
                    {
                        d.WingStatus = LanguageData.GetContent(26828);
                        d.IsActive   = false;
                    }
                }
                d.WingPrice = "";
            }
            else
            {
                d.WingPrice    = "";
                d.WingStarNum  = 0;
                d.WingCurExp   = 0;
                d.WingTotalExp = 0;
                if (item.Value.type == 1)
                {
                    d.WingStatus = LanguageData.GetContent(26827);
                    d.WingPrice  = "" + item.Value.price;
                }
                else
                {
                    d.WingStatus = LanguageData.GetContent(26827);
                }
                d.IsHave   = false;
                d.IsActive = false;
                d.IsUsing  = false;
            }
            if (item.Value.type == 1)
            {
                if (d.wingId == dressed)
                {
                    d.IsUsing = d.IsHave;
                }
                d.IsActive = d.IsHave;
                m_common.Add(d);
            }
            else
            {
                d.IsHave  = true;
                d.IsUsing = true;
                m_magic.Add(d);
            }
            datas.Add(d);
        }
        m_grids = datas;
        CommonWing();
        WingUILogicManager.Instance.SetGold("" + m_self.gold);
        WingUILogicManager.Instance.SetDiamond("" + m_self.diamond);
        UpdateProperty();
        if (opened)
        {
            UpdateUpgradeContent();
        }
    }
示例#3
0
    private void OpenTip(int idx)
    {
        WingGridData d = m_grids[idx];

        if (page == 0)
        {
            d = m_common[idx];
        }
        else if (page == 1)
        {
            d = m_magic[idx];
        }
        m_self.PreviewWing(d.wingId);
        WingData wd = WingData.dataMap.Get(d.wingId);

        tipData = wd;
        WingLevelData wld  = wd.GetLevelData(1);
        WingLevelData wnld = wd.GetLevelData(2);

        if (m_wings.ContainsKey(wd.id))
        {
            wld  = wd.GetLevelData(m_wings[wd.id].level);
            wnld = wd.GetLevelData(m_wings[wd.id].level + 1);
        }
        if (m_wings.ContainsKey(d.wingId))
        {
            WingUIViewManager.Instance.ShowTipUpgradeBtn(wd.type == 1);
            if (wd.type == 1)
            {
                WingUIViewManager.Instance.ShowTipBuyBtn(d.wingId != dressed);
            }
            else
            {
                WingUIViewManager.Instance.ShowTipBuyBtn(d.wingId != dressed && d.IsActive);
            }
            WingUIViewManager.Instance.SetBuyText(LanguageData.GetContent(47281));
        }
        else
        {
            WingUIViewManager.Instance.ShowTipUpgradeBtn(false);
            WingUIViewManager.Instance.ShowTipBuyBtn(false); //wd.type == 1);
            WingUIViewManager.Instance.SetBuyText(LanguageData.GetContent(1026));
        }
        WingUIViewManager.Instance.SetWingTipTitle(LanguageData.GetContent(wd.name));
        List <string>      attrs     = wld.GetPropertEffect();
        PropertyEffectData a         = wld.GetProperEffectData();
        List <string>      nextAttrs = null;

        if (wnld != null)
        {
            nextAttrs = wnld.GetPropertEffect();
        }
        for (int i = 0; i < attrs.Count; i++)
        {
            WingUIViewManager.Instance.SetWingTipAttrDescripe("", i);
            WingUIViewManager.Instance.SetWingTipCurAttr(attrs[i], i);
            if (nextAttrs != null)
            {
                WingUIViewManager.Instance.SetWingTipNextAttr(nextAttrs[i], i);
            }
            else
            {
                WingUIViewManager.Instance.SetWingTipNextAttr("", i);
            }
        }
    }
示例#4
0
 public void UpdateWing(LuaTable wings)
 {
     List<WingGridData> datas = new List<WingGridData>();
     m_wings.Clear();
     m_grids.Clear();
     m_magic.Clear();
     m_common.Clear();
     int dressed = int.Parse((string)wings["1"]);
     this.dressed = dressed;
     foreach (var item in (LuaTable)wings["2"])
     {
         Wing w = new Wing();
         w.id = int.Parse(item.Key);
         w.level = int.Parse((string)((LuaTable)item.Value)["1"]);
         w.exp = int.Parse((string)((LuaTable)item.Value)["2"]);
         w.active = int.Parse((string)((LuaTable)item.Value)["3"]);
         m_wings.Add(w.id, w);
     }
     foreach (var item in WingData.dataMap)
     {
         WingGridData d = new WingGridData();
         d.wingId = item.Key;
         d.WingName = LanguageData.GetContent(item.Value.name);
         d.WingDescripe = LanguageData.GetContent(item.Value.descrip);
         d.WingIconName = IconData.GetIconPath(item.Value.icon);
         if (m_wings.ContainsKey(item.Key))
         {
             d.WingCurExp = m_wings[item.Key].exp;
             d.WingStarNum = 3;
             d.WingTotalExp = item.Value.GetLevelData(m_wings[item.Key].level).nextLevelExp;
             d.IsHave = true;
             if (item.Value.type == 1)
             {
                 d.WingStatus = "";
             }
             else
             {
                 if (m_wings[item.Key].active == 1)
                 {
                     d.WingStatus = LanguageData.GetContent(26829);
                     d.IsActive = true;
                 }
                 else
                 {
                     d.WingStatus = LanguageData.GetContent(26828);
                     d.IsActive = false;
                 }
             }
             d.WingPrice = "";
         }
         else
         {
             d.WingPrice = "";
             d.WingStarNum = 0;
             d.WingCurExp = 0;
             d.WingTotalExp = 0;
             if (item.Value.type == 1)
             {
                 d.WingStatus = LanguageData.GetContent(26827);
                 d.WingPrice = "" + item.Value.price;
             }
             else
             {
                 d.WingStatus = LanguageData.GetContent(26827);
             }
             d.IsHave = false;
             d.IsActive = false;
             d.IsUsing = false;
         }
         if (item.Value.type == 1)
         {
             if (d.wingId == dressed)
             {
                 d.IsUsing = d.IsHave;
             }
             d.IsActive = d.IsHave;
             m_common.Add(d);
         }
         else
         {
             d.IsHave = true;
             d.IsUsing = true;
             m_magic.Add(d);
         }
         datas.Add(d);
     }
     m_grids = datas;
     CommonWing();
     WingUILogicManager.Instance.SetGold("" + m_self.gold);
     WingUILogicManager.Instance.SetDiamond("" + m_self.diamond);
     UpdateProperty();
     if(opened)
         UpdateUpgradeContent();
 }