//We create also initsializuy the help Form2 form:
helpForm = new Form2 ();
}
void startGame ()
{
shoe = new CardShoe ();
//We comment in the original,
//since this line – only for testing of a game:
//shoe =
//new CardShoe (new byte [] {2, 14, 11, 25, 10, 7, 6, 5});
pot.ResetPot ();
mode = GameMode.PlacingBets;
}
void startHand ()
{
mode = GameMode.PlacingBets;
}
void showPot ()
{
this. Text =
«Bank: " + pot.PotValue.ToString () + " Bet: " +
pot.BetValue.ToString ();
}
void startPlay ()
{
//We commented out in the original:
//pot.DoPlaceBet ();
//We write in the original:
if (mode == GameMode.PlayerBust && mode == GameMode.DealerWon)
pot.DoPlaceBet ();
showPot ();
// clear the hands
playerHand.Clear ();
dealerHand.Clear ();
// deal the face down hole card
dealerHoleCard = shoe.DealCard ();
dealerHoleCard. FaceUp = false;
dealerHand.Add (dealerHoleCard);
// deal the first player card
playerHand.Add(shoe.DealCard ());
// deal the second dealer card (face up)
dealerHand.Add(shoe.DealCard ());
// deal the second player card
playerHand.Add(shoe.DealCard ());
if ((dealerHand. BlackJackScoreHand () == 21) &&
(playerHand. BlackJackScoreHand ()!= 21))
{
//We write in the original:
pot.DoPlaceBet ();
pot. HouseWins ();
showPot ();
//Discontent of support group with our exceeding of
//cards:
Assembly a2 = Assembly.GetExecutingAssembly ();
Stream s2 =
a2.GetManifestResourceStream («PocketJack. pj_busted. wav»);
SoundPlayer player2 = new SoundPlayer (s2);
player2.Play ();
dealerHoleCard. FaceUp = true;
mode = GameMode.DealerWon;
return;
}
if ((playerHand. BlackJackScoreHand () == 21) &&
(dealerHand. BlackJackScoreHand ()!= 21))
{
pot.PlayerWins ();
showPot ();
dealerHoleCard. FaceUp = true;
mode = GameMode. PocketJack;
return;
}
if ((playerHand. BlackJackScoreHand () == 21) &&
(dealerHand. BlackJackScoreHand () == 21))
{
pot.DoPushBet ();
showPot ();
dealerHoleCard. FaceUp = true;
mode = GameMode. Push;
return;
}
mode = GameMode.PlayerActive;
}
Font messageFont = new Font(FontFamily.GenericSansSerif, 20,
FontStyle.Regular);
void paintForm (Graphics g)
{
switch (mode)
{
case GameMode. LoadingDisplay:
//We draw all images below the menu:
g. DrawImage (
bankImage, 0, StayToolStripMenuItem. Height);
g. DrawImage (
loadingImage, 0, StayToolStripMenuItem. Height +60);
break;
case GameMode.PlacingBets:
g. DrawImage (bankImage, 0, StayToolStripMenuItem. Height);
Utilities.BigText («Bank: " + pot.PotValue.ToString (),
10, 40, Color. Black,
Color. Yellow, messageFont, g);
Utilities.BigText («Bet: " +
pot.BetValue.ToString (), 10, 80, Color. Black,
Color. Yellow, messageFont, g);
break;
case GameMode.PlayerActive:
dealerHand. DrawHand (g, 10, 30, 80, 25);
playerHand. DrawHand (g, 10, 135, 20, 25);
Utilities.BigText (playerHand. BlackJackScoreHand ().
ToString (), 140, 150, Color. Black,
Color. Yellow, messageFont, g);
break;
case GameMode.PlayerWon:
case GameMode. PocketJack:
dealerHand. DrawHand (g, 10, 30, 20, 25);
playerHand. DrawHand (g, 10, 135, 20, 25);
Utilities.BigText (dealerHand. BlackJackScoreHand ().
ToString (), 140, 45, Color. Black,
Color. Yellow, messageFont, g);
Utilities.BigText (playerHand. BlackJackScoreHand ().
ToString (), 140, 150, Color. Black,
Color. Yellow, messageFont, g);
Utilities.BigText («Вы выиграли!»,
20, 80, Color. Black, Color. Yellow, messageFont, g);
break;
case GameMode.PlayerBust:
dealerHand. DrawHand (g, 10, 30, 80, 25);
playerHand. DrawHand (g, 10, 135, 20, 25);
Utilities.BigText (playerHand. BlackJackScoreHand ().
ToString (), 140, 150, Color. Black,
Color. Yellow, messageFont, g);
Utilities.BigText («Вы перебрали.»,
20, 80, Color. Black, Color.Red, messageFont, g);
break;
case GameMode.DealerActive:
dealerHand. DrawHand (g, 10, 30, 20, 25);
playerHand. DrawHand (g, 10, 135, 20, 25);
Utilities.BigText (dealerHand. BlackJackScoreHand ().
ToString СКАЧАТЬ