using UnityEngine; using UnityEngine.UI; using System.Collections; using Games.GlobeDefine; using GCGame.Table; public class TeamInfoRequestItem : UIItemSelect { #region public Image _MemberProIcon; public UICameraTexture _MemberModelView; public Text _MemberLevel; public Text _MemberName; public Text _MemberInfo1; public Text _MemberInfo2; private TeamMember _TeamInfo; private GameObject _MemberModel; #endregion public override void Show(Hashtable hash) { base.Show(); var teamInfo = (TeamMember)hash["InitObj"]; InitTeamInfo(teamInfo); } public override void Refresh() { base.Refresh(); InitTeamInfo(_TeamInfo); } private void InitTeamInfo(TeamMember teamInfo) { if (teamInfo == null || teamInfo.Guid == GlobeVar.INVALID_GUID) { _MemberModelView.gameObject.SetActive(false); _MemberProIcon.gameObject.SetActive(false); _MemberProIcon.transform.parent.gameObject.SetActive(false); _MemberLevel.gameObject.SetActive(false); _MemberName.gameObject.SetActive(false); _MemberInfo1.gameObject.SetActive(false); _MemberInfo2.gameObject.SetActive(false); return; } _MemberModelView.gameObject.SetActive(true); _MemberProIcon.gameObject.SetActive(true); _MemberProIcon.transform.parent.gameObject.SetActive(true); _MemberLevel.gameObject.SetActive(true); _MemberName.gameObject.SetActive(true); _MemberInfo1.gameObject.SetActive(false); _MemberInfo2.gameObject.SetActive(false); _TeamInfo = teamInfo; LoadAssetBundle.Instance.SetImageSprite(_MemberProIcon, GetProIcon(_TeamInfo.Profession)); _MemberLevel.text = StrDictionary.GetClientDictionaryString("#{1738}", _TeamInfo.Level); _MemberName.text = _TeamInfo.MemberName; _MemberInfo1.text = StrDictionary.GetClientDictionaryString("#{1064}", _TeamInfo.CombatNum); _MemberInfo2.text = ""; ShowModel(); } public string GetProIcon(int pro) { switch ((CharacterDefine.PROFESSION)pro) { case CharacterDefine.PROFESSION.TIANJI: return "ProTianji"; case CharacterDefine.PROFESSION.LIUSHAN: return "ProLiushan"; case CharacterDefine.PROFESSION.SHUSHAN: return "ProShushan"; case CharacterDefine.PROFESSION.XUANNV: return "ProXuannv"; } return ""; } private void ShowModel() { _MemberModelView.InitModel(_TeamInfo.Profession, GlobalData.GetCharModelId(_TeamInfo.Profession, _TeamInfo.ModelVisual), _TeamInfo.WeaponData, _TeamInfo.WingAurId, _TeamInfo.WeaponGemEffect3, _TeamInfo.EffectAuraId); } #region act public void OnBtnRequestOK() { CG_JOIN_TEAM_REQUEST_RESULT pak = (CG_JOIN_TEAM_REQUEST_RESULT)PacketDistributed.CreatePacket(MessageID.PACKET_CG_JOIN_TEAM_REQUEST_RESULT); pak.RequesterGuid = _TeamInfo.Guid; pak.Result = 1; pak.SendPacket(); RemoveRequest(); } public void OnBtnRequestCancel() { CG_JOIN_TEAM_REQUEST_RESULT pak = (CG_JOIN_TEAM_REQUEST_RESULT)PacketDistributed.CreatePacket(MessageID.PACKET_CG_JOIN_TEAM_REQUEST_RESULT); pak.RequesterGuid = _TeamInfo.Guid; pak.Result = 0; pak.SendPacket(); RemoveRequest(); } public void RemoveRequest() { GameManager.gameManager.PlayerDataPool.TeamInfo.RequestList.Remove(_TeamInfo); if (TeamInfoWindow.Instance() != null) TeamInfoWindow.Instance().UpdateRequests(); } #endregion }