private void RefreshPlayerInfo(IXUIListItem item, BeastData beast) { //DataBeastlist dataBeast = GameData<DataBeastlist>.dataMap[beast.BeastTypeId]; DataBeastlist dataBeast = null; GameData <DataBeastlist> .dataMap.TryGetValue(beast.BeastTypeId, out dataBeast); IXUISprite icon = item.GetUIObject("Sprite_Icon") as IXUISprite; if (dataBeast != null) { //如果是自己的阵营,就显示头像。地方就显示随机头像 if (beast.CampType == Singleton <PlayerRole> .singleton.CampType) { icon.SetSprite(dataBeast.IconFile, UIManager.singleton.GetAtlasName(EnumAtlasType.Beast, dataBeast.IconFile)); } else { //icon.SetSprite("Window"); icon.SetSprite(dataBeast.IconFile, UIManager.singleton.GetAtlasName(EnumAtlasType.Beast, dataBeast.IconFile)); } } else { if (beast.BeastTypeId == this.m_unRandomBeastID) { icon.SetSprite("9"); } } bool visible = Singleton <RoomManager> .singleton.IsObserver || Singleton <PlayerRole> .singleton.CampType == beast.CampType; IXUIList equipList = item.GetUIObject("List_Equip") as IXUIList; if (equipList != null) { } else { XLog.Log.Error("null == uiListEquip"); } this.RefreshItemEnable(item, beast.Id); IXUIObject uiObject = item.GetUIObject("Texture_Shadow"); if (uiObject != null) { uiObject.SetVisible(false); } item.Id = beast.Id; }
/// <summary> /// 显示神兽信息界面 /// </summary> /// <param name="item"></param> /// <param name="playerData"></param> /// <param name="beastData"></param> private void ShowBeastInfo(IXUIListItem item, PlayerData playerData, BeastData beastData) { if (item != null && playerData != null && beastData != null) { item.SetText("NickNameAndLevel/Label_Player_Name", playerData.Name); item.SetText("NickNameAndLevel/Label_Player_Level", "LV" + playerData.Level); item.SetSprite("Icon/Sprite_Player_Icon", playerData.Icon); DataBeastlist beastList = GameData <DataBeastlist> .dataMap[beastData.BeastTypeId]; if (beastList != null) { //取得皮肤数据 DataSuit suit = null; GameData <DataSuit> .dataMap.TryGetValue(beastData.BeastTypeId, out suit); //神兽名字 string beastName = string.IsNullOrEmpty(beastList.NickName) ? "" : ("-" + beastList.NickName); //神兽皮肤名字 string beastNickname = (suit == null) ? beastList.Name : suit.Name; item.SetText("Label_Beast_Name", string.Format("{0}{1}", beastNickname, beastName)); //设置神兽皮肤 IXUIPicture beastSkin = item.GetUIObject("Picture_Beast_Skin") as IXUIPicture; if (beastSkin != null) { beastSkin.SetVisible(true); beastSkin.SetTexture(string.Format("Texture/Beast/{0}", (suit == null) ? beastList.ModelFile : suit.PicName)); } } else { item.SetVisible(false); } item.Id = playerData.PlayerId; item.SetVisible(true); } }
/// <summary> /// 我方和敌方的选择神兽列表刷新 /// </summary> /// <param name="uiList"></param> /// <param name="listPlayerData"></param> /// <param name="eCampType"></param> private void SetPlayerInfoToList(IXUIList uiList, List <PlayerData> listPlayerData, ECampType eCampType) { if (uiList != null) { for (int i = 0; i < uiList.Count; i++) { IXUIListItem item = uiList.GetItemByIndex(i); if (item != null) { item.Clear(); IXUIList equip = item.GetUIObject("List_Equip") as IXUIList; if (equip != null) { for (int j = 0; j < equip.Count; j++) { IXUIListItem equipItem = equip.GetItemByIndex(j); if (equipItem != null) { equipItem.Clear();//清空装备icon } } } IXUIObject uiObject = item.GetUIObject("Texture_Shadow") as IXUIObject; if (uiObject != null) { uiObject.SetVisible(true); } item.SetText("Label_Sequence", ""); } } int num = 0; foreach (var playerData in listPlayerData) { foreach (var beastData in playerData.Beasts) { IXUIListItem item = (num >= uiList.Count) ? null : uiList.GetItemByIndex(num); if (item != null) { this.RefreshPlayerInfo(item, playerData, beastData, eCampType); } num++; } } Debug.Log("Beast num=" + num); } }
/// <summary> /// 刷新神兽选择之后的状态 /// </summary> public void RefreshBeastSelectStatus() { if (base.uiBehaviour != null) { for (int i = 0; i < base.uiBehaviour.m_BeastList.Count; i++) { IXUIListItem item = base.uiBehaviour.m_BeastList.GetItemByIndex(i); if (item != null) { IXUISprite icon = item.GetUIObject("Icon") as IXUISprite; if (icon != null) { icon.Color = Color.white; } } } //循环遍历所有已经选择的英雄,设置icon为灰色 foreach (var current in this.m_dicRoleSelectBeastID) { if (this.m_unRandomBeastID != current.Value && this.m_lBeastIdCurrent != current.Value) { IXUIListItem item = base.uiBehaviour.m_BeastList.GetItemById((uint)current.Value); if (item != null && item.Index > 0) { IXUISprite icon = item.GetUIObject("Icon") as IXUISprite; if (icon != null) { icon.Color = UnityTools.GrayColor; } } } } //如果可以重复选择,就不设置为灰色 if (Singleton <RoomManager> .singleton.RepeatSelectBeastInAllCamp == 1) { foreach (var current in this.m_dicRoleSelectBeastID) { if (this.m_unRandomBeastID != current.Value && this.m_lBeastIdCurrent != current.Value) { IXUIListItem item = base.uiBehaviour.m_BeastList.GetItemById((uint)current.Value); if (item != null && item.Index > 0) { IXUISprite icon = item.GetUIObject("Icon") as IXUISprite; if (icon != null) { icon.Color = Color.white; } } } } } if (Singleton <RoomManager> .singleton.IsLadderMode() && Singleton <RoomManager> .singleton.EGamePhase == EGamePhase.GAME_PHASE_CHOOSING) { //开始协程刷新被ban的神兽头像icon颜色 } } }
/// <summary> /// 显示随机神兽的icon /// </summary> private void ShowRandomBeast() { this.m_log.Debug("ShowRandomBeast"); IXUIListItem item = base.uiBehaviour.m_BeastList.GetItemByIndex(0); if (item != null) { IXUISprite weekIcon = item.GetUIObject("Week") as IXUISprite; if (weekIcon != null) { weekIcon.SetVisible(false); } IXUISprite Icon = item.GetUIObject("Icon") as IXUISprite; if (Icon != null) { Icon.SetSprite("9"); item.Id = this.m_unRandomBeastID; item.TipParam = new TipParam { Tip = "随机选择一名您拥有的神兽,包括周免神兽" }; } } }
private void RefreshPlayerInfo(IXUIListItem uiListItem, PlayerData playerData, BeastData beast, ECampType eCampType) { if (beast != null) { this.SetSelectBeastId(beast.Id, beast.BeastTypeId); Debug.Log("Our BeastId:" + beast.Id); if (playerData != null && uiListItem != null) { uiListItem.Clear(); IXUILabel label = uiListItem.GetUIObject("Label_PlayerName") as IXUILabel; if (label != null) { label.SetText(playerData.Name); } if (Singleton <RoomManager> .singleton.MathMode != EnumMathMode.EnumMathMode_Story) { uiListItem.SetText("Label_Sequence", GetSequence(eCampType, uiListItem.Index).ToString()); } this.RefreshPlayerInfo(uiListItem, beast); } } }
private void ShowCampTypeEffect(IXUIListItem item) { if (item != null) { bool flag = true; BeastData beastData = Singleton <RoomManager> .singleton.GetBeastData(item.Id); if (beastData != null && beastData.BeastTypeId > -1 && beastData.IsSelected) { flag = false; } IXUISprite mask = item.GetUIObject("UnSelectMask") as IXUISprite; if (mask != null) { bool flag1 = item.Id > 0 && flag; if (flag1 && Singleton <RoomManager> .singleton.BeastSelectType == EGameBeastSelectType.GAME_BEAST_SELECT_TYPE_RANK && this.m_lBeastIdCurrent != item.Id) { flag1 = false; } mask.SetVisible(flag1); } else { Debug.Log("mask == null"); } if (item.Id == this.m_lBeastIdCurrent) { this.IsSelected = !flag; this.RefreshTip(item.Id); if (!flag && !Singleton <RoomManager> .singleton.IsObserver) { this.ShowSkinSelect(); } } } }