private void ValidateMove(String name)
{
/*
This may be the return leg of the round-trip to insure that
a move for balance MB has completed. If fMoving still
contains the player's name, the move failed.
*/
bool completedMove = true;
lock (fMoving) {
if (fMoving.ContainsKey(name)) {
completedMove = false;
fMoving.Remove(name);
}
}
if (!completedMove) {
ConsoleDebug("Move of ^b" + name + "^n failed!");
IncrementTotal();
fFailedRound = fFailedRound + 1;
return;
}
/*
This may be the return leg of the round-trip to insure that
a reassignment of a player by MB has completed. If fReassigned still
contains the player's name, the move failed.
*/
bool completedReassign = true;
lock (fReassigned) {
if (fReassigned.Contains(name)) {
completedReassign = false;
fReassigned.Remove(name);
}
}
if (!completedReassign) {
ConsoleDebug("Reassign of ^b" + name + "^n failed!");
fFailedRound = fFailedRound + 1;
IncrementTotal();
AddNewPlayer(name, 0);
UpdateTeams();
return;
}
}