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); }); } }
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(); } }
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); } } }
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(); }