public PlayerPosition PlayCard(Card card, PlayerPosition playerPosition)
{
_nextPlayer = BridgeHelper.GetNextPlayerPosition(playerPosition);
if (_currentTrick.Deck.Count == 0)
{
_currentTrick = new Trick();
_currentTrick.TrickDealer = playerPosition;
}
if (_currentTrick.Deck.Count <= 4)
{
card.PlayerPosition = playerPosition;
_currentTrick.Deck.Cards.Add(card);
}
if (_currentTrick.Deck.Count == 4)
{
Tricks.Add(_currentTrick);
var winner = FindWinner(_currentTrick, Contract.Trump);
_currentTrick.TrickWinner = winner;
_nextPlayer = winner;
_currentTrick = new Trick() { TrickDealer = winner };
}
GameState[playerPosition].RemoveCard(card);
return _nextPlayer;
}