using UnityEngine; using System; using UnityEngine.UI; using System.Collections; using Games.Item; using GCGame.Table; using GCGame; using Games.GlobeDefine; public class GuildMemberItem : UIItemSelect { public Image professionIcon; public Text Name; public Text OnlineState; public Text Level; public Text Place; public Text Contribute; public Text MatchTimes; GuildMember m_GuildMember; public override void Show(Hashtable hash) { m_GuildMember = hash["InitObj"] as GuildMember; if (m_GuildMember == null) return; string spriteName = Utils.GetProfessionSpriteName(m_GuildMember.Profession); LoadAssetBundle.Instance.SetImageSprite(professionIcon, spriteName); Name.text = m_GuildMember.MemberName; Level.text = m_GuildMember.Level.ToString(); if (Guild.GuildJobName.ContainsKey(m_GuildMember.Job)) Place.text = StrDictionary.GetClientDictionaryString(Guild.GuildJobName[m_GuildMember.Job]); Contribute.text = string.Format("{0}/{1}/{2}", m_GuildMember.Contribute, m_GuildMember.CurrWeekContribute, m_GuildMember.HistoryContribute); MatchTimes.text = m_GuildMember.WarTimes.ToString(); professionIcon.material = (m_GuildMember.State == 0 ? CommonUtility.LoadSharedMaterial(GlobeVar.grayMaterialName) : null); var timeSpan = TimeSpan.FromTicks((long)(GlobalData.ServerAnsiTime - m_GuildMember.LastLogout) * 10000000L); if (m_GuildMember.State == 1) { OnlineState.text = StrDictionary.GetClientDictionaryString("#{2866}"); } else if (timeSpan.TotalHours <= 72) { OnlineState.text = StrDictionary.GetClientDictionaryString("#{25231}", (int)timeSpan.TotalHours + 1); } else if(timeSpan.Days < 30) { OnlineState.text = StrDictionary.GetClientDictionaryString("#{25232}", timeSpan.Days + 1); } else { OnlineState.text = StrDictionary.GetClientDictionaryString("#{25233}"); } base.Show(); } public override void Selected() { base.Selected(); if(m_GuildMember.Guid != Singleton.Instance.MainPlayer.GUID) { PlayerTooltipsLogic.ShowPlayerTooltip(m_GuildMember.Guid, m_GuildMember.MemberName, Utils.GetProfessionSpriteName((int)m_GuildMember.Profession), m_GuildMember.Level, -1,m_GuildMember.ComBatVal, Vector3.zero); //PopMenuLogic.ShowMenu("GuildMemberPopMenu", gameObject, m_GuildMember.Guid, m_GuildMember.MemberName); } } public override void Refresh() { base.Refresh(); if (Guild.GuildJobName.ContainsKey(m_GuildMember.Job)) Place.text = StrDictionary.GetClientDictionaryString(Guild.GuildJobName[m_GuildMember.Job]); } }