equal
deleted
inserted
replaced
355 return; |
355 return; |
356 } |
356 } |
357 |
357 |
358 QString flags = lst[1]; |
358 QString flags = lst[1]; |
359 bool setFlag = flags[0] == '+'; |
359 bool setFlag = flags[0] == '+'; |
|
360 const QStringList nicks = lst.mid(2); |
360 |
361 |
361 while(flags.size() > 1) |
362 while(flags.size() > 1) |
362 { |
363 { |
363 flags.remove(0, 1); |
364 flags.remove(0, 1); |
364 char c = flags[0].toAscii(); |
365 char c = flags[0].toAscii(); |
365 |
366 |
366 switch(c) |
367 switch(c) |
367 { |
368 { |
368 case 'r': |
369 case 'r': |
369 { |
370 foreach (const QString & nick, nicks) |
370 for(int i = 2; i < lst.size(); ++i) |
|
371 { |
|
372 if (lst[i] == mynick) |
|
373 { |
371 { |
374 if (isChief && !setFlag) ToggleReady(); |
372 if (nick == mynick) |
375 else emit setMyReadyStatus(setFlag); |
373 { |
|
374 if (isChief && !setFlag) ToggleReady(); |
|
375 else emit setMyReadyStatus(setFlag); |
|
376 } |
|
377 emit setReadyStatus(nick, setFlag); |
376 } |
378 } |
377 |
379 break; |
378 emit setReadyStatus(lst[i], setFlag); |
380 |
379 } |
381 case 'a': |
380 } |
382 foreach (const QString & nick, nicks) |
|
383 { |
|
384 if (nick == mynick) |
|
385 emit adminAccess(setFlag); |
|
386 |
|
387 emit setAdminStatus(nick, setFlag); |
|
388 } |
|
389 break; |
|
390 |
|
391 default: |
|
392 qWarning() << "Net: Unknown client-flag: " << c; |
381 } |
393 } |
382 } |
394 } |
383 |
395 |
384 return; |
396 return; |
385 } |
397 } |
501 return; |
513 return; |
502 } |
514 } |
503 |
515 |
504 if (lst[0] == "ADMIN_ACCESS") |
516 if (lst[0] == "ADMIN_ACCESS") |
505 { |
517 { |
506 emit adminAccess(true); |
518 // obsolete, see +a client flag |
507 return; |
519 return; |
508 } |
520 } |
509 |
521 |
510 if(netClientState == InLobby && lst[0] == "JOINED") |
522 if(netClientState == InLobby && lst[0] == "JOINED") |
511 { |
523 { |