/// <summary> /// Делает ход "Верю" /// </summary> /// <param name="move"></param> public void MakeBeleiveMove(BelieveMove move, out IReadOnlyCollection <IPlayingCardInfo> takedLoserCards, out Guid loserId) { if (move == null) { throw new ArgumentNullException(nameof(move)); } try { _moveMutex.WaitOne(); if (IsInvalid) { throw new TrueFalseGameException("Игровой стол находится в инвалидном состоянии"); } if (CurrentGame == null) { throw new TrueFalseGameException("Игра еще не началась"); } CurrentGame.MakeBeleiveMove(move, out takedLoserCards, out loserId); } finally { _moveMutex.ReleaseMutex(); } }