Example #1
0
    public static int CompareGuildMember(WeihuaGames.ClientClass.GuildMemberInfo m1, WeihuaGames.ClientClass.GuildMemberInfo m2)
    {
        if (m1.PlayerId == m2.PlayerId)
        {
            return(0);
        }

        if (m1.PlayerId == SysLocalDataBase.Inst.LocalPlayer.PlayerId)
        {
            return(-1);
        }
        else if (m2.PlayerId == SysLocalDataBase.Inst.LocalPlayer.PlayerId)
        {
            return(1);
        }

        int o1 = m1.Online ? 0 : 1;
        int o2 = m2.Online ? 0 : 1;

        if (o1 != o2)
        {
            return(o1 - o2);
        }
        else
        {
            //if (m1.RoleId <= 0)
            //    m1.RoleId = ConfigDatabase.DefaultCfg.GuildConfig.GetRoleByRoleType(_RoleType.RoleType_Member).Id;

            //if (m2.RoleId <= 0)
            //    m2.RoleId = ConfigDatabase.DefaultCfg.GuildConfig.GetRoleByRoleType(_RoleType.RoleType_Member).Id;

            if (m1.RoleId != m2.RoleId)
            {
                var r1 = ConfigDatabase.DefaultCfg.GuildConfig.GetRoleByRoleId(m1.RoleId);
                var r2 = ConfigDatabase.DefaultCfg.GuildConfig.GetRoleByRoleId(m2.RoleId);

                return(r1.SortIndex - r2.SortIndex);
            }
            else if (m1.TotalContribution != m2.TotalContribution)
            {
                return(m2.TotalContribution - m1.TotalContribution);
            }
            else
            {
                if (m1.Online)
                {
                    return((int)m1.JoinTime - (int)m2.JoinTime);
                }
                else
                {
                    return((int)m2.OfflineTime - (int)m1.OfflineTime);
                }
            }
        }
    }
Example #2
0
    public static int CompaceGuildInfoRecord(WeihuaGames.ClientClass.GuildMemberInfo m1, WeihuaGames.ClientClass.GuildMemberInfo m2)
    {
        //if (m1.RoleId <= 0)
        //    m1.RoleId = ConfigDatabase.DefaultCfg.GuildConfig.GetRoleByRoleType(_RoleType.RoleType_Member).Id;

        //if (m2.RoleId <= 0)
        //    m2.RoleId = ConfigDatabase.DefaultCfg.GuildConfig.GetRoleByRoleType(_RoleType.RoleType_Member).Id;

        if (m1.RoleId != m2.RoleId)
        {
            var r1 = ConfigDatabase.DefaultCfg.GuildConfig.GetRoleByRoleId(m1.RoleId);
            var r2 = ConfigDatabase.DefaultCfg.GuildConfig.GetRoleByRoleId(m2.RoleId);

            return(r1.SortIndex - r2.SortIndex);
        }
        else if (m1.TotalContribution != m2.TotalContribution)
        {
            return(m2.TotalContribution - m1.TotalContribution);
        }
        else
        {
            return((int)m1.JoinTime - (int)m2.JoinTime);
        }
    }