private void PlayCard(PlayCardAction action)
        {
            var card  = CurrentPlayer.RemoveCard(action.CardNumber);
            var risky = IsRisky(card);

            PutCard(card);
            if (risky)
            {
                WithRisk++;
            }
            CurrentPlayer.AddCard(Deck.PollCard());
        }
 public static GameAction Parse(string s)
 {
     if (s.StartsWith("Start new game"))
     {
         return(StartNewGameAction.Parse(s));
     }
     if (s.StartsWith("Play card"))
     {
         return(PlayCardAction.Parse(s));
     }
     if (s.StartsWith("Drop card"))
     {
         return(DropCardAction.Parse(s));
     }
     if (s.StartsWith("Tell"))
     {
         return(TellCardPropertyAction.Parse(s));
     }
     return(null);
 }