private void SetOpponentsNumberInternal(int value) {
if (Equals(value, _opponentsNumber)) return;
var last = Mode.CandidatesMode && _startingPosition == StartingPositionLimit;
_opponentsNumber = value;
OnPropertyChanged(nameof(OpponentsNumber));
OnPropertyChanged(nameof(OpponentsNumberLimited));
OnPropertyChanged(nameof(StartingPositionLimit));
if (last && StartingPositionLimit > 0 /*|| _startingPosition > StartingPositionLimit*/) {
StartingPositionLimited = StartingPositionLimit;
} else {
OnPropertyChanged(nameof(StartingPositionLimited));
SaveLater();
}
}