[ioquake3] 74/136: Make Team Arena server list sub-sort clients by max clients

Simon McVittie smcv at debian.org
Thu Jun 15 09:09:11 UTC 2017


This is an automated email from the git hooks/post-receive script.

smcv pushed a commit to branch debian/master
in repository ioquake3.

commit 0b853a659a2c76023389f88ae40938dd5e9f73e7
Author: Zack Middleton <zack at cloemail.com>
Date:   Thu Jun 1 15:38:56 2017 -0500

    Make Team Arena server list sub-sort clients by max clients
    
    The player column in Team Arena UI lists clients and max clients
    in format of "clients [maxclients]". When sorting by clients the
    max clients is ignored which results in player column being
    disorganized.
    
    When servers have the same number of clients, sort based on max
    clients. Otherwise client sort is sub-sorted based on order of
    getinfo responses (ping).
---
 code/client/cl_ui.c | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/code/client/cl_ui.c b/code/client/cl_ui.c
index f3fca92..4d2628e 100644
--- a/code/client/cl_ui.c
+++ b/code/client/cl_ui.c
@@ -374,6 +374,7 @@ LAN_CompareServers
 static int LAN_CompareServers( int source, int sortKey, int sortDir, int s1, int s2 ) {
 	int res;
 	serverInfo_t *server1, *server2;
+	int clients1, clients2;
 
 	server1 = LAN_GetServerPtr(source, s1);
 	server2 = LAN_GetServerPtr(source, s2);
@@ -391,10 +392,19 @@ static int LAN_CompareServers( int source, int sortKey, int sortDir, int s1, int
 			res = Q_stricmp( server1->mapName, server2->mapName );
 			break;
 		case SORT_CLIENTS:
-			if (server1->clients < server2->clients) {
+			// sub sort by max clients
+			if ( server1->clients == server2->clients ) {
+				clients1 = server1->maxClients;
+				clients2 = server2->maxClients;
+			} else {
+				clients1 = server1->clients;
+				clients2 = server2->clients;
+			}
+
+			if (clients1 < clients2) {
 				res = -1;
 			}
-			else if (server1->clients > server2->clients) {
+			else if (clients1 > clients2) {
 				res = 1;
 			}
 			else {

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/ioquake3.git



More information about the Pkg-games-commits mailing list