+ case RR_NOTICE_BID:
+ /* rrsolve is kind enought to offer pity points */
+ if (notice->u.bid.number == solution.num_moves &&
+ strcmp (notice->u.bid.username, name) &&
+ rr_players_get_score (players, notice->u.bid.username) < rr_players_get_score (players, name))
+ {
+ rr_client_revoke (client);
+ rr_client_bid (client, solution.num_moves);
+ }
+ break;
+ case RR_NOTICE_JOIN:
+ rr_players_add (players, notice->u.string);
+ break;
+ case RR_NOTICE_PART:
+ rr_players_remove (players, notice->u.string);
+ break;
+ case RR_NOTICE_SCORE:
+ rr_players_set_score (players, notice->u.bid.username, notice->u.bid.number);
+ break;