Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 3: Программирование на Visual C# искусственного интеллекта (продолжение 2). Валерий Алексеевич Жарков
Чтение книги онлайн.

Читать онлайн книгу Справочник Жаркова по проектированию и программированию искусственного интеллекта. Том 3: Программирование на Visual C# искусственного интеллекта (продолжение 2) - Валерий Алексеевич Жарков страница 10

СКАЧАТЬ = new Bitmap(asm.GetManifestResourceStream (

      "PocketJack.images.bank.jpg»));

      mode = GameMode. LoadingDisplay;

      this.Visible = true;

      В этом коде в строке

      PocketJack.images.loading.gif

      переменная PocketJack означает имя проекта (или пространства имён),

      а переменная images – имя папки, в которой имеется графический файл loading.gif.

      После запуска игры, рисунок загрузки loading.gif появляется в середине экрана и находится на экране все время загрузки игровых компонентов, как определено в следующем коде:

      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;

      …

      На рис. 1.9 показан узкий слева – направо рисунок загрузки loading.gif с надписью «POCKET JACK LOADING» поверх фона игры в виде файла bank.jpg. Этот рисунок держится на экране всего несколько секунд, пока не загрузятся все графические и звуковые файлы, а затем исчезает, уступая место информации о размерах Банка и Ставки, показанных на следующем рисунке.

      Рис. 1.9. Рисунок загрузки loading.gif

      Разработку звукового сопровождения игры мы опишем далее при написании программы, а сейчас перейдем к правилам игры.

      1.17. Правила игры

      Сформулируем правила данной компьютерной карточной (из 52 карт) игры в очко, которые далее будут также записаны в справочную форму Form2, выводимую после выбора команды Помощь из меню элемента управления MenuStrip на главной форме Form1.

      1. Мы (пользователи) считаемся как один игрок и играем один на один с компьютером-банкомётом.

      2. Мы устанавливаем в Банке начальную сумму денег, например, 500 долларов и определяем Ставку в игре, равную, например, 5 долларам. В каждой сдаче карт наш выигрыш будет увеличивать Банк, а проигрыш – уменьшать Банк на величину Ставки.

      По окончании игры, если Банк будет больше 500, то мы выиграли у Банкомёта разницу между итоговым значением Банка и начальным значением Банка в 500 долларов.

      Если же по окончании игры Банк будет меньше 500, то мы проиграли Банкомёту разницу между начальным значением Банка в 500 долларов и итоговым значением Банка.

      Естественно, по методике данной главы в приводимом далее проекте мы можем запрограммировать другие варианты Банка, Ставки и условий игры.

      3. В данном варианте игры, наша цель состоит в том, чтобы на экране набрать «в руку» карты с очками, как можно ближе к 21, но не превышая 21, и, к тому же, больше, чем у банкомёта. На экране сначала мы видим вверху карту банкомёта, а внизу – две наши карты с очками этих карт.

      4. После запуска игры на форме появляются команда Себе и команда общего Меню (рис. 1.10), приведённый выше рисунок loading.gif, а затем СКАЧАТЬ