void OnGameBettingRoundStarted(object sender, RoundEventArgs e)
 {
     if (InvokeRequired)
     {
         // We're not in the UI thread, so we need to call BeginInvoke
         BeginInvoke(new EventHandler<RoundEventArgs>(OnGameBettingRoundStarted), new[] { sender, e });
         return;
     }
     SuspendLayout();
     var table = m_Game.Table;
     foreach (var p in table.Players)
         m_Huds[p.NoSeat].Alive = true;
     var i = 0;
     for (; i < 5 && table.Cards[i].Id != GameCard.NoCard.Id; ++i)
         m_Board[i].Card = table.Cards[i];
     for (; i < 5; ++i)
         m_Board[i].Card = GameCard.Hidden;
     ResumeLayout();
 }
 void OnGameBettingRoundStarted_Console(object sender, RoundEventArgs e)
 {
     if (InvokeRequired)
     {
         // We're not in the UI thread, so we need to call BeginInvoke
         BeginInvoke(new EventHandler<RoundEventArgs>(OnGameBettingRoundStarted_Console), new[] { sender, e });
         return;
     }
     var table = m_Game.Table;
     WriteLine("==> Beginning of " + e.Round);
     if (e.Round != RoundTypeEnum.Preflop)
     {
         Write("==> Current board cards:");
         for (var i = 0; i < 5 && table.Cards[i].Id != GameCard.NoCard.Id; ++i)
         {
             Write(" " + table.Cards[i]);
         }
         WriteLine("");
     }
 }
 void OnGameBettingRoundEnded(object sender, RoundEventArgs e)
 {
     if (InvokeRequired)
     {
         // We're not in the UI thread, so we need to call BeginInvoke
         BeginInvoke(new EventHandler<RoundEventArgs>(OnGameBettingRoundEnded), new[] { sender, e });
         return;
     }
     SuspendLayout();
     var table = m_Game.Table;
     foreach( var p in table.Pots)
     {
         var i = p.Id;
         m_PotTitles[i].Visible = (i == 0 || p.Amount > 0);
         m_PotValues[i].Visible = (i == 0 || p.Amount > 0);
         m_PotValues[i].Text = Resources.PlayerHud_SetMoney_Dollar + p.Amount;
     }
     for (var i = 0; i < m_Huds.Length; ++i)
     {
         m_Huds[i].DoAction(GameActionEnum.DoNothing);
         m_Bets[i].Text = "";
     }
     ResumeLayout();
 }