«will not reach 17 or it is more.\r\n\r\n»);
sbl. Append («10) Первая карта банкомёта может сдаваться " +
sbl. Append («10) The first card of a dealer can be given» +
«лицевой стороной вниз и быть невидимой.\r\n\r\n»);
«the face down and to be nevidimoy.\r\n\r\n»);
sbl. Append («11) Вы должны или оставить ставку по умолчанию, " +
sbl. Append («11) You should or to leave a bet by default,» +
«или установить новую вашу ставку до раздачи карт " +
«or to set your new bet before distribution of cards» +
«(в последнем случае используйте команды " +
«(in the latter case use the commands» +
« и " +
«в Меню для элемента управления mainMenu1).\r\n\r\n»);
«in the Menu for the mainMenu1 control).\r\n\r\n»);
sbl. Append («12) Ваше значение банка " +
sbl. Append («12) Your value of bank» +
«все время показывают на экране. " +
«all the time show on the screen.» +
«Если значение банка станет ниже вашей ставки, " +
«If value of bank becomes below your bet,» +
«вам предложат начать новую игру.\r\n\r\n»);
«to you will suggest to begin the new game.\r\n\r\n»);
sbl. Append («13) Когда вы набрали карты, вы можете " +
sbl. Append («13) When you gathered cards, you can» +
«приостановить игру, выбрав в Меню команду Останов. " +
«suspend a game, having chosen in Menu the command Stop.» +
«Банкомёт покажет свою карту.\r\n\r\n»);
«Dealer will show the card.\r\n\r\n»);
sbl. Append («14) Схема оплаты:\r\n»);
sbl. Append («14) Scheme of payment:\r\n»);
sbl. Append («проигравший платит победителю по договорённости, " +
sbl. Append («the loser pays the winner by agreement,» +
«например, 1:1;\r\n»);
«for example, 1:1; \r\n»);
sbl. Append («игра в очко желает вам всего наилучшего.\r\n»);
sbl. Append («The game in a point wishes you all the best.\r\n»);
textBox1.Text = sbl.ToString ();
Естественно, текст в этом листинге мы можем редактировать, как пожелаем.
В режиме выполнения, после выбора команды Помощь на форме Form1, поверх этой формы Form1 появляется справочная форма Form2 (рис. 1.33). Внутри элемента управления TextBox мигает курсор, который мы можем перемещать клавишами, одновременно перемещая текст, чтобы он стал видимым. На рис. 1.33 видны первые три правила игры, а следующие правила 4, 5 и 6 на форме уже были показаны ранее.
Рис. 1.33.Справочная форма Form2.
Напомним, что выше мы записали код для вывода справочной формы Form2 методом ShowDialog как модальной формы (рис. 1.34), а именно, мы не сможем продолжить игру на первой форме Form1 (и на любой другой форме), пока не закроем форму Form2.
Рис. 1.34.Код для вывода Form2 методом ShowDialog как модальной формы.
Для вывода справочной формы Form2 методом Show как немодальной формы надо записать:
helpForm.Show ();
Теперь, активируя (щёлкая) форму Form1, мы сможем продолжить игру на первой форме Form1 (и на любой другой форме любого приложения), видя на экране справочную форму Form2 (которую можно передвинуть в любое удобное место экрана).
Строим и запускаем программу на выполнение обычным образом:
Build, Build Selection; Debug, Start Without Debugging.
В ответ, Visual C# выводит форму Form1 с показанным выше фоном данной игры.
Отметим, что все графические файлы этой игры применимы как для смартфонов и планшетов (описанных в наших предыдущих книгах), так и для настольных компьютеров. Для настольного компьютера с большим (чем у смартфона и планшета) экраном размеры рисунков фона и карт можно увеличить (в случае необходимости) по описанной ранее схеме.
Для начала игры нажимаем клавишу Enter и играем согласно приведённым выше правилам.
Таким образом, эта глава описывает механизм раздачи карт (из колоды) случайным образом (на основе генератора случайных чисел класса Random), показ их на экране, показ их в «руках» для каждого игрока и управления карточной игрой.
Мы разработали методику программирования полностью функциональной игры, которая в США и других странах называется как «Black Jack», «21» или понтон (pontoon) при использовании 52 карт, а в России и других странах обычно называется как «очко» или «21» при использовании 36 карт.
В разработанной в данной главе игре можно вместо 52 карт добавить в проект новые 36 карт (в случае необходимости) или из 52 карт удалить лишние карты, чтобы оставить только 36 карт.
По методике данной главы можно разрабатывать самые разнообразные карточные игры.
Часть II. Методология программирования искусственного интеллекта в спортивных играх с ракетками и мячами
Глава 2. Методика программирования искусственного интеллекта в игре в теннис для игрока с компьютером или двух игроков
Читать дальше