| 260 | } |
| 261 | |
| 262 | void genserverlist() |
| 263 | { |
| 264 | if(!updateserverlist) return; |
| 265 | while(gameserverlists.length() && gameserverlists.last()->refs<=0) |
| 266 | delete gameserverlists.pop(); |
| 267 | messagebuf *l = new messagebuf(gameserverlists); |
| 268 | loopv(gameservers) |
| 269 | { |
| 270 | gameserver &s = *gameservers[i]; |
| 271 | if(!s.lastpong) continue; |
| 272 | defformatstring(cmd)("addserver %s %d\n", s.ip, s.port); |
| 273 | l->buf.put(cmd, strlen(cmd)); |
| 274 | } |
| 275 | l->buf.add('\0'); |
| 276 | gameserverlists.add(l); |
| 277 | updateserverlist = false; |
| 278 | } |
| 279 | |
| 280 | void gengbanlist() |
| 281 | { |
no test coverage detected