}
}
-void CommonCommand_lsnewmaps(float request, entity caller)
-{
- switch(request)
- {
- case CMD_REQUEST_COMMAND:
- {
- print_to(caller, lsnewmaps_reply);
- return; // never fall through to usage
- }
-
- default:
- case CMD_REQUEST_USAGE:
- {
- print_to(caller, strcat("\nUsage:^3 ", GetCommandPrefix(caller), " lsnewmaps"));
- print_to(caller, " No arguments required.");
- return;
- }
- }
-}
-
void CommonCommand_printmaplist(float request, entity caller)
{
switch(request)
COMMON_COMMAND("info", CommonCommand_info(request, caller, arguments), "Request for unique server information set up by admin") \
COMMON_COMMAND("ladder", CommonCommand_ladder(request, caller), "Get information about top players if supported") \
COMMON_COMMAND("lsmaps", CommonCommand_lsmaps(request, caller), "List maps which can be used with the current game mode") \
- COMMON_COMMAND("lsnewmaps", CommonCommand_lsnewmaps(request, caller), "List maps which have no records or are seemingly unplayed yet") \
COMMON_COMMAND("printmaplist", CommonCommand_printmaplist(request, caller), "Display full server maplist reply") \
COMMON_COMMAND("rankings", CommonCommand_rankings(request, caller), "Print information about rankings") \
COMMON_COMMAND("records", CommonCommand_records(request, caller), "List top 10 records for the current map") \
return strcat("Top ", ftos(LADDER_SIZE), " ladder rankings:\n", s);
}
-string getlsmaps()
+string getmaplist()
{
- print("^1================= Executing getlsmaps()! =================\n");
+ //print("^1================= Executing getmaplist()! =================\n");
- string lsmaps, lsnewmaps, col;
- float i, j, n;
- lsmaps = "^7Maps available: ";
- lsnewmaps = "^7Maps without a record set: ";
- for(i = 0, j = 0; i < MapInfo_count; ++i)
+ string maplist = "", col;
+ float i, argc;
+
+ argc = tokenize_console(autocvar_g_maplist);
+ for(i = 0; i < argc; ++i)
{
- if(MapInfo_Get_ByID(i))
- if not(MapInfo_Map_flags & MapInfo_ForbiddenFlags())
- {
- if(mod(i, 2))
- col = "^2";
- else
- col = "^3";
-
- ++j;
-
- lsmaps = strcat(lsmaps, col, MapInfo_Map_bspname, " ");
-
- if(g_race && !stof(db_get(ServerProgsDB, strcat(MapInfo_Map_bspname, RACE_RECORD, "time"))))
- lsnewmaps = strcat(lsnewmaps, col, MapInfo_Map_bspname, " ");
- else if(g_cts && !stof(db_get(ServerProgsDB, strcat(MapInfo_Map_bspname, CTS_RECORD, "time"))))
- lsnewmaps = strcat(lsnewmaps, col, MapInfo_Map_bspname, " ");
- }
+ if(MapInfo_CheckMap(argv(i)))
+ {
+ if(mod(i, 2)) { col = "^2"; }
+ else { col = "^3"; }
+ maplist = sprintf("%s%s%s ", maplist, col, argv(i));
+ }
}
- lsmaps = strzone(strcat(lsmaps, "\n"));
- lsnewmaps = strzone(strcat(((!g_race && !g_cts) ? "Need to be playing race or CTS for lsnewmaps to work." : lsnewmaps), "\n"));
+ MapInfo_ClearTemps();
+ return sprintf("^7Maps in list: %s\n", maplist);
+}
+
+
+string getlsmaps()
+{
+ //print("^1================= Executing getlsmaps()! =================\n");
- maplist_reply = "^7Maps in list: ";
- n = tokenize_console(autocvar_g_maplist);
- for(i = 0, j = 0; i < n; ++i)
+ string lsmaps = "", col;
+ float i;
+
+ for(i = 0; i < MapInfo_count; ++i)
{
- if(MapInfo_CheckMap(argv(i)))
+ if((MapInfo_Get_ByID(i)) && !(MapInfo_Map_flags & MapInfo_ForbiddenFlags()))
{
- if(mod(j, 2))
- col = "^2";
- else
- col = "^3";
- maplist_reply = strcat(maplist_reply, col, argv(i), " ");
- ++j;
+ if(mod(i, 2)) { col = "^2"; }
+ else if(
+ (g_race && !stof(db_get(ServerProgsDB, strcat(MapInfo_Map_bspname, RACE_RECORD, "time"))))
+ ||
+ (g_cts && !stof(db_get(ServerProgsDB, strcat(MapInfo_Map_bspname, CTS_RECORD, "time"))))
+ ) { col = "^5*"; }
+ else { col = "^3"; }
+
+ lsmaps = sprintf("%s%s%s ", lsmaps, col, MapInfo_Map_bspname);
}
}
- maplist_reply = strzone(strcat(maplist_reply, "\n"));
+
MapInfo_ClearTemps();
- return lsmaps;
+ return sprintf("^7Maps available: %s\n", lsmaps);
}