int SortGuildMemberPosition(NetData.GuildMemberInfo a, NetData.GuildMemberInfo b) { if (a.position < b.position) { return(-1); } return(1); }
int SortGuildMemberList(NetData.GuildMemberInfo a, NetData.GuildMemberInfo b) { if (a.Online > b.Online) { return(-1); } else if (b.Online > a.Online) { return(-1); } return(SortGuildMemberPosition(a, b)); //// 직책(낮은게더높은직책) //if (a.position < b.position) // return -1; //else if (b.position < a.position) // return 1; //return 0; }
//멤퍼관리 팝업 void SetMemberPopup(NetData.GuildMemberInfo member) { MemberAdminPopup.SetActive(true); EventDelegate.Set(MemberAdminPopup.transform.FindChild("forg").GetComponent <UIEventTrigger>().onClick, delegate() { MemberAdminPopup.SetActive(false); }); MemberAdminPopup.transform.FindChild("name").GetComponent <UILabel>().text = member.Name; //길마양도 UIButton master = MemberAdminPopup.transform.FindChild("Btn02").GetComponent <UIButton>(); master.isEnabled = _LowDataMgr.instance.GetLowdataGuildPositionInfo(MyInfo.Position).MasterEntrust == 1; EventDelegate.Set(master.onClick, delegate() { string popMsg = string.Format(_LowDataMgr.instance.GetStringCommon(1121), member.Name); uiMgr.AddPopup(_LowDataMgr.instance.GetStringCommon(141), popMsg, _LowDataMgr.instance.GetStringCommon(117), _LowDataMgr.instance.GetStringCommon(76), null , () => { NetworkClient.instance.SendPMsgGuildAppointGuildLeaderC(MyGuildId, member.Id); }, null, null); }); //부길마 UIButton subMaster = MemberAdminPopup.transform.FindChild("Btn03").GetComponent <UIButton>(); subMaster.isEnabled = _LowDataMgr.instance.GetLowdataGuildPositionInfo(MyInfo.Position).SubMasterEntrust == 1; if (member.position == 1) //길마는안댄다 { subMaster.isEnabled = false; } EventDelegate.Set(subMaster.onClick, delegate() { string popMsg = string.Format(_LowDataMgr.instance.GetStringCommon(1123), member.Name); uiMgr.AddPopup(_LowDataMgr.instance.GetStringCommon(141), popMsg, _LowDataMgr.instance.GetStringCommon(117), _LowDataMgr.instance.GetStringCommon(76), null , () => { NetworkClient.instance.SendPMsgGuildAppointPositionC(MyGuildId, member.Id, 2); }, null, null); }); //정예{ UIButton elite = MemberAdminPopup.transform.FindChild("Btn04").GetComponent <UIButton>(); elite.isEnabled = _LowDataMgr.instance.GetLowdataGuildPositionInfo(MyInfo.Position).EliteMember == 1; if (member.position == 1) //길마는안댄다 { elite.isEnabled = false; } EventDelegate.Set(elite.onClick, delegate() { string popMsg = string.Format(_LowDataMgr.instance.GetStringCommon(1156), member.Name); uiMgr.AddPopup(_LowDataMgr.instance.GetStringCommon(141), popMsg, _LowDataMgr.instance.GetStringCommon(117), _LowDataMgr.instance.GetStringCommon(76), null , () => { NetworkClient.instance.SendPMsgGuildAppointPositionC(MyGuildId, member.Id, 3); }, null, null); }); //길원 UIButton normal = MemberAdminPopup.transform.FindChild("Btn05").GetComponent <UIButton>(); normal.isEnabled = _LowDataMgr.instance.GetLowdataGuildPositionInfo(MyInfo.Position).NormalMember == 1; if (member.position == 1) //길마는안댄다 { normal.isEnabled = false; } EventDelegate.Set(normal.onClick, delegate() { string popMsg = string.Format(_LowDataMgr.instance.GetStringCommon(1125), member.Name); uiMgr.AddPopup(_LowDataMgr.instance.GetStringCommon(141), popMsg, _LowDataMgr.instance.GetStringCommon(117), _LowDataMgr.instance.GetStringCommon(76), null , () => { NetworkClient.instance.SendPMsgGuildAppointPositionC(MyGuildId, member.Id, 4); }, null, null); }); //추방 UIButton outMember = MemberAdminPopup.transform.FindChild("Btn06").GetComponent <UIButton>(); outMember.isEnabled = _LowDataMgr.instance.GetLowdataGuildPositionInfo(MyInfo.Position).MemberLeave == 1; if (member.position == 1) //길마는안댄다 { outMember.isEnabled = false; } EventDelegate.Set(outMember.onClick, delegate() { string popMsg = string.Format(_LowDataMgr.instance.GetStringCommon(1130), member.Name); uiMgr.AddPopup(_LowDataMgr.instance.GetStringCommon(141), popMsg, _LowDataMgr.instance.GetStringCommon(117), _LowDataMgr.instance.GetStringCommon(76), null , () => { NetworkClient.instance.SendPMsgGuildKitkMemberC(MyGuildId, member.Id); }, null, null); }); }
//길드멤버뷰 public void SetGuildMemberList(List <NetData.GuildMemberInfo> memberList) { MyGuildMemberList = memberList; //접속중인길드원 -> 직책 순으로 소팅해줌 MyGuildMemberList.Sort(SortGuildMemberList); for (int i = 0; i < MemberGrid.transform.childCount; i++) { if (i >= MyGuildMemberList.Count) { MemberGrid.transform.GetChild(i).gameObject.SetActive(false); continue; } GameObject slotGo = MemberGrid.transform.GetChild(i).gameObject; Transform slotTf = slotGo.transform; slotGo.SetActive(true); NetData.GuildMemberInfo rcvData = MyGuildMemberList[i]; UILabel name = slotTf.FindChild("name").GetComponent <UILabel>(); name.text = rcvData.Name; UISprite Faces = slotGo.transform.FindChild("Face").GetComponent <UISprite>(); Character.CharacterInfo charLowData = _LowDataMgr.instance.GetCharcterData(rcvData.Type); Faces.spriteName = charLowData.PortraitId; UILabel lv = slotTf.FindChild("level").GetComponent <UILabel>(); lv.text = rcvData.Lv.ToString(); UILabel Attack = slotTf.FindChild("strength").GetComponent <UILabel>(); Attack.text = rcvData.Power.ToString(); UILabel position = slotTf.FindChild("rank").GetComponent <UILabel>(); Guild.GuildPositionInfo myPosition = _LowDataMgr.instance.GetLowdataGuildPositionInfo(rcvData.position); position.text = _LowDataMgr.instance.GetStringCommon(myPosition.name); UILabel contri = slotTf.FindChild("point").GetComponent <UILabel>(); contri.text = rcvData.Contribution.ToString(); UILabel access = slotTf.FindChild("access").GetComponent <UILabel>(); if (rcvData.Online == 1 /*rcvData.LogountTime < rcvData.LoginTime*/)//0오프 1온라인 { //온라인 access.text = _LowDataMgr.instance.GetStringCommon(1116); } else { //오프 //이거좀더보기 if (rcvData.LogountTime != 0) { System.DateTime logout = System.DateTime.ParseExact(rcvData.LogountTime.ToString(), "yyyyMMddHHmmss", null); System.TimeSpan lastAccess = System.DateTime.Now - logout; // 하루지남 if (lastAccess.Days > 0) { access.text = string.Format(_LowDataMgr.instance.GetStringCommon(1119), lastAccess.Days); } else if (lastAccess.Hours > 0) { //24시간미만 access.text = string.Format(_LowDataMgr.instance.GetStringCommon(1118), lastAccess.Hours); } else { //60분미만 access.text = string.Format(_LowDataMgr.instance.GetStringCommon(1117), lastAccess.Minutes); } } else { //일단임시로.... access.text = string.Format(_LowDataMgr.instance.GetStringCommon(1117), 1); } } UIButton Admin = slotTf.FindChild("admin").GetComponent <UIButton>(); Admin.isEnabled = rcvData.Id != NetData.instance.GetUserInfo()._charUUID; //관리탭 EventDelegate.Set(Admin.onClick, delegate() { MyFriendList.Clear(); MySendList.Clear(); MemberAdminPopup.transform.FindChild("Btn01").GetComponent <UIButton>().isEnabled = true; NetworkClient.instance.SendPMsgFriendQueryListC(); selectMember = rcvData; SetMemberPopup(rcvData); }); } MemberGrid.Reposition(); MemberScroll.enabled = MyGuildMemberList.Count > 4; }