diff --git a/source/src/cube.h b/source/src/cube.h index 8d4346c5..77b07616 100644 --- a/source/src/cube.h +++ b/source/src/cube.h @@ -119,6 +119,7 @@ extern int gamemode, nextmode; extern int xtraverts; extern bool demoplayback; extern bool intermission; +extern int maxclients; #define VIRTW 2400 // virtual screen size for text & HUD #define VIRTH 1800 diff --git a/source/src/serverbrowser.cpp b/source/src/serverbrowser.cpp index 4df111be..0080f078 100644 --- a/source/src/serverbrowser.cpp +++ b/source/src/serverbrowser.cpp @@ -197,7 +197,7 @@ struct serverinfo string map; string sdesc; string cmd; - int mode, numplayers, ping, protocol, minremain, resolved; + int mode, numplayers, maxclients, ping, protocol, minremain, resolved; ENetAddress address; }; @@ -217,6 +217,7 @@ void addserver(char *servername) si.full[0] = 0; si.mode = 0; si.numplayers = 0; + si.maxclients = 0; si.ping = 9999; si.protocol = 0; si.minremain = 0; @@ -306,6 +307,7 @@ void checkpings() s_strcpy(si.map, text); getstring(text, p); s_strcpy(si.sdesc, text); + si.maxclients = getint(p); break; }; }; @@ -332,7 +334,7 @@ void refreshservers() if(si.address.host != ENET_HOST_ANY && si.ping != 9999) { if(si.protocol!=PROTOCOL_VERSION) s_sprintf(si.full)("%s [different cube protocol]", si.name); - else s_sprintf(si.full)("%d\t%d\t%s, %s: %s %s", si.ping, si.numplayers, si.map[0] ? si.map : "[unknown]", modestr(si.mode), si.name, si.sdesc); + else s_sprintf(si.full)("%d\t%d/%d\t%s, %s: %s %s", si.ping, si.numplayers, si.maxclients, si.map[0] ? si.map : "[unknown]", modestr(si.mode), si.name, si.sdesc); } else { diff --git a/source/src/serverms.cpp b/source/src/serverms.cpp index 33f614f9..8e2aada0 100644 --- a/source/src/serverms.cpp +++ b/source/src/serverms.cpp @@ -130,11 +130,9 @@ void serverms(int mode, int numplayers, int minremain, char *smapname, int secon putint(p, mode); putint(p, numplayers); putint(p, minremain); - string mname; - s_strcpy(mname, isfull ? "[FULL] " : ""); - s_strcat(mname, smapname); - sendstring(mname, p); + sendstring(smapname, p); sendstring(serverdesc, p); + putint(p, maxclients); buf.dataLength = len + p.length(); enet_socket_send(pongsock, &addr, &buf, 1); };