using UnityEngine; using UnityEngine.UI; using System.Collections; using Games.GlobeDefine; using GCGame.Table; public class TeamInfoMemberItem : UIItemBase { #region public GameObject _CapterIcon; public Image _MemberProIcon; public UICameraTexture _MemberModelView; public Text _MemberLevel; public Text _MemberName; public Text _MemberInfo1; public Text _MemberInfo2; public GameObject _NoneMemberImg; public GameObject _OfflineGO; private TeamMember _TeamInfo; //private GameObject _MemberModel; private int _PreProfession; private int _PreWeaponData; private int _PreWingAurId; private int _PreWeaponGemEffect3; private int _PreEffectAuraId; private int _PreModelVisual; public void OnEnable() { if (_TeamInfo != null && _TeamInfo.Guid != GlobeVar.INVALID_GUID) { ShowModel(); } } #endregion public override void Show(Hashtable hash) { base.Show(); } public void InitTeamInfo(TeamMember teamInfo) { if (teamInfo == null || teamInfo.Guid == GlobeVar.INVALID_GUID) { _NoneMemberImg.SetActive(true); _MemberModelView.gameObject.SetActive(false); _CapterIcon.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); _TeamInfo = null; _OfflineGO.SetActive(false); _MemberModelView.DestroyObj(); return; } _NoneMemberImg.SetActive(false); _MemberModelView.gameObject.SetActive(true); _CapterIcon.gameObject.SetActive(true); _MemberProIcon.gameObject.SetActive(true); _MemberProIcon.transform.parent.gameObject.SetActive(true); _MemberLevel.gameObject.SetActive(true); _MemberName.gameObject.SetActive(true); _MemberModelView.isPreview = true; if (_TeamInfo == null || teamInfo.Profession != _TeamInfo.Profession) { LoadAssetBundle.Instance.SetImageSprite(_MemberProIcon, GetProIcon(teamInfo.Profession)); } if (teamInfo.TeamJob == 0) { _CapterIcon.SetActive(true); } else { _CapterIcon.SetActive(false); } _MemberLevel.text = StrDictionary.GetClientDictionaryString("#{1738}", teamInfo.Level); _MemberName.text = teamInfo.MemberName; _MemberInfo1.text = StrDictionary.GetClientDictionaryString("#{1064}", teamInfo.CombatNum); _MemberInfo2.text = ""; if (_TeamInfo == null || _PreProfession != teamInfo.Profession || _PreWeaponData != teamInfo.WeaponData || _PreWingAurId != teamInfo.WingAurId || _PreWeaponGemEffect3 != teamInfo.WeaponGemEffect3 || _PreEffectAuraId != teamInfo.EffectAuraId || _PreModelVisual != teamInfo.ModelVisual ) { _PreProfession = teamInfo.Profession; _PreWeaponData = teamInfo.WeaponData; _PreWingAurId = teamInfo.WingAurId; _PreWeaponGemEffect3 = teamInfo.WeaponGemEffect3; _PreEffectAuraId = teamInfo.EffectAuraId; _PreModelVisual = teamInfo.ModelVisual; _TeamInfo = teamInfo; ShowModel(); } _TeamInfo = teamInfo; _OfflineGO.SetActive(!teamInfo.IsOnline); } 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 override void OnItemClick() { if (_TeamInfo != null && _TeamInfo.Guid != GlobeVar.INVALID_GUID) { PopMenuLogic.ShowMenu("TeamMemberPopMenu", gameObject, _TeamInfo.Guid, _TeamInfo.MemberName); } //else //{ // UIManager.ShowUI(UIInfo.TeamInvateRoot); //} } #endregion }