コード例 #1
0
        // Token: 0x06000ADD RID: 2781 RVA: 0x000465B0 File Offset: 0x000447B0
        public static int ComparePosition(ClanMemberView a, ClanMemberView b)
        {
            int num  = 0;
            int num2 = 0;

            if (a.Position == GroupPosition.Leader)
            {
                num = 1;
            }
            else if (a.Position == GroupPosition.Officer)
            {
                num = 2;
            }
            else if (a.Position == GroupPosition.Member)
            {
                num = 3;
            }
            if (b.Position == GroupPosition.Leader)
            {
                num2 = 1;
            }
            else if (b.Position == GroupPosition.Officer)
            {
                num2 = 2;
            }
            else if (b.Position == GroupPosition.Member)
            {
                num2 = 3;
            }
            return((num != num2) ? ((num <= num2) ? -1 : 1) : 0);
        }
コード例 #2
0
 // Token: 0x06000A78 RID: 2680 RVA: 0x000437E4 File Offset: 0x000419E4
 public CommUser(ClanMemberView member)
 {
     if (member != null)
     {
         this.IsClanMember = true;
         this.Cmid         = member.Cmid;
         this.AccessLevel  = MemberAccessLevel.Default;
         this.Name         = ((!string.IsNullOrEmpty(PlayerDataManager.ClanTag)) ? ("[" + PlayerDataManager.ClanTag + "] " + member.Name) : member.Name);
     }
 }
コード例 #3
0
        // Token: 0x06001042 RID: 4162 RVA: 0x00012C48 File Offset: 0x00010E48
        public static ClanMemberView Deserialize(Stream bytes)
        {
            int            num            = Int32Proxy.Deserialize(bytes);
            ClanMemberView clanMemberView = new ClanMemberView();

            clanMemberView.Cmid        = Int32Proxy.Deserialize(bytes);
            clanMemberView.JoiningDate = DateTimeProxy.Deserialize(bytes);
            clanMemberView.Lastlogin   = DateTimeProxy.Deserialize(bytes);
            if ((num & 1) != 0)
            {
                clanMemberView.Name = StringProxy.Deserialize(bytes);
            }
            clanMemberView.Position = EnumProxy <GroupPosition> .Deserialize(bytes);

            return(clanMemberView);
        }
コード例 #4
0
        // Token: 0x06001041 RID: 4161 RVA: 0x00012BB0 File Offset: 0x00010DB0
        public static void Serialize(Stream stream, ClanMemberView instance)
        {
            int num = 0;

            using (MemoryStream memoryStream = new MemoryStream())
            {
                Int32Proxy.Serialize(memoryStream, instance.Cmid);
                DateTimeProxy.Serialize(memoryStream, instance.JoiningDate);
                DateTimeProxy.Serialize(memoryStream, instance.Lastlogin);
                if (instance.Name != null)
                {
                    StringProxy.Serialize(memoryStream, instance.Name);
                }
                else
                {
                    num |= 1;
                }
                EnumProxy <GroupPosition> .Serialize(memoryStream, instance.Position);

                Int32Proxy.Serialize(stream, ~num);
                memoryStream.WriteTo(stream);
            }
        }
コード例 #5
0
 public static bool TryGetClanMember(int cmid, out ClanMemberView view)
 {
     return(Instance._clanMembers.TryGetValue(cmid, out view) && view != null);
 }
コード例 #6
0
 // Token: 0x06000ADE RID: 2782 RVA: 0x00008B9E File Offset: 0x00006D9E
 public static int CompareName(ClanMemberView a, ClanMemberView b)
 {
     return(string.Compare(a.Name, b.Name));
 }
コード例 #7
0
        // Token: 0x06000ADC RID: 2780 RVA: 0x00046588 File Offset: 0x00044788
        public static int CompareClanMembers(ClanMemberView a, ClanMemberView b)
        {
            int num = ClanPageGUI.CompareClanFunctionList.ComparePosition(a, b);

            return((num == 0) ? ClanPageGUI.CompareClanFunctionList.CompareName(a, b) : num);
        }
コード例 #8
0
    // Token: 0x06000ACF RID: 2767 RVA: 0x00045528 File Offset: 0x00043728
    private void DrawClanMembers(Rect rect, ClanMemberView member)
    {
        GUIStyle style = (!rect.Contains(Event.current.mousePosition)) ? BlueStonez.box_grey38 : BlueStonez.box_grey50;

        GUI.BeginGroup(rect, style);
        CommUser commUser;

        if (Singleton <ChatManager> .Instance.TryGetClanUsers(member.Cmid, out commUser))
        {
            GUI.DrawTexture(new Rect(5f, 12f, 14f, 20f), ChatManager.GetPresenceIcon(commUser.PresenceIndex));
        }
        int num = 28;

        GUI.Label(new Rect((float)num, 12f, 200f, 25f), member.Name, BlueStonez.label_interparkbold_13pt_left);
        num = 228;
        GUI.Label(new Rect((float)num, 20f, 70f, 25f), this.ConvertClanPosition(member.Position), BlueStonez.label_interparkmed_11pt_left);
        num = 298;
        GUI.Label(new Rect((float)num, 20f, 80f, 25f), member.JoiningDate.ToString("d"), BlueStonez.label_interparkmed_11pt_left);
        float num2 = rect.width - 20f;

        if (member.Cmid != PlayerDataManager.Cmid)
        {
            if (commUser != null && commUser.IsOnline)
            {
                this._onlineMemberCount++;
                if (GUITools.Button(new Rect(num2 - 120f, 4f, 100f, 20f), new GUIContent(LocalizedStrings.PrivateChat), BlueStonez.buttondark_medium))
                {
                    MenuPageManager.Instance.LoadPage(PageType.Chat, false);
                    Singleton <ChatManager> .Instance.CreatePrivateChat(member.Cmid);
                }
            }
            else
            {
                int    days = DateTime.Now.Subtract(member.Lastlogin).Days;
                string text = string.Format(LocalizedStrings.LastOnlineN, (days <= 1) ? ((days != 0) ? LocalizedStrings.Yesterday : LocalizedStrings.Today) : (days.ToString() + " " + LocalizedStrings.DaysAgo));
                GUI.Label(new Rect(num2 - 120f, 4f, 100f, 25f), text, BlueStonez.label_interparkmed_11pt_left);
            }
            if (GUITools.Button(new Rect(num2 - 120f, 28f, 100f, 20f), new GUIContent(LocalizedStrings.SendMessage), BlueStonez.buttondark_medium))
            {
                SendMessagePanelGUI sendMessagePanelGUI = PanelManager.Instance.OpenPanel(PanelType.SendMessage) as SendMessagePanelGUI;
                if (sendMessagePanelGUI)
                {
                    sendMessagePanelGUI.SelectReceiver(member.Cmid, member.Name);
                }
            }
        }
        if (this.HasHigherPermissionThan(member.Position))
        {
            if (GUITools.Button(new Rect(num2 - 10f, 14f, 20f, 20f), new GUIContent("x"), BlueStonez.buttondark_medium))
            {
                int    removeFromClanCmid = member.Cmid;
                string text2 = string.Format(LocalizedStrings.RemoveNFromClanN, member.Name, PlayerDataManager.ClanName) + "\n\n" + LocalizedStrings.RemoveMemberWarningMsg;
                PopupSystem.ShowMessage(LocalizedStrings.RemoveMember, text2, PopupSystem.AlertType.OKCancel, delegate()
                {
                    Singleton <ClanDataManager> .Instance.RemoveMemberFromClan(removeFromClanCmid);
                }, "OK", null, LocalizedStrings.Cancel, PopupSystem.ActionType.Negative);
            }
            num2 -= 160f;
        }
        num = 378;
        if (Singleton <PlayerDataManager> .Instance.RankInClan == GroupPosition.Leader && this.HasHigherPermissionThan(member.Position))
        {
            if (GUITools.Button(new Rect((float)num, 4f, 130f, 20f), new GUIContent(LocalizedStrings.TransferLeadership), BlueStonez.buttondark_medium))
            {
                int    newLeader = member.Cmid;
                string text3     = string.Format(LocalizedStrings.TransferClanLeaderhsipToN, member.Name) + "\n\n" + LocalizedStrings.TransferClanWarningMsg;
                PopupSystem.ShowMessage(LocalizedStrings.TransferLeadership, text3, PopupSystem.AlertType.OKCancel, delegate()
                {
                    Singleton <ClanDataManager> .Instance.TransferOwnershipTo(newLeader);
                }, LocalizedStrings.TransferCaps, null, LocalizedStrings.Cancel, PopupSystem.ActionType.Negative);
            }
            num2 -= 160f;
        }
        if (Singleton <PlayerDataManager> .Instance.RankInClan == GroupPosition.Leader && this.HasHigherPermissionThan(member.Position))
        {
            if (member.Position == GroupPosition.Member && GUITools.Button(new Rect((float)num, 28f, 130f, 20f), new GUIContent(LocalizedStrings.PromoteMember), BlueStonez.buttondark_medium))
            {
                int memberCmid = member.Cmid;
                PopupSystem.ShowMessage(LocalizedStrings.PromoteMember, string.Format(LocalizedStrings.ThisWillChangeNPositionToN, member.Name, LocalizedStrings.Officer), PopupSystem.AlertType.OKCancel, delegate()
                {
                    Singleton <ClanDataManager> .Instance.UpdateMemberTo(memberCmid, GroupPosition.Officer);
                }, LocalizedStrings.PromoteCaps, null, LocalizedStrings.Cancel, PopupSystem.ActionType.Positive);
            }
            else if (member.Position == GroupPosition.Officer && GUITools.Button(new Rect((float)num, 28f, 130f, 20f), new GUIContent(LocalizedStrings.DemoteMember), BlueStonez.buttondark_medium))
            {
                int memberCmid = member.Cmid;
                PopupSystem.ShowMessage(LocalizedStrings.DemoteMember, string.Format(LocalizedStrings.ThisWillChangeNPositionToN, member.Name, LocalizedStrings.Member), PopupSystem.AlertType.OKCancel, delegate()
                {
                    Singleton <ClanDataManager> .Instance.UpdateMemberTo(memberCmid, GroupPosition.Member);
                }, LocalizedStrings.DemoteCaps, null, LocalizedStrings.Cancel, PopupSystem.ActionType.Negative);
            }
            num2 -= 160f;
        }
        GUI.Label(new Rect(1f, rect.height - 2f, rect.width - 2f, 1f), string.Empty, BlueStonez.horizontal_line_grey95);
        GUI.EndGroup();
    }