As KeyWorld posted, the implode() command is the best if you're not adding in any new text to your arrays. If you wanted to include, say, map player count (you'd also have to change the map name cases, though, this is just an example~), you would have to use a loop.
setarray .@maps$[0],"morocc","alberta","izlude","xmas","comodo";
for(set .@i,0; .@i<getarraysize(.@maps$); set .@i,.@i+1)
set .@menu$, .@menu$+.@maps$[.@i]+" ("+getmapusers(.@maps$[.@i])+"):";
select(.@menu$);