public static int DescendingMetricSquad(SquadRoster lhs, SquadRoster rhs)
{
if (lhs == null) {
return ((rhs == null) ? 0 : -1);
} else if (rhs == null) {
return ((lhs == null) ? 0 : 1);
}
// Dividing by Clan Tag takes precedence, only when both are zero is the metric used
if (lhs.ClanTagCount > 0 || rhs.ClanTagCount > 0) {
if (lhs.ClanTagCount < rhs.ClanTagCount) { return 1; }
if (lhs.ClanTagCount > rhs.ClanTagCount) { return -1; }
return 0;
}
if (lhs.Metric < rhs.Metric) return 1;
if (lhs.Metric > rhs.Metric) return -1;
return 0;
}